⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcp.h

📁 自己精简过的PPPD代码。在嵌入中应用可以更好的发挥。比原先的小了很多
💻 H
字号:
/* * lcp.h - Link Control Protocol definitions. * * Copyright (c) 1984-2000 Carnegie Mellon University. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright *    notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright *    notice, this list of conditions and the following disclaimer in *    the documentation and/or other materials provided with the *    distribution. * * 3. The name "Carnegie Mellon University" must not be used to *    endorse or promote products derived from this software without *    prior written permission. For permission or any legal *    details, please contact *      Office of Technology Transfer *      Carnegie Mellon University *      5000 Forbes Avenue *      Pittsburgh, PA  15213-3890 *      (412) 268-4387, fax: (412) 268-7395 *      tech-transfer@andrew.cmu.edu * * 4. Redistributions of any form whatsoever must retain the following *    acknowledgment: *    "This product includes software developed by Computing Services *     at Carnegie Mellon University (http://www.cmu.edu/computing/)." * * CARNEGIE MELLON UNIVERSITY DISCLAIMS ALL WARRANTIES WITH REGARD TO * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY * AND FITNESS, IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY BE LIABLE * FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * $Id: lcp.h,v 1.20 2004/11/14 22:53:42 carlsonj Exp $ *//* * Options. */#define CI_VENDOR	0	/* Vendor Specific */#define CI_MRU		1	/* Maximum Receive Unit */#define CI_ASYNCMAP	2	/* Async Control Character Map */#define CI_AUTHTYPE	3	/* Authentication Type */#define CI_QUALITY	4	/* Quality Protocol */#define CI_MAGICNUMBER	5	/* Magic Number */#define CI_PCOMPRESSION	7	/* Protocol Field Compression */#define CI_ACCOMPRESSION 8	/* Address/Control Field Compression */#define CI_FCSALTERN	9	/* FCS-Alternatives */#define CI_SDP		10	/* Self-Describing-Pad */#define CI_NUMBERED	11	/* Numbered-Mode */#define CI_CALLBACK	13	/* callback */#define CI_MRRU		17	/* max reconstructed receive unit; multilink */#define CI_SSNHF	18	/* short sequence numbers for multilink */#define CI_EPDISC	19	/* endpoint discriminator */#define CI_MPPLUS	22	/* Multi-Link-Plus-Procedure */#define CI_LDISC	23	/* Link-Discriminator */#define CI_LCPAUTH	24	/* LCP Authentication */#define CI_COBS		25	/* Consistent Overhead Byte Stuffing */#define CI_PREFELIS	26	/* Prefix Elision */#define CI_MPHDRFMT	27	/* MP Header Format */#define CI_I18N		28	/* Internationalization */#define CI_SDL		29	/* Simple Data Link *//* * LCP-specific packet types (code numbers). */#define PROTREJ		8	/* Protocol Reject */#define ECHOREQ		9	/* Echo Request */#define ECHOREP		10	/* Echo Reply */#define DISCREQ		11	/* Discard Request */#define IDENTIF		12	/* Identification */#define TIMEREM		13	/* Time Remaining *//* Value used as data for CI_CALLBACK option */#define CBCP_OPT	6	/* Use callback control protocol *//* * The state of options is described by an lcp_options structure. */typedef struct lcp_options {    bool passive;		/* Don't die if we don't get a response */    bool silent;		/* Wait for the other end to start first */    bool restart;		/* Restart vs. exit after close */    bool neg_mru;		/* Negotiate the MRU? */    bool neg_asyncmap;		/* Negotiate the async map? */    bool neg_upap;		/* Ask for UPAP authentication? */    bool neg_chap;		/* Ask for CHAP authentication? */    bool neg_eap;		/* Ask for EAP authentication? */    bool neg_magicnumber;	/* Ask for magic number? */    bool neg_pcompression;	/* HDLC Protocol Field Compression? */    bool neg_accompression;	/* HDLC Address/Control Field Compression? */    bool neg_lqr;		/* Negotiate use of Link Quality Reports */    bool neg_cbcp;		/* Negotiate use of CBCP */    bool neg_mrru;		/* negotiate multilink MRRU */    bool neg_ssnhf;		/* negotiate short sequence numbers */    bool neg_endpoint;		/* negotiate endpoint discriminator */    int  mru;			/* Value of MRU */    int	 mrru;			/* Value of MRRU, and multilink enable */    u_char chap_mdtype;		/* which MD types (hashing algorithm) */    u_int32_t asyncmap;		/* Value of async map */    u_int32_t magicnumber;    int  numloops;		/* Number of loops during magic number neg. */    u_int32_t lqr_period;	/* Reporting period for LQR 1/100ths second */    struct epdisc endpoint;	/* endpoint discriminator */} lcp_options;extern fsm lcp_fsm[];extern lcp_options lcp_wantoptions[];extern lcp_options lcp_gotoptions[];extern lcp_options lcp_allowoptions[];extern lcp_options lcp_hisoptions[];#define DEFMRU	1500		/* Try for this */#define MINMRU	128		/* No MRUs below this */#define MAXMRU	16384		/* Normally limit MRU to this */void lcp_open __P((int));void lcp_close __P((int, char *));void lcp_lowerup __P((int));void lcp_lowerdown __P((int));void lcp_sprotrej __P((int, u_char *, int));	/* send protocol reject */extern struct protent lcp_protent;/* Default number of times we receive our magic number from the peer   before deciding the link is looped-back. */#define DEFLOOPBACKFAIL	10

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -