X-Git-Url: http://andersk.mit.edu/gitweb/moira.git/blobdiff_plain/dfb56d6bef75283bf17170cee566169857f0abe7..5076cbb9c4aa11e4606819f8f0d86143a1058c17:/gen/aliases.qc diff --git a/gen/aliases.qc b/gen/aliases.qc index 25d706ca..61244a88 100644 --- a/gen/aliases.qc +++ b/gen/aliases.qc @@ -12,12 +12,17 @@ #include #include #include +#include +#include +#include + #define ML_WID 72 #define AL_MAX_WID 896 char *divide = "########################################################################"; extern int errno; +char *ingres_date_and_time(); main(argc, argv) @@ -26,9 +31,27 @@ char **argv; { long tm = time(NULL); FILE *out= stdout; -## int error; + struct stat sb; +## int error, flag1, flag2, flag3; +## char *filetime; + +## ingres sms if (argc == 2) { + if (stat(argv[1], &sb) == 0) { + filetime = ingres_date_and_time(sb.st_mtime); +## retrieve (flag1 = int4(interval("min",tblstats.modtime - filetime))) +## where tblstats.table = "list" +## retrieve (flag2 = int4(interval("min",tblstats.modtime - filetime))) +## where tblstats.table = "members" +## retrieve (flag3 = int4(interval("min",tblstats.modtime - filetime))) +## where tblstats.table = "users" + if (flag1 < 0 && flag2 < 0 && flag3 < 0) { + fprintf(stderr, "File %s does not need to be rebuilt.\n", + argv[1]); + exit(0); + } + } if ((out = fopen(argv[1], "w")) == NULL) { fprintf(stderr, "unable to open %s for output\n", argv[1]); exit(errno); @@ -38,7 +61,6 @@ char **argv; exit(-1); } -## ingres sms ## set lockmode session where readlock = nolock @@ -268,20 +290,3 @@ register char *string; (void) fputc('\n', aliases); } - - -trim(s) -register char *s; -{ - register char *p; - - for (p = s; *s; s++) - if (*s != ' ') - p = s; - if (p != s) { - if (*p == ' ') - *p = 0; - else - p[1] = 0; - } -}