]> git.ozlabs.org Git - ppp.git/blobdiff - pppd/lcp.h
CI: Updated the 'checkout' actions that were using Node.js 16 to Node.js 20. (#489)
[ppp.git] / pppd / lcp.h
index 23f3c849034788e0e0a2ec493968f5c153d76526..bdf18d03eadc7007a9e663fd6a0d54c944b6f61d 100644 (file)
  * 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.19 2002/12/04 23:03:32 paulus Exp $
  */
+#ifndef PPP_LCP_H
+#define PPP_LCP_H
+
+#include "pppdconf.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 
 /*
  * 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_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.
+ * 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 */
 
+/* An endpoint discriminator, used with multilink. */
+#define MAX_ENDP_LEN   20      /* maximum length of discriminator value */
+struct epdisc {
+    unsigned char      class;
+    unsigned char      length;
+    unsigned char      value[MAX_ENDP_LEN];
+};
+
 /*
  * The state of options is described by an lcp_options structure.
  */
@@ -88,11 +119,11 @@ typedef struct lcp_options {
     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;
+    unsigned char chap_mdtype;         /* which MD types (hashing algorithm) */
+    uint32_t asyncmap;         /* Value of async map */
+    uint32_t magicnumber;
     int  numloops;             /* Number of loops during magic number neg. */
-    u_int32_t lqr_period;      /* Reporting period for LQR 1/100ths second */
+    uint32_t lqr_period;       /* Reporting period for LQR 1/100ths second */
     struct epdisc endpoint;    /* endpoint discriminator */
 } lcp_options;
 
@@ -106,14 +137,21 @@ extern lcp_options lcp_hisoptions[];
 #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 */
+void lcp_open(int);
+void lcp_close(int, char *);
+void lcp_lowerup(int);
+void lcp_lowerdown(int);
+void lcp_sprotrej(int, unsigned 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
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // PPP_LCP_H