|
|
1.1 ! root 1: #line 1 "LOGIO.C" ! 2: ! 3: /* Developed 1990-1997 by Rob Swindell; PO Box 501, Yorba Linda, CA 92885 */ ! 4: ! 5: /********************************/ ! 6: /* Log file reading and writing */ ! 7: /********************************/ ! 8: ! 9: #include "sbbs.h" ! 10: ! 11: void logentry(char *code, char *entry) ! 12: { ! 13: char str[512]; ! 14: ! 15: now=time(NULL); ! 16: sprintf(str,"Node %2d %s\r\n %s",node_num,timestr(&now),entry); ! 17: logline(code,str); ! 18: } ! 19: ! 20: /****************************************************************************/ ! 21: /* Writes 'str' verbatim into node.log */ ! 22: /****************************************************************************/ ! 23: void log(char *str) ! 24: { ! 25: if(!(sys_status&SS_LOGOPEN) || online==ON_LOCAL) return; ! 26: if(logcol>=78 || (78-logcol)<strlen(str)) { ! 27: write(logfile,crlf,2); ! 28: logcol=1; } ! 29: if(logcol==1) { ! 30: write(logfile," ",3); ! 31: logcol=4; } ! 32: write(logfile,str,strlen(str)); ! 33: if(str[strlen(str)-1]==LF) ! 34: logcol=1; ! 35: else ! 36: logcol+=strlen(str); ! 37: } ! 38: ! 39: /****************************************************************************/ ! 40: /* Writes 'str' on it's own line in node.log */ ! 41: /****************************************************************************/ ! 42: void logline(char *code, char *str) ! 43: { ! 44: char line[1024]; ! 45: ! 46: if(!(sys_status&SS_LOGOPEN) || (online==ON_LOCAL && strcmp(code,"!!"))) return; ! 47: if(logcol!=1) ! 48: write(logfile,crlf,2); ! 49: sprintf(line,"%-2.2s %s\r\n",code,str); ! 50: write(logfile,line,strlen(line)); ! 51: logcol=1; ! 52: } ! 53: ! 54: /****************************************************************************/ ! 55: /* Writes a comma then 'ch' to log, tracking column. */ ! 56: /****************************************************************************/ ! 57: void logch(char ch, char comma) ! 58: { ! 59: char slash='/'; ! 60: ! 61: if(!(sys_status&SS_LOGOPEN) || (online==ON_LOCAL)) return; ! 62: if((uchar)ch<SP) /* Don't log control chars */ ! 63: return; ! 64: if(logcol==1) { ! 65: logcol=4; ! 66: write(logfile," ",3); } ! 67: else if(logcol>=78) { ! 68: logcol=4; ! 69: write(logfile,"\r\n ",5); } ! 70: if(comma && logcol!=4) { ! 71: write(logfile,",",1); ! 72: logcol++; } ! 73: if(ch&0x80) { ! 74: ch&=0x7f; ! 75: if(ch<SP) ! 76: return; ! 77: write(logfile,&slash,1); } ! 78: write(logfile,&ch,1); ! 79: logcol++; ! 80: } ! 81:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.