X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=pppd%2Fipxcp.h;fp=pppd%2Fipxcp.h;h=64cd062c0f5b2edb70c6d9eabc2aa161be0aa291;hb=0f61ac5460e89dd768f1fb56fbdd8fa6f8af79f1;hp=0000000000000000000000000000000000000000;hpb=2874cacceefc32c0371e0670af1604a99554161a;p=ppp.git diff --git a/pppd/ipxcp.h b/pppd/ipxcp.h new file mode 100644 index 0000000..64cd062 --- /dev/null +++ b/pppd/ipxcp.h @@ -0,0 +1,73 @@ +/* + * ipxcp.h - IPX Control Protocol definitions. + * + * Copyright (c) 1989 Carnegie Mellon University. + * All rights reserved. + * + * Redistribution and use in source and binary forms are permitted + * provided that the above copyright notice and this paragraph are + * duplicated in all such forms and that any documentation, + * advertising materials, and other materials related to such + * distribution and use acknowledge that the software was developed + * by Carnegie Mellon University. The name of the + * University may not be used to endorse or promote products derived + * from this software without specific prior written permission. + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED + * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. + * + * $Id: ipxcp.h,v 1.1 1995/12/18 03:33:00 paulus Exp $ + */ + +/* + * Options. + */ +#define IPX_NETWORK_NUMBER 1 /* IPX Network Number */ +#define IPX_NODE_NUMBER 2 +#define IPX_COMPRESSION_PROTOCOL 3 +#define IPX_ROUTER_PROTOCOL 4 +#define IPX_ROUTER_NAME 5 +#define IPX_COMPLETE 6 + + +typedef struct ipxcp_options { + int neg_node : 1; /* Negotiate IPX node number? */ + int req_node : 1; /* Ask peer to send IPX node number? */ + + int neg_nn : 1; /* Negotiate IPX network number? */ + int req_nn : 1; /* Ask peer to send IPX network number */ + + int neg_name : 1; /* Negotiate IPX router name */ + int neg_complete : 1; /* Negotiate completion */ + int neg_router : 1; /* Negotiate IPX router number */ + + int accept_local : 1; /* accept peer's value for ournode */ + int accept_remote : 1; /* accept peer's value for hisnode */ + int accept_network : 1; /* accept network number */ + + u_int32_t his_network; /* base network number */ + u_int32_t our_network; /* our value for network number */ + u_int32_t network; /* the final network number */ + + u_char his_node[6]; /* peer's node number */ + u_char our_node[6]; /* our node number */ + u_char name [48]; /* name of the router */ + int router; /* routing protocol */ +} ipxcp_options; + +extern fsm ipxcp_fsm[]; +extern ipxcp_options ipxcp_wantoptions[]; +extern ipxcp_options ipxcp_gotoptions[]; +extern ipxcp_options ipxcp_allowoptions[]; +extern ipxcp_options ipxcp_hisoptions[]; + +void ipxcp_init __P((int)); +void ipxcp_open __P((int)); +void ipxcp_close __P((int, char *)); +void ipxcp_lowerup __P((int)); +void ipxcp_lowerdown __P((int)); +void ipxcp_input __P((int, u_char *, int)); +void ipxcp_protrej __P((int)); +int ipxcp_printpkt __P((u_char *, int, void (*)(), void *)); + +extern struct protent ipxcp_protent;