]> andersk Git - moira.git/blobdiff - gen/warehouse.pc
Run a script to load the data.
[moira.git] / gen / warehouse.pc
index 3e18bdb0affc3a7307cb74e1645018789f8d8d13..4f8c0a1183a8fb446bfd623d064b0fe29186529a 100644 (file)
@@ -23,7 +23,6 @@
 #include <unistd.h>
 
 #include <krb.h>
-#include <gdss.h>
 
 #include "util.h"
 
@@ -38,23 +37,21 @@ char *db = "moira/moira";
 #define WAREHOUSE_SUBDIR "warehouse"
 #endif
 
-char warehouse_dir[128];
+char warehouse_dir[MAXPATHLEN];
 
 int main(int argc, char **argv)
 {
   int out = STDOUT_FILENO;
-  char *outf = NULL, outft[64];
-  char control_fn[80], cmd[256];
+  char *outf = NULL, outft[MAXPATHLEN];
+  char control_fn[MAXPATHLEN], cmd[256];
   FILE *f;
-  struct stat sb;
-  int flag1;
-  SigInfo si;
   int records = 0;
   EXEC SQL BEGIN DECLARE SECTION;
-  char login[9], sig[257], id[17], kname[257];
-  char fname[17], lname[17], middle[17];
-  EXEC SQL VAR sig IS STRING(257);
-  int timestamp, sigwho;
+  char login[USERS_LOGIN_SIZE];
+  char id[USERS_CLEARID_SIZE], kname[MAX_K_NAME_SZ];
+  char fname[USERS_FIRST_SIZE], lname[USERS_LAST_SIZE];
+  char middle[USERS_MIDDLE_SIZE];
+  int timestamp;
   struct {
     char login[12];
     char id[12];
@@ -73,15 +70,6 @@ int main(int argc, char **argv)
 
   if (argc == 2)
     {
-      if (stat(argv[1], &sb) == 0)
-       {
-         if (ModDiff(&flag1, "users", sb.st_mtime) == 0 && flag1 < 0)
-           {
-             fprintf(stderr, "File %s does not need to be rebuilt.\n",
-                     argv[1]);
-             exit(MR_NO_CHANGE);
-           }
-       }
       outf = argv[1];
       sprintf(outft, "%s/username_id.map", warehouse_dir);
       if ((out = open(outft, O_WRONLY|O_APPEND|O_CREAT|O_TRUNC, 0666)) < 0)
@@ -105,17 +93,14 @@ int main(int argc, char **argv)
   EXEC SQL WHENEVER SQLERROR GOTO sqlerr;
 
   EXEC SQL DECLARE x CURSOR FOR
-    SELECT u.login, u.clearid, u.signature, u.sigdate, s.string, u.sigwho,
-    u.first, u.last, u.middle
-    FROM users u, strings s
-    WHERE (u.status = 1 or u.status = 2 or u.status = 5 OR
-          u.status = 6 or u.status = 7)
-    AND u.sigwho = s.string_id;
+    SELECT login, clearid, first, last, middle
+    FROM users
+    WHERE (status = 1 or status = 2 or status = 5 OR
+          status = 6 or status = 7 or status = 9);
   EXEC SQL OPEN x;
   while (1)
     {
-      EXEC SQL FETCH x INTO :login, :id, :sig, :timestamp, :kname, :sigwho,
-       :fname, :lname, :middle;
+      EXEC SQL FETCH x INTO :login, :id, :fname, :lname, :middle;
       if (sqlca.sqlcode)
        break;
       if (id == 0)
@@ -124,7 +109,6 @@ int main(int argc, char **argv)
        continue;
       strtrim(login);
       strtrim(id);
-      strtrim(kname);
       strtrim(fname);
       strtrim(lname);
       strtrim(middle);
@@ -134,14 +118,6 @@ int main(int argc, char **argv)
       strcpy(outrec.fname, fname);
       strcpy(outrec.lname, lname);
       strcpy(outrec.middle, middle);
-      if (sigwho)
-       {
-         si.timestamp = timestamp;
-         si.SigInfoVersion = 0; /* XXXXXX this isn't used */
-         kname_parse(si.pname, si.pinst, si.prealm, kname);
-         si.rawsig = (unsigned char *)sig;
-         GDSS_Recompose(&si, outrec.sig);
-       }
       write(out, &outrec, sizeof(outrec));
       records++;
     }
This page took 0.033881 seconds and 4 git commands to generate.