home *** CD-ROM | disk | FTP | other *** search
/ Piper's Pit BBS/FTP: ibm 0010 - 0019 / ibm0010-0019 / ibm0010.tar / ibm0010 / UNIX3862.ZIP / U386-06.ZIP / U386-6.TD0 / usr / include / sys / cirmgr.h < prev    next >
Encoding:
C/C++ Source or Header  |  1988-06-26  |  1.9 KB  |  62 lines

  1. /*    Copyright (c) 1984, 1986, 1987, 1988 AT&T    */
  2. /*      All Rights Reserved      */
  3.  
  4. /*    THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T    */
  5. /*    The copyright notice above does not evidence any       */
  6. /*    actual or intended publication of such source code.    */
  7.  
  8.  
  9. #ident    "@(#)head.sys:cirmgr.h    1.3"
  10.  
  11. #define MAXTOKLEN sizeof(struct token)        /* maximum token length in bytes */
  12.  
  13. struct gdpmisc {
  14.     int hetero;
  15.     int version;
  16. };
  17.  
  18. struct token {
  19.     int    t_id;     /* token id for differentiating multiple ckts    */
  20.     char    t_uname[MAXDNAME]; /* full domain name of machine        */
  21. };
  22.  
  23.  
  24. struct gdp {
  25.     struct queue *queue;    /* pointer to associated stream head    */
  26.     struct file *file;    /* file pointer to stream head we stole */
  27.     short mntcnt;        /* number of mounts on this stream    */
  28.     short sysid;
  29.     short flag;        /* connection info */        
  30.     char istate;        /* input state machine            */
  31.     char oneshot;        /* 1 if incoming msg is in a single block */
  32.     int hetero;        /* need to canonicalize messages    */
  33.     int version;        /* DU version at the other end of circuit */
  34.     long time;        /* time delta */
  35.     struct token token;    /* circuit identification        */
  36.     char    *idmap[2];    /* 0=uid=UID_DEV, 1=gid=GID_DEV        */
  37.     struct msgb *hdr;    /* message header collected so far    */
  38.     struct msgb *idata;    /* request/response collected so far    */
  39.     int hlen;        /* header length needs to be collected    */
  40.     int dlen;        /* data length needs to be collected    */
  41.     long maxpsz;        /* maximum TIDU size of the provider    */
  42. };
  43.  
  44. extern int maxgdp;
  45. extern struct gdp gdp[];
  46. #define get_sysid(x)       ((struct gdp *)(x)->sd_queue->q_ptr)->sysid
  47. #define    GDP(x)        ((struct gdp *)(x)->q_ptr)
  48.  
  49.  
  50. /* GDP circuit state flags */
  51. #define GDPRECOVER    0x004
  52. #define GDPDISCONN    0x002
  53. #define GDPCONNECT    0x001
  54. #define GDPFREE        0x000
  55.  
  56. /* GDP istate */
  57. #define    GDPST0        0x0    /* gathering header    */
  58. #define    GDPST1        0x1    /* processing header    */
  59. #define    GDPST2        0x2    /* gathering data    */
  60. #define    GDPST3        0x3    /* processing data    */
  61.  
  62.