1 # include <time.h> 2 3 /* 4 ** ARPADATE -- Create date in ARPANET format 5 ** 6 ** Parameters: 7 ** none 8 ** 9 ** Returns: 10 ** pointer to an ARPANET date field 11 ** 12 ** Side Effects: 13 ** none 14 ** 15 ** WARNING: 16 ** date is stored in a local buffer -- subsequent 17 ** calls will overwrite. 18 ** 19 ** Requires: 20 ** time (sys) 21 ** ctime (sys) 22 ** strcpy (sys) 23 ** strcat (sys) 24 ** localtime (sys) 25 ** 26 ** History: 27 ** 1/15/80 -- written. 28 */ 29 30 arpadate() 31 { 32 register char *ud; /* the unix date */ 33 long t; 34 extern struct tm *localtime(); 35 register char *p; 36 static char b[40]; 37 38 time(&t); 39 ud = ctime(&t); 40 41 ud[3] = ud[7] = ud[10] = ud[19] = ud[24] = '\0'; 42 p = &ud[8]; /* 16 */ 43 if (*p == ' ') 44 p++; 45 strcpy(b, p); 46 strcat(b, " "); 47 strcat(b, &ud[4]); /* Sep */ 48 strcat(b, " "); 49 strcat(b, &ud[20]); /* 1979 */ 50 strcat(b, " "); 51 strcat(b, &ud[11]); /* 01:03:52 */ 52 if (localtime(&t)->tm_isdst) 53 strcat(b, "-PDT"); 54 else 55 strcat(b, "-PST"); 56 return (b); 57 } 58