|
|
1.1 ! root 1: /* ! 2: ** LOCK.H -- Concurency structs and global variables ! 3: ** ! 4: ** Version: ! 5: ** @(#)lock.h 8.1 12/31/84 ! 6: */ ! 7: ! 8: # ifndef KEYSIZE ! 9: ! 10: ! 11: # define M_SHARE 2 ! 12: # define M_EXCL 1 ! 13: # define T_CS 0 ! 14: # define T_PAGE 1 ! 15: # define T_REL 2 ! 16: # define T_DB 3 ! 17: # define A_RTN 1 ! 18: # define A_SLP 2 ! 19: # define A_RLS1 3 ! 20: # define A_RLSA 4 ! 21: # define KEYSIZE 12 ! 22: struct lockreq ! 23: { ! 24: char lract; /* requested action ! 25: * =1 request lock,err return ! 26: * =2 request lock,sleep ! 27: * =3 release lock ! 28: * =release all locks for pid ! 29: */ ! 30: char lrtype; /* type of lock: ! 31: * =0, critical section lock ! 32: * =1, page lock ! 33: * =2, logical lock ! 34: * =3, data base lock ! 35: */ ! 36: char lrmod; /* mode of lock ! 37: * =1 exclusive lock ! 38: * =2 shared lock ! 39: */ ! 40: /* key for the lock */ ! 41: char dbnode[4]; /* inode of data base */ ! 42: char lrel[4]; /* relation tid */ ! 43: char lpage[4]; /* page address */ ! 44: }; ! 45: ! 46: extern char Acclock; /* locks enabled flag */ ! 47: extern int Alockdes; /* file descriptor for lock device*/ ! 48: extern int Lockrel; /* lock relations flag*/ ! 49: ! 50: ! 51: # endif KEYSIZE
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.