1: /* @(#)pwlock.c 2.1 SCCS id keyword */ 2: #include <whoami.h> 3: #include <stdio.h> 4: 5: static char lockmode; 6: static char TEMP[] = "/etc/plXXXXXX"; 7: static char LOCK[] = "/etc/ptmp"; 8: 9: char *mktemp(); 10: 11: pwlock(mode) 12: char *mode; 13: { 14: register result; 15: 16: lockmode = *mode; 17: close(creat(mktemp(TEMP), 0600)); 18: result = link(TEMP, LOCK); 19: unlink(TEMP); 20: return(result); 21: } 22: 23: pwunlock() 24: { 25: #ifdef UCB_PWHASH 26: if (lockmode != 'r') 27: pwtable(); 28: #endif 29: unlink(LOCK); 30: return; 31: }