1: #
   2: /*
   3: **  AUX.H -- misc. include information.
   4: **
   5: **	Version:
   6: **		@(#)aux.h	8.2	2/8/85
   7: */
   8: 
   9: # ifndef MAXFIELD
  10: 
  11: 
  12: /*
  13: **	Accessparam structure -- this structure is filled by
  14: **	the paramd() and parami() routines. It gives a list of
  15: **	key domains in their key sequence order.
  16: */
  17: 
  18: struct accessparam
  19: {
  20:     short   mode;       /* mode of relation, NOKEY, RANGEKEY, EXACTKEY */
  21:     short   sec_index;  /* TRUE if relation is a secondary index. else FALSE */
  22:     char    keydno[MAXDOM + 1];
  23: };
  24: 
  25: 
  26: 
  27: 
  28: /*
  29: **	Desxx structure -- This structure is used by opencatalog and
  30: **	closecatalog. It is used to maintain a list of system relations
  31: **	for caching.
  32: */
  33: 
  34: struct desxx
  35: {
  36:     char    *cach_relname;  /* name of the relation */
  37:     DESC    *cach_desc; /* desc to use */
  38:     DESC    *cach_alias;    /* alias for above descriptor */
  39: };
  40: 
  41: 
  42: /*
  43: **  Relation status bits
  44: **
  45: **	These bits are in the relation relation, in the "relstat"
  46: **	field.  They define status information about the relation.
  47: */
  48: 
  49: # define    S_CATALOG   0000001     /* system catalog */
  50: # define    S_NOUPDT    0000002     /* no update allowed */
  51: # define    S_PROTUPS   0000004     /* tuples exist in 'protect' */
  52: # define    S_INTEG     0000010     /* integrity constrained */
  53: # define    S_CONCUR    0000020     /* concurrency enforced */
  54: # define    S_VIEW      0000040     /* relation is a view */
  55: # define    S_VBASE     0000100     /* base rel for a view */
  56: # define    S_INDEX     0000200     /* is a sec indx */
  57: # define    S_BINARY    0000400     /* print char domains in binary */
  58: # define    S_DISTRIBUTED   0001000     /* reserved for distributed rels */
  59: # define    S_DISCRIT   0002000     /* resrved for distr temp rel */
  60: # define    S_DISCOPY   0004000     /* reserved for distributed rels */
  61: # define    S_PROTALL   0010000     /* if clear, all permission */
  62: # define    S_PROTRET   0020000     /* if clear, read permission */
  63: 
  64: /*
  65: **  Protection bits are defined as follows:
  66: **
  67: **	S_PROTUPS -- if set, there are tuples for this relation in the
  68: **		protect catalog.
  69: **	S_PROTALL, S_PROTRET -- AS shown from the following table:
  70: **	PROTALL	PROTRET	    meaning
  71: **	    1	    1	Need to look in the protect catalog to tell.
  72: **	    1	    0	Permit RETRIEVE to ALL case.
  73: **	    0	    1	Permit ALL to ALL case.
  74: **	    0	    0	Permit ALL to ALL and RETRIEVE to ALL.
  75: */
  76: 
  77: /*
  78: **  User status bits
  79: **
  80: **	These bits are in the status field of the users file.  They end
  81: **	up in a variable "Status" after a call to initucode.
  82: */
  83: 
  84: # define    U_CREATDB   0000001     /* can create data bases */
  85: # define    U_DRCTUPDT  0000002     /* can specify direct update */
  86: # define    U_UPSYSCAT  0000004     /* can update system catalogs directly */
  87: # define    U_TRACE     0000020     /* can use trace flags */
  88: # define    U_QRYMODOFF 0000040     /* can turn off qrymod */
  89: # define    U_APROCTAB  0000100     /* can use arbitrary proctab */
  90: # define    U_EPROCTAB  0000200     /* can use =proctab form */
  91: # define    U_SUPER     0100000     /* ingres superuser */
  92: 
  93: /*
  94: **	The following defines declare the field number in the users
  95: **	file for each field.
  96: */
  97: 
  98: # define    UF_NAME     0       /* login name */
  99: # define    UF_UCODE    1       /* user code */
 100: # define    UF_UID      2       /* UNIX user id */
 101: # define    UF_GID      3       /* UNIX group id */
 102: # define    UF_STAT     4       /* status bits */
 103: # define    UF_FLAGS    5       /* default flags */
 104: # define    UF_PTAB     6       /* default proctab */
 105: # define    UF_IFILE    7       /* monitor init file */
 106: # define    UF_DBLIST   9       /* list of valid databases */
 107: 
 108: # define    UF_NFIELDS  10      /* TOTAL number of fields */
 109: 
 110: /*
 111: **	UCODE_SZ is the size of the Usercode
 112: */
 113: # define    UCODE_SZ    2
 114: 
 115: /*
 116: **	Usercode contains the current user's INGRES user-id code.
 117: **	Pathname contains the name of the INGRES subtree.
 118: */
 119: 
 120: extern char *Usercode;
 121: extern char *Pathname;
 122: 
 123: 
 124: 
 125: /*
 126: **	The following union are for use in type conversion.
 127: **		modified for VAX june '79
 128: */
 129: 
 130: 
 131: 
 132: /*
 133: **  PRINTED OUTPUT ARGUMENTS
 134: **
 135: **	The following struct describes the printed output available
 136: **	to the user.
 137: */
 138: 
 139: struct out_arg
 140: {
 141:     int c0width;    /* minimum width of "c" field */
 142:     int i1width;    /* width of "i1" field */
 143:     int i2width;    /* width of "i2" field */
 144:     int i4width;    /* width of "i4" field */
 145:     int f4width;    /* width of "f4" field */
 146:     int f8width;    /* width of "f8" field */
 147:     int f4prec;     /* number of decimal places on "f4" */
 148:     int f8prec;     /* number of decimal places on "f8" */
 149:     char    f4style;    /* "f4" output style */
 150:     char    f8style;    /* "f8" output style */
 151:     int linesperpage;   /* number of lines per output page */
 152:     char    coldelim;   /* column delimiter */
 153: };
 154: 
 155: /* maximum width of any of the above fields */
 156: # define    MAXFIELD    255
 157: /*
 158: **  any text line read from a file (for example, .../files/users) can
 159: **	be at most MAXLINE bytes long.  buffers designed for holding
 160: **	such info should be decleared as char buf[MAXLINE + 1] to allow
 161: **	for the null terminator.
 162: */
 163: 
 164: # define    MAXLINE     256
 165: 
 166: 
 167: /* file mode for INGRES files */
 168: # define    FILEMODE    0600        /* db file mode */
 169: 
 170: /* stuff giving information about the machine */
 171: # ifdef PDP11
 172: # define    WORDSIZE    16  /* number of bits in word */
 173: # define    LOG2WORDSIZE    4   /* log base 2 of WORDSIZE */
 174: # else
 175: # define    WORDSIZE    32  /* number of bits in word */
 176: # define    LOG2WORDSIZE    5   /* log base 2 of WORDSIZE */
 177: # endif
 178: 
 179: # endif MAXFIELD

