2 * ipv6cp.h - IP Control Protocol definitions.
7 * ipcp.h - IP Control Protocol definitions.
9 * Copyright (c) 1989 Carnegie Mellon University.
10 * All rights reserved.
12 * Redistribution and use in source and binary forms are permitted
13 * provided that the above copyright notice and this paragraph are
14 * duplicated in all such forms and that any documentation,
15 * advertising materials, and other materials related to such
16 * distribution and use acknowledge that the software was developed
17 * by Carnegie Mellon University. The name of the
18 * University may not be used to endorse or promote products derived
19 * from this software without specific prior written permission.
20 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
21 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
22 * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
24 * $Id: ipv6cp.h,v 1.1 1999/08/13 01:58:43 paulus Exp $
27 * Original version by Inria (www.inria.fr)
28 * Modified to match RFC2472 by Tommi Komulainen <Tommi.Komulainen@iki.fi>
34 #define CI_IFACEID 1 /* Interface Identifier */
35 #define CI_COMPRESSTYPE 2 /* Compression Type */
37 /* No compression types yet defined.
38 *#define IPV6CP_COMP 0x004f
40 typedef struct ipv6cp_options {
41 int neg_ifaceid; /* Negotiate interface identifier? */
42 int req_ifaceid; /* Ask peer to send interface identifier? */
43 int accept_local; /* accept peer's value for iface id? */
44 int opt_local; /* ourtoken set by option */
45 int opt_remote; /* histoken set by option */
46 int use_ip; /* use IP as interface identifier */
47 int neg_vj; /* Van Jacobson Compression? */
48 u_short vj_protocol; /* protocol value to use in VJ option */
49 eui64_t ourid, hisid; /* Interface identifiers */
52 extern fsm ipv6cp_fsm[];
53 extern ipv6cp_options ipv6cp_wantoptions[];
54 extern ipv6cp_options ipv6cp_gotoptions[];
55 extern ipv6cp_options ipv6cp_allowoptions[];
56 extern ipv6cp_options ipv6cp_hisoptions[];
58 extern struct protent ipv6cp_protent;