ipcp.h revision 6059
1206274Srdivacky/* 2206274Srdivacky * Written by Toshiharu OHNO (tony-o@iij.ad.jp) 3206274Srdivacky * 4206274Srdivacky * Copyright (C) 1993, Internet Initiative Japan, Inc. All rights reserverd. 5206274Srdivacky * 6206274Srdivacky * Redistribution and use in source and binary forms are permitted 7206274Srdivacky * provided that the above copyright notice and this paragraph are 8206274Srdivacky * duplicated in all such forms and that any documentation, 9206274Srdivacky * advertising materials, and other materials related to such 10206274Srdivacky * distribution and use acknowledge that the software was developed 11206274Srdivacky * by the Internet Initiative Japan. The name of the 12206274Srdivacky * IIJ may not be used to endorse or promote products derived 13206274Srdivacky * from this software without specific prior written permission. 14206274Srdivacky * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 15206274Srdivacky * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 16249423Sdim * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. 17249423Sdim * 18206274Srdivacky * $Id:$ 19206274Srdivacky * 20206274Srdivacky * TODO: 21206274Srdivacky */ 22249423Sdim 23249423Sdim#ifndef _IPCP_H_ 24249423Sdim#define _IPCP_H_ 25218893Sdim 26206274Srdivacky#define IPCP_MAXCODE CODE_CODEREJ 27206274Srdivacky 28206274Srdivacky#define TY_IPADDRS 1 29206274Srdivacky#define TY_COMPPROTO 2 30206274Srdivacky#define TY_IPADDR 3 31206274Srdivacky 32206274Srdivackystruct ipcpstate { 33206274Srdivacky struct in_addr his_ipaddr; /* IP address he is willing to use */ 34206274Srdivacky u_long his_compproto; 35206274Srdivacky 36263508Sdim struct in_addr want_ipaddr; /* IP address I'm willing to use */ 37206274Srdivacky u_long want_compproto; 38206274Srdivacky 39206274Srdivacky u_long his_reject; /* Request codes rejected by peer */ 40234353Sdim u_long my_reject; /* Request codes I have rejected */ 41206274Srdivacky int heis1172; /* True if he is speaking rfc1172 */ 42206274Srdivacky}; 43206274Srdivacky 44263508Sdimstruct compreq { 45206274Srdivacky u_short proto; 46206274Srdivacky u_char slots; 47206274Srdivacky u_char compcid; 48218893Sdim}; 49249423Sdim 50206274Srdivackystruct in_range { 51206274Srdivacky struct in_addr ipaddr; 52206274Srdivacky struct in_addr mask; 53206274Srdivacky int width; 54206274Srdivacky}; 55206274Srdivacky 56249423Sdimextern struct ipcpstate IpcpInfo; 57206274Srdivackyextern struct in_range DefMyAddress; 58206274Srdivackyextern struct in_range DefHisAddress; 59206274Srdivacky 60206274Srdivackyextern void IpcpInit(void); 61249423Sdimextern void IpcpDefAddress(); 62206274Srdivacky#endif 63206274Srdivacky