Defined struct's

accessparam defined in line 18; never used
desxx defined in line 34; never used
out_arg defined in line 139; never used

Defined macros

FILEMODE defined in line 168; never used
LOG2WORDSIZE defined in line 176; never used
MAXFIELD defined in line 156; used 1 times
  • in line 9
MAXLINE defined in line 164; never used
S_BINARY defined in line 57; never used
S_CATALOG defined in line 49; never used
S_CONCUR defined in line 53; never used
S_DISCOPY defined in line 60; never used
S_DISCRIT defined in line 59; never used
S_DISTRIBUTED defined in line 58; never used
S_INDEX defined in line 56; never used
S_INTEG defined in line 52; never used
S_NOUPDT defined in line 50; never used
S_PROTALL defined in line 61; never used
S_PROTRET defined in line 62; never used
S_PROTUPS defined in line 51; never used
S_VBASE defined in line 55; never used
S_VIEW defined in line 54; never used
UCODE_SZ defined in line 113; never used
UF_DBLIST defined in line 106; never used
UF_FLAGS defined in line 103; never used
UF_GID defined in line 101; never used
UF_IFILE defined in line 105; never used
UF_NAME defined in line 98; never used
UF_NFIELDS defined in line 108; never used
UF_PTAB defined in line 104; never used
UF_STAT defined in line 102; never used
UF_UCODE defined in line 99; never used
UF_UID defined in line 100; never used
U_APROCTAB defined in line 89; never used
U_CREATDB defined in line 84; never used
U_DRCTUPDT defined in line 85; never used
U_EPROCTAB defined in line 90; never used
U_QRYMODOFF defined in line 88; never used
U_SUPER defined in line 91; never used
U_TRACE defined in line 87; never used
U_UPSYSCAT defined in line 86; never used
WORDSIZE defined in line 175; never used
Last modified: 1986-04-17
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 749
Valid CSS Valid XHTML 1.0 Strict