Annotation of xinu/h/dgram.h, revision 1.1.1.1

1.1       root        1: /* dgram.h */
                      2: 
                      3: /* Datagram pseudo-device control block */
                      4: 
                      5: struct dgblk   {                       /* Datagram device control block*/
                      6:        int     dg_dnum;                /* device number of this device */
                      7:        int     dg_state;               /* whether this device allocated*/
                      8:        int     dg_lport;               /* local datagram port number   */
                      9:        int     dg_fport;               /* foreign datagram port number */
                     10:        IPaddr  dg_faddr;               /* foreign machine IP address   */
                     11:        int     dg_xport;               /* incoming packet queue        */
                     12:        int     dg_netq;                /* index of our netq entry      */
                     13:        int     dg_mode;                /* mode of this interface       */
                     14: };
                     15: 
                     16: /* Datagram psuedo-device state constants */
                     17: 
                     18: #define        DG_FREE         0               /* this device is available     */
                     19: #define        DG_USED         1               /* this device is in use        */
                     20: 
                     21: #define        DG_TIME         30              /* read timeout (tenths of sec) */
                     22: 
                     23: /* Constants for dgm pseudo-device control functions */
                     24: 
                     25: #define        DGM_GATE        11              /* Set the default gateway      */
                     26: 
                     27: /* Constants for dg pseudo-device control functions */
                     28: 
                     29: #define        DG_SETMODE      1               /* Set mode of device           */
                     30: #define        DG_CLEAR        2               /* clear all waiting datagrams  */
                     31: 
                     32: /* Constants for dg pseudo-device mode bits */
                     33: 
                     34: #define        DG_NMODE        001             /* normal (datagram) mode       */
                     35: #define        DG_DMODE        002             /* data-only mode               */
                     36: #define        DG_TMODE        040             /* timeout all reads            */
                     37: 
                     38: /* Structure of xinugram as dg interface delivers it to user */
                     39: 
                     40: struct xgram   {                       /* Xinu datagram (not UDP)      */
                     41:        IPaddr  xg_faddr;               /* foreign host IP address      */
                     42:        short   xg_fport;               /* foreign UDP port number      */
                     43:        short   xg_lport;               /* local UDP port number        */
                     44:        char    xg_data[UMAXLEN];       /* maximum data to/from UDP     */
                     45: };
                     46: 
                     47: #define        XGHLEN  8       /* error in ( (sizeof(struct xgram)) - UMAXLEN) */
                     48: 
                     49: /* Constants for port specifications on INTERNET open call */
                     50: 
                     51: #define        ANYFPORT        (char *)0       /* Accept any foreign UDP port  */
                     52: #define        ANYLPORT        0               /* Assign a fresh local port num*/
                     53: 
                     54: extern struct  dgblk   dgtab[];

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.