Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


Release 1.0
[palacios.git] / geekos / src / lwip / netif / ppp / auth.h
1 /*****************************************************************************
2 * auth.h -  PPP Authentication and phase control header file.
3 *
4 * Copyright (c) 2003 by Marc Boucher, Services Informatiques (MBSI) inc.
5 * portions Copyright (c) 1998 Global Election Systems Inc.
6 *
7 * The authors hereby grant permission to use, copy, modify, distribute,
8 * and license this software and its documentation for any purpose, provided
9 * that existing copyright notices are retained in all copies and that this
10 * notice and the following disclaimer are included verbatim in any 
11 * distributions. No written agreement, license, or royalty fee is required
12 * for any of the authorized uses.
13 *
14 * THIS SOFTWARE IS PROVIDED BY THE CONTRIBUTORS *AS IS* AND ANY EXPRESS OR
15 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
16 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
17 * IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
18 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
19 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
20 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
21 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 *
25 ******************************************************************************
26 * REVISION HISTORY
27 *
28 * 03-01-01 Marc Boucher <marc@mbsi.ca>
29 *   Ported to lwIP.
30 * 97-12-04 Guy Lancaster <lancasterg@acm.org>, Global Election Systems Inc.
31 *   Original derived from BSD pppd.h.
32 *****************************************************************************/
33 /*
34  * pppd.h - PPP daemon global declarations.
35  *
36  * Copyright (c) 1989 Carnegie Mellon University.
37  * All rights reserved.
38  *
39  * Redistribution and use in source and binary forms are permitted
40  * provided that the above copyright notice and this paragraph are
41  * duplicated in all such forms and that any documentation,
42  * advertising materials, and other materials related to such
43  * distribution and use acknowledge that the software was developed
44  * by Carnegie Mellon University.  The name of the
45  * University may not be used to endorse or promote products derived
46  * from this software without specific prior written permission.
47  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
48  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
49  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
50  *
51  */
52
53 #ifndef AUTH_H
54 #define AUTH_H
55
56 /***********************
57 *** PUBLIC FUNCTIONS ***
58 ***********************/
59
60 /* we are starting to use the link */
61 void link_required (int);
62
63 /* we are finished with the link */
64 void link_terminated (int);
65
66 /* the LCP layer has left the Opened state */
67 void link_down (int);
68
69 /* the link is up; authenticate now */
70 void link_established (int);
71
72 /* a network protocol has come up */
73 void np_up (int, u16_t);
74
75 /* a network protocol has gone down */
76 void np_down (int, u16_t);
77
78 /* a network protocol no longer needs link */
79 void np_finished (int, u16_t);
80
81 /* peer failed to authenticate itself */
82 void auth_peer_fail (int, u16_t);
83
84 /* peer successfully authenticated itself */
85 void auth_peer_success (int, u16_t, char *, int);
86
87 /* we failed to authenticate ourselves */
88 void auth_withpeer_fail (int, u16_t);
89
90 /* we successfully authenticated ourselves */
91 void auth_withpeer_success (int, u16_t);
92
93 /* check authentication options supplied */
94 void auth_check_options (void);
95
96 /* check what secrets we have */
97 void auth_reset (int);
98
99 /* Check peer-supplied username/password */
100 int  check_passwd (int, char *, int, char *, int, char **, int *);
101
102 /* get "secret" for chap */
103 int  get_secret (int, char *, char *, char *, int *, int);
104
105 /* check if IP address is authorized */
106 int  auth_ip_addr (int, u32_t);
107
108 /* check if IP address is unreasonable */
109 int  bad_ip_adrs (u32_t);
110
111 #endif /* AUTH_H */