home *** CD-ROM | disk | FTP | other *** search
/ Big Green CD 8 / BGCD_8_Dev.iso / NEXTSTEP / Connectivity / GateKeeper-2.1 / net / ppp_str.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-04-23  |  4.4 KB  |  123 lines

  1. /*
  2.   ppp_str.h - streams version include file
  3.  
  4.   Copyright (C) 1990 Brad K. Clements, All Rights Reserved,
  5.   See copyright statement in NOTES
  6. */
  7.  
  8. /*
  9.  * Packet sizes
  10.  */
  11. #define    PPP_MTU        1500    /* Default MTU (size of Info field) */
  12. #define PPP_MAXMRU    65000    /* Largest MRU we allow */
  13.  
  14. /*
  15.  * Definitions for ioctls.
  16.  */
  17. struct npioctl {
  18.     int        protocol;    /* PPP procotol, e.g. PPP_IP */
  19.     enum NPmode    mode;
  20. };
  21.  
  22. /* Structure describing a CCP configuration option, for SIOCSCOMPRESS */
  23. #define MAX_PPP_OPTION    32
  24. struct ppp_option_data {
  25.     u_int    length;
  26.     int    transmit;
  27.     u_char    opt_data[MAX_PPP_OPTION];
  28. };
  29.  
  30. struct ifpppstatsreq {
  31.     char ifr_name[IFNAMSIZ];
  32.     struct ppp_stats stats;
  33. };
  34.  
  35. struct ifpppcstatsreq {
  36.     char ifr_name[IFNAMSIZ];
  37.     struct ppp_comp_stats stats;
  38. };
  39.  
  40. /*
  41.  * Ioctl definitions.
  42.  */
  43.  
  44. #if defined(__STDC__) || defined(__osf__)
  45. #define    SIOCSIFCOMPAC    _IOW('p', 130, char)
  46. #define    SIOCSIFCOMPPROT    _IOW('p', 131, char)
  47. #define    SIOCSIFMRU    _IOW('p', 132, int)    /* set max receive unit */
  48. #define    SIOCGIFMRU    _IOR('p', 133, int)    /* get max receive unit */
  49. #define    SIOCGIFASYNCMAP    _IOR('p', 134, u_int32_t) /* get transmit async map */
  50. #define    SIOCSIFASYNCMAP    _IOW('p', 135, u_int32_t) /* set transmit async map */
  51. #define    SIOCGETU    _IOR('p', 136, int)    /* get unit number */
  52. #define    SIOCSIFVJCOMP    _IOW('p', 137, char)    /* enable/disable VJ comp */
  53. #define    SIOCGIFDEBUG    _IOR('p', 138, int)    /* get debug flags */
  54. #define    SIOCSIFDEBUG    _IOW('p', 139, int)    /* set debug flags */
  55. #define    SIOCGIFRASYNCMAP _IOR('p', 140, u_int32_t) /* get receive async map */
  56. #define    SIOCSIFRASYNCMAP _IOW('p', 141, u_int32_t) /* set receive async map */
  57. #define    SIOCGIFXASYNCMAP _IOR('p', 142, ext_accm)  /* get extended xmit map */
  58. #define    SIOCSIFXASYNCMAP _IOW('p', 143, ext_accm)  /* set extended xmit map */
  59. #define    SIOCSETU    _IOW('p', 144, int)    /* set unit number */
  60. #define SIOCSETNPMODE    _IOW('p', 145, struct npioctl)    /* set NP mode */
  61. #define SIOCGETNPMODE    _IOWR('p', 146, struct npioctl)    /* get NP mode */
  62. #define SIOCGIFCOMP    _IOR('p', 148, int)    /* get CCP kernel flags */
  63. #define SIOCSIFCOMP    _IOW('p', 149, int)    /* set CCP closed/open/up */
  64. #define SIOCSCOMPRESS    _IOW('p', 150, struct ppp_option_data)
  65.  
  66. #define SIOCGPPPSTATS    _IOWR('i', 123, struct ifpppstatsreq)
  67. #define SIOCGPPPCSTATS    _IOWR('i', 124, struct ifpppcstatsreq)
  68.  
  69. #else
  70. /* traditional C compiler */
  71. #define    SIOCSIFCOMPAC    _IOW(p, 130, char)
  72. #define    SIOCSIFCOMPPROT    _IOW(p, 131, char)
  73. #define    SIOCSIFMRU    _IOW(p, 132, int)    /* set max receive unit */
  74. #define    SIOCGIFMRU    _IOR(p, 133, int)    /* get max receive unit */
  75. #define    SIOCGIFASYNCMAP    _IOR(p, 134, u_int32_t)    /* get transmit async map */
  76. #define    SIOCSIFASYNCMAP    _IOW(p, 135, u_int32_t)    /* set transmit async map */
  77. #define    SIOCGETU    _IOR(p, 136, int)    /* get unit number */
  78. #define    SIOCSIFVJCOMP    _IOW(p, 137, char)    /* enable/disable VJ comp */
  79. #define    SIOCGIFDEBUG    _IOR(p, 138, int)    /* get debug flags */
  80. #define    SIOCSIFDEBUG    _IOW(p, 139, int)    /* set debug flags */
  81. #define    SIOCGIFRASYNCMAP _IOR(p, 140, u_int32_t) /* get receive async map */
  82. #define    SIOCSIFRASYNCMAP _IOW(p, 141, u_int32_t) /* set receive async map */
  83. #define    SIOCGIFXASYNCMAP _IOR(p, 142, ext_accm) /* get extended xmit map */
  84. #define    SIOCSIFXASYNCMAP _IOW(p, 143, ext_accm) /* set extended xmit map */
  85. #define    SIOCSETU    _IOW(p, 144, int)    /* set unit number */
  86. #define SIOCSETNPMODE    _IOW(p, 145, struct npioctl)    /* set NP mode */
  87. #define SIOCGETNPMODE    _IOWR(p, 146, struct npioctl)    /* get NP mode */
  88. #define SIOCGIFCOMP    _IOR(p, 148, int)    /* get CCP kernel flags */
  89. #define SIOCSIFCOMP    _IOW(p, 149, int)    /* set CCP closed/open/up */
  90. #define SIOCSCOMPRESS    _IOW(p, 150, struct ppp_option_data)
  91.  
  92. #define SIOCGPPPSTATS    _IOWR(i, 123, struct ifpppstatsreq)
  93. #define SIOCGPPPCSTATS    _IOWR(i, 124, struct ifpppcstatsreq)
  94. #endif
  95.  
  96. /*
  97.  * Note on SIOCSIFVJCOMP: the parameter is now encoded as follows.
  98.  * Bit 0 = overall VJ enable, bit 1 = don't compress connection ID,
  99.  * bit 2 = receiver rejects VJ compression,
  100.  * bits 4--7 = maximum slot ID (0 => use default (15)).
  101.  */
  102.  
  103. /* Bits for SIOCGIFDEBUG */
  104. #define PAI_FLAGS_B7_0        0x100
  105. #define PAI_FLAGS_B7_1        0x200
  106. #define PAI_FLAGS_PAR_EVEN    0x400
  107. #define PAI_FLAGS_PAR_ODD    0x800
  108. #define PAI_FLAGS_HIBITS    0xF00
  109.  
  110. /* Bit definitions for SIOC[GS]IFCOMP. */
  111. #define CCP_ISOPEN    1
  112. #define CCP_ISUP    2
  113. #define CCP_COMP_RUN    4
  114. #define CCP_DECOMP_RUN    8
  115. #define CCP_ERROR    0x10
  116. #define CCP_FATALERROR    0x20
  117.  
  118. /* defines for streams modules */
  119. #define IF_INPUT_ERROR    0xe1
  120. #define IF_OUTPUT_ERROR    0xe2
  121. #define IF_GET_CSTATS    0xe3
  122. #define IF_CSTATS    0xe4
  123.