]> andersk Git - moira.git/blobdiff - dbck/phase1.pc
Code style cleanup. (No functional changes)
[moira.git] / dbck / phase1.pc
index 849f583bf0b6be54234d0e5585a8355ef62523d3..52b06b758fbe060027accb9783f1916cc3fa48f4 100644 (file)
@@ -8,6 +8,7 @@
 #include <mit-copyright.h>
 #include <moira.h>
 #include <stdio.h>
+#include <stdlib.h>
 #include "dbck.h"
 EXEC SQL INCLUDE sqlca;
 
@@ -15,721 +16,773 @@ static char phase1_qc_rcsid[] = "$Header$";
 
 EXEC SQL WHENEVER SQLERROR DO dbmserr();
 
-show_user_id(u)
-struct user *u;
+int show_user_id(struct user *u)
 {
-    printf("User %s (%s, status %d) has duplicate ID\n",
-          u->login, u->fullname, u->status);
-    return(0);
+  printf("User %s (%s, status %d) has duplicate ID\n",
+        u->login, u->fullname, u->status);
+  return 0;
 }
 
-handle_duplicate_logins(sq)
-struct save_queue *sq;
+handle_duplicate_logins(struct save_queue *sq)
 {
-    struct user *u, *uu, *tmp;
-
-    uu = (struct user *)0;
-    if(sq_get_data(sq,&uu)) {
-      while (sq_get_data(sq, &u)) {
-       if (!strcmp(u->login, uu->login)) {
-           if (uu->status == 1 || u->status == 0) {
-               tmp = u;
-               u = uu;
-               uu = tmp;
-           }
-           printf("User %s (%s, status %d) and\n",
-                  u->login, u->fullname, u->status);
-           printf("User %s (%s, status %d) have duplicate logins\n",
-                  uu->login, uu->fullname, uu->status);
-           if (!strcmp(u->fullname, uu->fullname) &&
-               single_fix("Delete the second one")) {
+  struct user *u, *uu, *tmp;
+
+  uu = NULL;
+  if (sq_get_data(sq, &uu))
+    {
+      while (sq_get_data(sq, &u))
+       {
+         if (!strcmp(u->login, uu->login))
+           {
+             if (uu->status == 1 || u->status == 0)
+               {
+                 tmp = u;
+                 u = uu;
+                 uu = tmp;
+               }
+             printf("User %s (%s, status %d) and\n",
+                    u->login, u->fullname, u->status);
+             printf("User %s (%s, status %d) have duplicate logins\n",
+                    uu->login, uu->fullname, uu->status);
+             if (!strcmp(u->fullname, uu->fullname) &&
+                 single_fix("Delete the second one"))
                single_delete("users", "users_id", uu->users_id);
-           } else if (single_fix("Unregister the second one"))
-             {
-               EXEC SQL BEGIN DECLARE SECTION; 
-               int id = uu->users_id, rowcount;
-               EXEC SQL END DECLARE SECTION; 
-
-               EXEC SQL UPDATE users SET login = '#' || CHAR(users.unix_uid),
-                   status=0 WHERE users_id = :id;
-               rowcount = sqlca.sqlerrd[2];
-               if (rowcount > 0)
-                 printf("%d entr%s fixed\n", rowcount, rowcount==1?"y":"ies");
-               else
-                 printf("Not fixed\n");
-               modified("users");
-             }
-       } else {
+             else if (single_fix("Unregister the second one"))
+               {
+                 EXEC SQL BEGIN DECLARE SECTION;
+                 int id = uu->users_id, rowcount;
+                 EXEC SQL END DECLARE SECTION;
+
+                 EXEC SQL UPDATE users
+                   SET login = '#' || CHAR(users.unix_uid), status = 0
+                   WHERE users_id = :id;
+                 rowcount = sqlca.sqlerrd[2];
+                 if (rowcount > 0)
+                   {
+                     printf("%d entr%s fixed\n", rowcount,
+                            rowcount == 1 ? "y" : "ies");
+                   }
+                 else
+                   printf("Not fixed\n");
+                 modified("users");
+               }
+           }
+         else
            uu = u;
        }
-      }
     }
 }
 
-fix_user_id(u)
-struct user *u;
+fix_user_id(struct user *u)
 {
-    u->users_id = generic_fix_id("users", "users_id", "login",
-                                u->users_id, u->login);
+  u->users_id = generic_fix_id("users", "users_id", "login",
+                              u->users_id, u->login);
 }
 
 
-cant_fix(id)
-int id;
+cant_fix(int id)
 {
-    printf("Sorry, don't know how to fix that\n");
+  printf("Sorry, don't know how to fix that\n");
 }
 
-show_mach_id(m)
-struct machine *m;
+int show_mach_id(struct machine *m)
 {
-    printf("Machine %s has duplicate ID %d\n", m->name, m->mach_id);
-    return(0);
+  printf("Machine %s has duplicate ID %d\n", m->name, m->mach_id);
+  return 0;
 }
 
-show_mach_name(m)
-struct machine *m;
+int show_mach_name(struct machine *m)
 {
-    printf("Machine %s (%d) has duplicate name\n", m->name, m->mach_id);
-    return(0);
+  printf("Machine %s (%d) has duplicate name\n", m->name, m->mach_id);
+  return 0;
 }
 
-fix_mach_id(m)
-struct machine *m;
+fix_mach_id(struct machine *m)
 {
-    m->mach_id = generic_fix_id("machine", "mach_id", "name",
-                               m->mach_id, m->name);
+  m->mach_id = generic_fix_id("machine", "mach_id", "name",
+                             m->mach_id, m->name);
 }
 
-show_snet_name(s)
-struct subnet *s;
+int show_snet_name(struct subnet *s)
 {
-    printf("Subnet %s (%d) has duplicate name\n", s->name, s->snet_id);
-    return(0);
+  printf("Subnet %s (%d) has duplicate name\n", s->name, s->snet_id);
+  return 0;
 }
 
-show_clu_id(c)
-struct cluster *c;
+int show_clu_id(struct cluster *c)
 {
-    printf("Cluster %s has duplicate ID %d\n", c->name, c->clu_id);
-    return(0);
+  printf("Cluster %s has duplicate ID %d\n", c->name, c->clu_id);
+  return 0;
 }
 
-show_clu_name(c)
-struct cluster *c;
+int show_clu_name(struct cluster *c)
 {
-    printf("Cluster %s (%d) has duplicate name\n", c->name, c->clu_id);
-    return(0);
+  printf("Cluster %s (%d) has duplicate name\n", c->name, c->clu_id);
+  return 0;
 }
 
-fix_clu_id(c)
-struct cluster *c;
+fix_clu_id(struct cluster *c)
 {
-    c->clu_id = generic_fix_id("cluster", "clu_id", "name", c->clu_id, c->name);
+  c->clu_id = generic_fix_id("cluster", "clu_id", "name", c->clu_id, c->name);
 }
 
-show_list_id(l)
-struct list *l;
+int show_list_id(struct list *l)
 {
-    printf("List %s has duplicate ID %d\n", l->name, l->list_id);
-    return(0);
+  printf("List %s has duplicate ID %d\n", l->name, l->list_id);
+  return 0;
 }
 
-show_list_name(l)
-struct list *l;
+int show_list_name(struct list *l)
 {
-    printf("List %s (%d) has duplicate name\n", l->name, l->list_id);
-    return(0);
+  printf("List %s (%d) has duplicate name\n", l->name, l->list_id);
+  return 0;
 }
 
-fix_list_id(l)
-struct list *l;
+fix_list_id(struct list *l)
 {
-    l->list_id = generic_fix_id("list", "list_id", "name", l->list_id, l->name);
+  l->list_id = generic_fix_id("list", "list_id", "name", l->list_id, l->name);
 }
 
-show_fs_id(f)
-struct filesys *f;
+int show_fs_id(struct filesys *f)
 {
-    printf("Filesys %s has duplicate ID %d\n", f->name, f->filsys_id);
-    return(0);
+  printf("Filesys %s has duplicate ID %d\n", f->name, f->filsys_id);
+  return 0;
 }
 
-fix_fs_id(f)
-struct filesys *f;
+fix_fs_id(struct filesys *f)
 {
-    f->filsys_id = generic_fix_id("filesys", "filsys_id", "label",
-                                 f->filsys_id, f->name);
+  f->filsys_id = generic_fix_id("filesys", "filsys_id", "label",
+                               f->filsys_id, f->name);
 }
 
-show_fs_name(fs)
-struct filesys *fs;
+int show_fs_name(struct filesys *fs)
 {
-    printf("Filesys %s (%d) has duplicate name\n", fs->name, fs->filsys_id);
-    return(0);
+  printf("Filesys %s (%d) has duplicate name\n", fs->name, fs->filsys_id);
+  return 0;
 }
 
-
-show_np_id(n)
-struct nfsphys *n;
+int show_np_id(struct nfsphys *n)
 {
-    printf("NfsPhys %s:%s has duplicate ID %d\n",
-          ((struct machine *)hash_lookup(machines, n->mach_id))->name,
-          n->dir, n->nfsphys_id);
-    return(0);
+  printf("NfsPhys %s:%s has duplicate ID %d\n",
+        ((struct machine *)hash_lookup(machines, n->mach_id))->name,
+        n->dir, n->nfsphys_id);
+  return 0;
 }
 
-fix_np_id(n)
-struct nfsphys *n;
+fix_np_id(struct nfsphys *n)
 {
-    n->nfsphys_id = generic_fix_id("nfsphys", "nfsphys_id", "dir",
-                                  n->nfsphys_id, n->dir);
+  n->nfsphys_id = generic_fix_id("nfsphys", "nfsphys_id", "dir",
+                                n->nfsphys_id, n->dir);
 }
 
-show_str_id(s)
-struct string *s;
+int show_str_id(struct string *s)
 {
-    printf("String %s has duplicate ID %d\n", s->name, s->string_id);
-    return(0);
+  printf("String %s has duplicate ID %d\n", s->name, s->string_id);
+  return 0;
 }
 
-print_str_id(id)
-     int id;
+int print_str_id(int id)
 {
   printf("String %d is a duplicate\n", id);
-  return(0);
+  return 0;
 }
 
-print_dup_map(key, data, hint)
-       int key;
-       int data;
-       char *hint;
+print_dup_map(int key, int data, char *hint)
 {
-       printf("String %d is a duplicate of string %d\n", key, data);
-
+  printf("String %d is a duplicate of string %d\n", key, data);
 }
 
-phase1()
+phase1(void)
 {
-    EXEC SQL BEGIN DECLARE SECTION; 
-    char name[81], name1[81], last[17], first[17], buf[257];
-    int id, id1, id2, id3, aid, aid2, status;
-    int sid, sid2, sid3, sid4, sid5;
-    EXEC SQL END DECLARE SECTION; 
-    int i, q, retval, tmp;
-    struct save_queue *sq;
-    struct user *u;
-    struct machine *m;
-    struct subnet *sn;
-    struct list *l;
-    struct cluster *c;
-    struct string *s;
-    struct filesys *f;
-    struct nfsphys *n;
-
-    printf("Phase 1 - Looking for duplicates\n");
-
-    /* self-join strings table on "string" to get duplicate strings, then
-       build a duplicates table to merge them. */
-
-    dprintf("Looking for duplicate strings...\n");
-    string_dups = create_hash( 100 );
-    if(!string_dups) out_of_mem("storing duplicate strings");
-    
-    EXEC SQL DECLARE csr116 CURSOR FOR
-      SELECT s1.string_id, s2.string_id FROM strings s1, strings s2
-       where s1.string = s2.string and s1.string_id < s2.string_id;
-    EXEC SQL OPEN csr116;
-    /*  The SELECT gives us two columns, both with non-negative integers.
-     *  The number in the left column is always the smaller of the two,
-     *  and each row includes string IDs for identical strings.  We use
-     *  them to make a mapping from id-to-delete to id-to-keep for all
-     * superflous IDs.
-     */
-    q=0;
-    while(1) {
-       EXEC SQL FETCH csr116 INTO :id1, :id2;
-       if (sqlca.sqlcode != 0) break;
-       q++;
-       /*  If id2 is already stored, skip this row. */
-       i = int_hash_lookup( string_dups, id2 );
-       if( i > 0 ) { continue; }
-       /*  Follow the chain of id1 equivalent IDs back to the lowest one. */
-       id=id1;
-       while((tmp=int_hash_lookup(string_dups, id))>0)
-         id=tmp;
-       int_hash_store( string_dups, id2, id );
+  EXEC SQL BEGIN DECLARE SECTION;
+  char name[81], name1[81], last[17], first[17], buf[257];
+  int id, id1, id2, id3, aid, aid2, status;
+  int sid, sid2, sid3, sid4, sid5;
+  EXEC SQL END DECLARE SECTION;
+  int i, q, retval, tmp;
+  struct save_queue *sq;
+  struct user *u;
+  struct machine *m;
+  struct subnet *sn;
+  struct list *l;
+  struct cluster *c;
+  struct string *s;
+  struct filesys *f;
+  struct nfsphys *n;
+
+  printf("Phase 1 - Looking for duplicates\n");
+
+  /* self-join strings table on "string" to get duplicate strings, then
+     build a duplicates table to merge them. */
+
+  dprintf("Looking for duplicate strings...\n");
+  string_dups = create_hash(100);
+  if (!string_dups)
+    out_of_mem("storing duplicate strings");
+
+  EXEC SQL DECLARE csr116 CURSOR FOR
+    SELECT s1.string_id, s2.string_id FROM strings s1, strings s2
+    WHERE s1.string = s2.string and s1.string_id < s2.string_id;
+  EXEC SQL OPEN csr116;
+  /*  The SELECT gives us two columns, both with non-negative integers.
+   *  The number in the left column is always the smaller of the two,
+   *  and each row includes string IDs for identical strings.  We use
+   *  them to make a mapping from id-to-delete to id-to-keep for all
+   *  superflous IDs.
+   */
+  q = 0;
+  while (1)
+    {
+      EXEC SQL FETCH csr116 INTO :id1, :id2;
+      if (sqlca.sqlcode)
+       break;
+      q++;
+      /*  If id2 is already stored, skip this row. */
+      i = int_hash_lookup(string_dups, id2);
+      if (i > 0)
+       continue;
+      /*  Follow the chain of id1 equivalent IDs back to the lowest one. */
+      id = id1;
+      while ((tmp = int_hash_lookup(string_dups, id)) > 0)
+       id = tmp;
+      int_hash_store(string_dups, id2, id);
     }
-    EXEC SQL CLOSE csr116;
-    dprintf("found %d duplicates\n", q);
-    int_hash_step(string_dups, print_dup_map, NULL);
-    /* We don't want to delete the duplicates now because if the dbck
-       is cancelled, a LOT of state will be lost. So, we'll just let
-       them not get marked as used and then phase3 will clean them up */
-
-    dprintf("Loading strings...\n");
-    sq = sq_create();
-    strings = create_hash(75000);
-    if(!sq || !strings) out_of_mem("loading strings");
-
-    EXEC SQL DECLARE csr101 CURSOR FOR
-      SELECT string_id, string FROM strings ORDER BY string_id;
-    EXEC SQL OPEN csr101;
-    q=0;
-    while(1) {
-       EXEC SQL FETCH csr101 INTO :id, :buf;
-       if (sqlca.sqlcode != 0) break;
-       q++;
-       s = (struct string *) malloc(sizeof(struct string));
-       if (s == NULL)
-         out_of_mem("storing strings");
-       s->name = strsave(strtrim(buf));
-       s->string_id = id;
-       s->refc = 0;
-       retval = hash_store(strings, id, s);
-       if ( retval == -1 ) {
-         out_of_mem("storing strings in hash table");
-       } else if ( retval == 1 ) { /* duplicate string_id*/
+  EXEC SQL CLOSE csr116;
+  dprintf("found %d duplicates\n", q);
+  int_hash_step(string_dups, print_dup_map, NULL);
+  /* We don't want to delete the duplicates now because if the dbck
+     is cancelled, a LOT of state will be lost. So, we'll just let
+     them not get marked as used and then phase3 will clean them up */
+
+  dprintf("Loading strings...\n");
+  sq = sq_create();
+  strings = create_hash(75000);
+  if (!sq || !strings)
+    out_of_mem("loading strings");
+
+  EXEC SQL DECLARE csr101 CURSOR FOR
+    SELECT string_id, string FROM strings ORDER BY string_id;
+  EXEC SQL OPEN csr101;
+  q = 0;
+  while (1)
+    {
+      EXEC SQL FETCH csr101 INTO :id, :buf;
+      if (sqlca.sqlcode)
+       break;
+      q++;
+      s = malloc(sizeof(struct string));
+      if (!s)
+       out_of_mem("storing strings");
+      s->name = strsave(strtrim(buf));
+      s->string_id = id;
+      s->refc = 0;
+      retval = hash_store(strings, id, s);
+      if (retval == -1)
+       out_of_mem("storing strings in hash table");
+      else if (retval == 1) /* duplicate string_id */
+       {
          sq_save_data(sq, hash_lookup(strings, id));
          sq_save_data(sq, s);
        }
     }
-    EXEC SQL CLOSE csr101;
-    /* I'm not at all convinced this will work, so...
-       generic_delete(sq, show_str_id, "strings", "string_id", 0);
-    */
-    string_check(0);
-
-    printf("Loaded %d strings\n", q);
-
-    dprintf("Loading users...\n");
-    sq = sq_create();
-    users = create_hash(30000);
-    if(!sq || !users) out_of_mem("loading users");
-
-    EXEC SQL DECLARE csr102 CURSOR FOR 
-      SELECT users_id, login, last, first, status, potype, pop_id, box_id,
-         modby, fmodby, pmodby, comments, sigwho FROM users
-       ORDER BY users_id;
-    EXEC SQL OPEN csr102;
-    while(1) {
-       EXEC SQL FETCH csr102 INTO :id, :name, :last, :first, :status,
-            :buf, :id2, :id3, :sid, :sid2, :sid3, :sid4, :sid5;
-       if (sqlca.sqlcode != 0) break;
-
-       u = (struct user *) malloc(sizeof(struct user));
-       if (u == NULL)
-         out_of_mem("storing users");
-       strcpy(u->login, strtrim(name));
-       u->potype = buf[0];
-       sprintf(buf, "%s, %s", strtrim(last), strtrim(first));
-       u->fullname = strsave(buf);
-       u->status = status;
-       u->users_id = id;
-       u->modby = sid;
-       u->fmodby = sid2;
-       u->pmodby = sid3;
-       u->comment = sid4;
-       u->sigwho = sid5;
-       switch (u->potype) {
+  EXEC SQL CLOSE csr101;
+  /* keep string id 0 (the empty string) even if unreferenced */
+  string_check(0);
+
+  printf("Loaded %d strings\n", q);
+
+  dprintf("Loading users...\n");
+  sq = sq_create();
+  users = create_hash(30000);
+  if (!sq || !users)
+    out_of_mem("loading users");
+
+  EXEC SQL DECLARE csr102 CURSOR FOR
+    SELECT users_id, login, last, first, status, potype, pop_id, box_id,
+    modby, fmodby, pmodby, comments, sigwho FROM users
+    ORDER BY users_id;
+  EXEC SQL OPEN csr102;
+  while (1)
+    {
+      EXEC SQL FETCH csr102 INTO :id, :name, :last, :first, :status,
+       :buf, :id2, :id3, :sid, :sid2, :sid3, :sid4, :sid5;
+      if (sqlca.sqlcode)
+       break;
+
+      u = malloc(sizeof(struct user));
+      if (!u)
+       out_of_mem("storing users");
+      strcpy(u->login, strtrim(name));
+      u->potype = buf[0];
+      sprintf(buf, "%s, %s", strtrim(last), strtrim(first));
+      u->fullname = strsave(buf);
+      u->status = status;
+      u->users_id = id;
+      u->modby = sid;
+      u->fmodby = sid2;
+      u->pmodby = sid3;
+      u->comment = sid4;
+      u->sigwho = sid5;
+      switch (u->potype)
+       {
        case 'P':
-           u->pobox_id = id2;
-           break;
+         u->pobox_id = id2;
+         break;
        case 'S':
-           /*  If potype is SMTP, box_id is a string_id for the strings tbl */
-           u->pobox_id = id3;
-           break;
+         /*  If potype is SMTP, box_id is a string_id for the strings tbl */
+         u->pobox_id = id3;
+         break;
        default:
-           u->pobox_id = 0;
+         u->pobox_id = 0;
        }
-       retval = hash_store(users, id, u);
-       if ( retval == -1 ) {
-           out_of_mem("storing users in hash table");
-       } else if ( retval == 1 ) {
-           sq_save_data(sq, hash_lookup(users, id));
-           sq_save_data(sq, u);
+      retval = hash_store(users, id, u);
+      if (retval == -1)
+       out_of_mem("storing users in hash table");
+      else if (retval == 1)
+       {
+         sq_save_data(sq, hash_lookup(users, id));
+         sq_save_data(sq, u);
        }
     }
-    EXEC SQL CLOSE csr102; 
-
-    generic_fix(sq, show_user_id, "Change ID", fix_user_id, 0);
-
-    if (!fast) {
-       sq = sq_create();
-       if(!sq) out_of_mem("finding duplicate logins");
-
-       EXEC SQL DECLARE csr103 CURSOR FOR 
-           SELECT u1.users_id FROM users u1, users u2
-           WHERE u1.login = u2.login and u1.rowid != u2.rowid;
-       EXEC SQL OPEN csr103;
-       while(1) {
-           EXEC SQL FETCH csr103 INTO :id;
-           if (sqlca.sqlcode != 0) break;
-           sq_save_data(sq, hash_lookup(users, id));
+  EXEC SQL CLOSE csr102;
+
+  generic_fix(sq, show_user_id, "Change ID", fix_user_id, 0);
+
+  if (!fast)
+    {
+      sq = sq_create();
+      if (!sq)
+       out_of_mem("finding duplicate logins");
+
+      EXEC SQL DECLARE csr103 CURSOR FOR
+       SELECT u1.users_id FROM users u1, users u2
+       WHERE u1.login = u2.login and u1.rowid != u2.rowid;
+      EXEC SQL OPEN csr103;
+      while (1)
+       {
+         EXEC SQL FETCH csr103 INTO :id;
+         if (sqlca.sqlcode)
+           break;
+         sq_save_data(sq, hash_lookup(users, id));
        }
-       EXEC SQL CLOSE csr103; 
-       handle_duplicate_logins(sq);
+      EXEC SQL CLOSE csr103;
+      handle_duplicate_logins(sq);
     }
 
-    if (!fast) {
-       dprintf("Scanning krbmap...\n");
-
-       EXEC SQL DECLARE csr113 CURSOR FOR
-           SELECT k1.users_id FROM krbmap k1, krbmap k2
-               WHERE k1.users_id = k2.users_id AND k1.rowid != k2.rowid;
-       EXEC SQL OPEN csr113;
-       while(1) {
-           EXEC SQL FETCH csr113 INTO :id;
-           if (sqlca.sqlcode != 0) break;
+  if (!fast)
+    {
+      dprintf("Scanning krbmap...\n");
+
+      EXEC SQL DECLARE csr113 CURSOR FOR
+       SELECT k1.users_id FROM krbmap k1, krbmap k2
+       WHERE k1.users_id = k2.users_id AND k1.rowid != k2.rowid;
+      EXEC SQL OPEN csr113;
+      while (1)
+       {
+         EXEC SQL FETCH csr113 INTO :id;
+         if (sqlca.sqlcode)
+           break;
 
-           printf("User %d is in the krbmap more than once!\n", id);
-           printf("Not fixing this error\n");
+         printf("User %d is in the krbmap more than once!\n", id);
+         printf("Not fixing this error\n");
        }
-       EXEC SQL CLOSE csr113; 
-
-       EXEC SQL DECLARE csr114 CURSOR FOR
-           SELECT k1.string_id FROM krbmap k1, krbmap k2
-               WHERE k1.string_id = k2.string_id AND k1.rowid != k2.rowid;
-       EXEC SQL OPEN csr114;
-       while(1) {
-           EXEC SQL FETCH csr114 INTO :id;
-           if (sqlca.sqlcode != 0) break; 
-
-           printf("Principal %d is in the krbmap more than once!\n", id);
-           printf("Not fixing this error\n");
+      EXEC SQL CLOSE csr113;
+
+      EXEC SQL DECLARE csr114 CURSOR FOR
+       SELECT k1.string_id FROM krbmap k1, krbmap k2
+       WHERE k1.string_id = k2.string_id AND k1.rowid != k2.rowid;
+      EXEC SQL OPEN csr114;
+      while (1)
+       {
+         EXEC SQL FETCH csr114 INTO :id;
+         if (sqlca.sqlcode)
+           break;
+
+         printf("Principal %d is in the krbmap more than once!\n", id);
+         printf("Not fixing this error\n");
        }
-       EXEC SQL CLOSE csr114; 
+      EXEC SQL CLOSE csr114;
     }
 
-    dprintf("Loading machines...\n");
-    sq = sq_create();
-    machines = create_hash(20000);
-    if(!sq || !machines) out_of_mem("loading machines");
-
-    EXEC SQL DECLARE csr104 CURSOR FOR
-       SELECT mach_id, name, snet_id, owner_type, owner_id,
-               acomment, ocomment, creator, modby
-       FROM machine ORDER BY mach_id;
-    EXEC SQL OPEN csr104;
-    while(1) {
-       EXEC SQL FETCH csr104 INTO :id, :name, :id2, :buf, :id3, :sid2,
-               :sid3, :sid4, :sid;
-       if (sqlca.sqlcode != 0) break; 
-
-       m = (struct machine *) malloc(sizeof(struct machine));
-       if (m == NULL)
-         out_of_mem("storing machines");
-       strcpy(m->name, strtrim(name));
-       m->owner_type = buf[0];
-       m->owner_id = id3;
-       m->snet_id = id2;
-       m->mach_id = id;
-       m->clucount = 0;
-       m->acomment=sid2;
-       m->ocomment=sid3;
-       m->creator=sid4;
-       m->modby=sid;
-       retval = hash_store(machines, id, m);
-       if ( retval == -1 ) {
-           out_of_mem("storing machines in hash table");
-       } else if ( retval == 1 ) {
-           sq_save_data(sq, hash_lookup(machines, id));
-           sq_save_data(sq, m);
+  dprintf("Loading machines...\n");
+  sq = sq_create();
+  machines = create_hash(20000);
+  if (!sq || !machines)
+    out_of_mem("loading machines");
+
+  EXEC SQL DECLARE csr104 CURSOR FOR
+    SELECT mach_id, name, snet_id, owner_type, owner_id,
+    acomment, ocomment, creator, modby
+    FROM machine ORDER BY mach_id;
+  EXEC SQL OPEN csr104;
+  while (1)
+    {
+      EXEC SQL FETCH csr104 INTO :id, :name, :id2, :buf, :id3, :sid2,
+       :sid3, :sid4, :sid;
+      if (sqlca.sqlcode)
+       break;
+
+      m = malloc(sizeof(struct machine));
+      if (!m)
+       out_of_mem("storing machines");
+      strcpy(m->name, strtrim(name));
+      m->owner_type = buf[0];
+      m->owner_id = id3;
+      m->snet_id = id2;
+      m->mach_id = id;
+      m->clucount = 0;
+      m->acomment = sid2;
+      m->ocomment = sid3;
+      m->creator = sid4;
+      m->modby = sid;
+      retval = hash_store(machines, id, m);
+      if (retval == -1)
+       out_of_mem("storing machines in hash table");
+      else if (retval == 1)
+       {
+         sq_save_data(sq, hash_lookup(machines, id));
+         sq_save_data(sq, m);
        }
     }
-    EXEC SQL CLOSE csr104; 
-    generic_fix(sq, show_mach_id, "Change ID", fix_mach_id, 0);
-
-    if (!fast) {
-       sq = sq_create();
-       if(!sq) out_of_mem("looking for duplicate machine names");
-
-       EXEC SQL DECLARE csr105 CURSOR FOR
-           SELECT m1.mach_id FROM machine m1, machine m2
-               WHERE m1.name = m2.name AND m1.rowid != m2.rowid;
-       EXEC SQL OPEN csr105;
-       while(1) {
-           EXEC SQL FETCH csr105 INTO :id;
-           if (sqlca.sqlcode != 0) break; 
-
-           sq_save_data(sq, hash_lookup(machines, id));
+  EXEC SQL CLOSE csr104;
+  generic_fix(sq, show_mach_id, "Change ID", fix_mach_id, 0);
+
+  if (!fast)
+    {
+      sq = sq_create();
+      if (!sq)
+       out_of_mem("looking for duplicate machine names");
+
+      EXEC SQL DECLARE csr105 CURSOR FOR
+       SELECT m1.mach_id FROM machine m1, machine m2
+       WHERE m1.name = m2.name AND m1.rowid != m2.rowid;
+      EXEC SQL OPEN csr105;
+      while (1)
+       {
+         EXEC SQL FETCH csr105 INTO :id;
+         if (sqlca.sqlcode)
+           break;
+
+         sq_save_data(sq, hash_lookup(machines, id));
        }
-       EXEC SQL CLOSE csr105; 
-       generic_fix(sq, show_mach_name, "Change name", cant_fix, 0);
-
-       EXEC SQL DECLARE csr_hal1 CURSOR FOR
-         SELECT h1.name, m1.mach_id, m2.mach_id
-         FROM hostalias h1, machine m1, hostalias h2, machine m2
-         WHERE h1.name=h2.name AND h1.mach_id!=h2.mach_id
-         AND m1.mach_id=h1.mach_id AND m2.mach_id=h2.mach_id;
-       EXEC SQL OPEN csr_hal1;
-       while(1) {
+      EXEC SQL CLOSE csr105;
+      generic_fix(sq, show_mach_name, "Change name", cant_fix, 0);
+
+      EXEC SQL DECLARE csr_hal1 CURSOR FOR
+       SELECT h1.name, m1.mach_id, m2.mach_id
+       FROM hostalias h1, machine m1, hostalias h2, machine m2
+       WHERE h1.name = h2.name AND h1.mach_id != h2.mach_id
+       AND m1.mach_id = h1.mach_id AND m2.mach_id = h2.mach_id;
+      EXEC SQL OPEN csr_hal1;
+      while (1)
+       {
          EXEC SQL FETCH csr_hal1 INTO :name, :id1, :id2;
-         if(sqlca.sqlcode!=0) break;
+         if (sqlca.sqlcode)
+           break;
          printf("Aliases for machines %d and %d have duplicate name %s\n",
                 id1, id2, strtrim(name));
          cant_fix(0);
        }
-       EXEC SQL CLOSE csr_hal1;
-
-       EXEC SQL DECLARE csr_hal2 CURSOR FOR
-         SELECT h1.name, m1.mach_id, m2.mach_id
-         FROM hostalias h1, machine m1, machine m2
-         WHERE h1.name=m1.name AND h1.mach_id=m2.mach_id;
-       EXEC SQL OPEN csr_hal2;
-       while(1) {
-         EXEC SQL FETCH csr_hal2 INTO :name, :id1, :id2;
-         if(sqlca.sqlcode!=0) break;
-         printf("Machine %d has alias `%s' that conflicts with machine %d\n",
-                id2, strtrim(name), id1);
-         cant_fix(0);
-       }
-       EXEC SQL CLOSE csr_hal2;
-    }  
-
-    dprintf("Loading subnets...\n");
-    subnets = create_hash(254);
-    if(!subnets) out_of_mem("loading subnets");
-
-    EXEC SQL DECLARE csr115 CURSOR FOR
-      SELECT snet_id, name, owner_type, owner_id, modby from subnet;
-    EXEC SQL OPEN csr115;
-    while(1) {
-       EXEC SQL FETCH csr115 INTO :id, :name, :buf, :id2, :sid;
-       if (sqlca.sqlcode != 0) break;
-
-       sn = (struct subnet *) malloc(sizeof(struct machine));
-       if (sn == NULL)
-         out_of_mem("storing subnets");
-       strcpy(sn->name, strtrim(name));
-       sn->owner_type=buf[0];
-       sn->owner_id = id2;
-       sn->snet_id = id;
-       sn->modby = sid;
-       retval = hash_store(subnets, id, sn);
-       if ( retval == -1 ) {
-           out_of_mem("storing subnets in hash table");
-       } else if ( retval == 1 ) {
-           printf("Duplicate subnet ID: %d (%s)\n", id, name);
-           /* should add code to delete */
+      EXEC SQL CLOSE csr_hal1;
+
+      EXEC SQL DECLARE csr_hal2 CURSOR FOR
+       SELECT h1.name, m1.mach_id, m2.mach_id
+       FROM hostalias h1, machine m1, machine m2
+       WHERE h1.name = m1.name AND h1.mach_id = m2.mach_id;
+      EXEC SQL OPEN csr_hal2;
+       while (1)
+         {
+           EXEC SQL FETCH csr_hal2 INTO :name, :id1, :id2;
+           if (sqlca.sqlcode)
+             break;
+           printf("Machine %d has alias %s that conflicts with machine %d\n",
+                  id2, strtrim(name), id1);
            cant_fix(0);
-       }
+         }
+       EXEC SQL CLOSE csr_hal2;
     }
-    EXEC SQL CLOSE csr115;
-
-    if (!fast) {
-       sq = sq_create();
-       if(!sq) out_of_mem("looking for duplicate subnet names");
 
-       EXEC SQL DECLARE csr117 CURSOR FOR
-           SELECT s1.snet_id FROM subnet s1, subnet s2
-               WHERE s1.name = s2.name AND s1.rowid != s2.rowid;
-       EXEC SQL OPEN csr117;
-       while(1) {
-           EXEC SQL FETCH csr117 INTO :id;
-           if (sqlca.sqlcode != 0) break; 
+  dprintf("Loading subnets...\n");
+  subnets = create_hash(254);
+  if (!subnets)
+    out_of_mem("loading subnets");
+
+  EXEC SQL DECLARE csr115 CURSOR FOR
+    SELECT snet_id, name, owner_type, owner_id, modby from subnet;
+  EXEC SQL OPEN csr115;
+  while (1)
+    {
+      EXEC SQL FETCH csr115 INTO :id, :name, :buf, :id2, :sid;
+      if (sqlca.sqlcode)
+       break;
+
+      sn = malloc(sizeof(struct machine));
+      if (!sn)
+       out_of_mem("storing subnets");
+      strcpy(sn->name, strtrim(name));
+      sn->owner_type = buf[0];
+      sn->owner_id = id2;
+      sn->snet_id = id;
+      sn->modby = sid;
+      retval = hash_store(subnets, id, sn);
+      if (retval == -1)
+       out_of_mem("storing subnets in hash table");
+      else if (retval == 1)
+       {
+         printf("Duplicate subnet ID: %d (%s)\n", id, name);
+         /* should add code to delete */
+         cant_fix(0);
+       }
+    }
+  EXEC SQL CLOSE csr115;
+
+  if (!fast)
+    {
+      sq = sq_create();
+      if (!sq)
+       out_of_mem("looking for duplicate subnet names");
+
+      EXEC SQL DECLARE csr117 CURSOR FOR
+       SELECT s1.snet_id FROM subnet s1, subnet s2
+       WHERE s1.name = s2.name AND s1.rowid != s2.rowid;
+      EXEC SQL OPEN csr117;
+      while (1)
+       {
+         EXEC SQL FETCH csr117 INTO :id;
+         if (sqlca.sqlcode)
+           break;
 
-           sq_save_data(sq, hash_lookup(subnets, id));
+         sq_save_data(sq, hash_lookup(subnets, id));
        }
-       EXEC SQL CLOSE csr117;
-       generic_fix(sq, show_snet_name, "Change name", cant_fix, 0);
+      EXEC SQL CLOSE csr117;
+      generic_fix(sq, show_snet_name, "Change name", cant_fix, 0);
     }
-    
-    dprintf("Loading clusters...\n");
-    sq = sq_create();
-    clusters = create_hash(100);
-    if(!sq || !clusters) out_of_mem("loading clusters");
-
-    EXEC SQL DECLARE csr106 CURSOR FOR
-       SELECT clu_id, name, modby FROM clusters;
-    EXEC SQL OPEN csr106;
-    while(1) {
-       EXEC SQL FETCH csr106 INTO :id, :name, :sid;
-       if (sqlca.sqlcode != 0) break; 
-
-       c = (struct cluster *) malloc(sizeof(struct cluster));
-       if (c == NULL)
-         out_of_mem("storing clusters");
-       strcpy(c->name, strtrim(name));
-       c->clu_id = id;
-       c->modby = sid;
-       retval = hash_store(clusters, id, c);
-       if ( retval == -1 ) {
-           out_of_mem("storing clusters in hash table");
-       } else if ( retval == 1 ) {
-           sq_save_data(sq, hash_lookup(clusters, id));
-           sq_save_data(sq, c);
+
+  dprintf("Loading clusters...\n");
+  sq = sq_create();
+  clusters = create_hash(100);
+  if (!sq || !clusters)
+    out_of_mem("loading clusters");
+
+  EXEC SQL DECLARE csr106 CURSOR FOR
+    SELECT clu_id, name, modby FROM clusters;
+  EXEC SQL OPEN csr106;
+  while (1)
+    {
+      EXEC SQL FETCH csr106 INTO :id, :name, :sid;
+      if (sqlca.sqlcode)
+       break;
+
+      c = malloc(sizeof(struct cluster));
+      if (!c)
+       out_of_mem("storing clusters");
+      strcpy(c->name, strtrim(name));
+      c->clu_id = id;
+      c->modby = sid;
+      retval = hash_store(clusters, id, c);
+      if (retval == -1)
+       out_of_mem("storing clusters in hash table");
+      else if (retval == 1)
+       {
+         sq_save_data(sq, hash_lookup(clusters, id));
+         sq_save_data(sq, c);
        }
     }
-    EXEC SQL CLOSE csr106; 
-    generic_fix(sq, show_clu_id, "Change ID", fix_clu_id, 0);
-
-    if (!fast) {
-       sq = sq_create();
-       if(!sq) out_of_mem("looking for duplicate cluster names");
-
-       EXEC SQL DECLARE csr107 CURSOR FOR
-           SELECT c1.clu_id FROM clusters c1, clusters c2
-               WHERE c1.name=c2.name AND c1.rowid != c2.rowid;
-       EXEC SQL OPEN csr107;
-       while(1) {
-           EXEC SQL FETCH csr107 INTO :id;
-           if (sqlca.sqlcode != 0) break; 
-
-           sq_save_data(sq, hash_lookup(clusters, id));
+  EXEC SQL CLOSE csr106;
+  generic_fix(sq, show_clu_id, "Change ID", fix_clu_id, 0);
+
+  if (!fast)
+    {
+      sq = sq_create();
+      if (!sq)
+       out_of_mem("looking for duplicate cluster names");
+
+      EXEC SQL DECLARE csr107 CURSOR FOR
+       SELECT c1.clu_id FROM clusters c1, clusters c2
+       WHERE c1.name = c2.name AND c1.rowid != c2.rowid;
+      EXEC SQL OPEN csr107;
+      while (1)
+       {
+         EXEC SQL FETCH csr107 INTO :id;
+         if (sqlca.sqlcode)
+           break;
+
+         sq_save_data(sq, hash_lookup(clusters, id));
        }
-       EXEC SQL CLOSE csr107; 
-       generic_fix(sq, show_clu_name, "Change name", cant_fix, 0);
+      EXEC SQL CLOSE csr107;
+      generic_fix(sq, show_clu_name, "Change name", cant_fix, 0);
     }
 
-    dprintf("Loading lists...\n");
-    sq = sq_create();
-    lists = create_hash(50000);
-    if(!sq || !lists) out_of_mem("loading lists");
-
-    EXEC SQL DECLARE csr108 CURSOR FOR
-       SELECT list_id, name, acl_id, acl_type, modby  FROM list 
-       ORDER BY list_id;
-    EXEC SQL OPEN csr108;
-    while(1) {
-       EXEC SQL FETCH csr108 INTO :id, :name, :aid, :buf, :sid;
-       if (sqlca.sqlcode != 0) break;
-       l = (struct list *) malloc(sizeof(struct list));
-       if (l == NULL)
-         out_of_mem("storing lists");
-       strcpy(l->name, strtrim(name));
-       l->acl_type = buf[0];
-       l->acl_id = aid;
-       l->list_id = id;
-       l->members = 0;
-       retval = hash_store(lists, id, l);
-       if ( retval == -1 ) {
-           out_of_mem("storing lists in hash table");
-       } else if ( retval == 1 ) {
-           sq_save_data(sq, hash_lookup(lists, id));
-           sq_save_data(sq, l);
+  dprintf("Loading lists...\n");
+  sq = sq_create();
+  lists = create_hash(50000);
+  if (!sq || !lists)
+    out_of_mem("loading lists");
+
+  EXEC SQL DECLARE csr108 CURSOR FOR
+    SELECT list_id, name, acl_id, acl_type, modby  FROM list
+    ORDER BY list_id;
+  EXEC SQL OPEN csr108;
+  while (1)
+    {
+      EXEC SQL FETCH csr108 INTO :id, :name, :aid, :buf, :sid;
+      if (sqlca.sqlcode)
+       break;
+      l = malloc(sizeof(struct list));
+      if (!l)
+       out_of_mem("storing lists");
+      strcpy(l->name, strtrim(name));
+      l->acl_type = buf[0];
+      l->acl_id = aid;
+      l->list_id = id;
+      l->members = 0;
+      retval = hash_store(lists, id, l);
+      if (retval == -1)
+       out_of_mem("storing lists in hash table");
+      else if (retval == 1)
+       {
+         sq_save_data(sq, hash_lookup(lists, id));
+         sq_save_data(sq, l);
        }
     }
-    EXEC SQL CLOSE csr108; 
-    generic_fix(sq, show_list_id, "Change ID", fix_list_id, 0);
-
-    if (!fast) {
-       sq = sq_create();
-       if(!sq) out_of_mem("looking for duplicate list names");
-
-       EXEC SQL DECLARE csr109 CURSOR FOR
-           SELECT l1.list_id FROM list l1, list l2
-               WHERE l1.name=l2.name AND l1.rowid != l2.rowid;
-       EXEC SQL OPEN csr109;
-       while(1) {
-           EXEC SQL FETCH csr109 INTO :id;
-           if (sqlca.sqlcode != 0) break; 
-           
-           sq_save_data(sq, hash_lookup(lists, id));
+  EXEC SQL CLOSE csr108;
+  generic_fix(sq, show_list_id, "Change ID", fix_list_id, 0);
+
+  if (!fast)
+    {
+      sq = sq_create();
+      if (!sq)
+       out_of_mem("looking for duplicate list names");
+
+      EXEC SQL DECLARE csr109 CURSOR FOR
+       SELECT l1.list_id FROM list l1, list l2
+       WHERE l1.name = l2.name AND l1.rowid != l2.rowid;
+      EXEC SQL OPEN csr109;
+      while (1)
+       {
+         EXEC SQL FETCH csr109 INTO :id;
+         if (sqlca.sqlcode)
+           break;
+
+         sq_save_data(sq, hash_lookup(lists, id));
        }
-       EXEC SQL CLOSE csr109;
-       generic_fix(sq, show_list_name, "Change name", cant_fix, 0);
+      EXEC SQL CLOSE csr109;
+      generic_fix(sq, show_list_name, "Change name", cant_fix, 0);
     }
 
-    dprintf("Loading filesys...\n");
-    sq = sq_create();
-    filesys = create_hash(30000);
-    if(!sq || !filesys) out_of_mem("loading filesys");
-
-    EXEC SQL DECLARE csr110 CURSOR FOR
-       SELECT filsys_id, label, owner, owners, phys_id, mach_id,
-               type, name, modby FROM filesys ORDER BY filsys_id;
-    EXEC SQL OPEN csr110;
-    while(1) {
-       EXEC SQL FETCH csr110 INTO :id, :name, :aid, :aid2, :id2, :id3, 
-           :buf, :name1, :sid;
-       if (sqlca.sqlcode != 0) break;
-
-       f = (struct filesys *) malloc(sizeof(struct filesys));
-       if (f == NULL)
-         out_of_mem("storing filesystems");
-       strcpy(f->name, strtrim(name));
-       strcpy(f->dir, strtrim(name1));
-       f->filsys_id = id;
-       f->owner = aid;
-       f->owners = aid2;
-       f->phys_id = id2;
-       f->mach_id = id3;
-       f->type = buf[0];
-       retval = hash_store(filesys, id, f);
-       if ( retval == -1 ) {
-           out_of_mem("storing filesys in hash table");
-       } else if ( retval == 1 ) {
-           sq_save_data(sq, hash_lookup(filesys, id));
-           sq_save_data(sq, f);
+  dprintf("Loading filesys...\n");
+  sq = sq_create();
+  filesys = create_hash(30000);
+  if (!sq || !filesys)
+    out_of_mem("loading filesys");
+
+  EXEC SQL DECLARE csr110 CURSOR FOR
+    SELECT filsys_id, label, owner, owners, phys_id, mach_id,
+    type, name, modby FROM filesys ORDER BY filsys_id;
+  EXEC SQL OPEN csr110;
+  while (1)
+    {
+      EXEC SQL FETCH csr110 INTO :id, :name, :aid, :aid2, :id2, :id3,
+       :buf, :name1, :sid;
+      if (sqlca.sqlcode)
+       break;
+
+      f = malloc(sizeof(struct filesys));
+      if (!f)
+       out_of_mem("storing filesystems");
+      strcpy(f->name, strtrim(name));
+      strcpy(f->dir, strtrim(name1));
+      f->filsys_id = id;
+      f->owner = aid;
+      f->owners = aid2;
+      f->phys_id = id2;
+      f->mach_id = id3;
+      f->type = buf[0];
+      retval = hash_store(filesys, id, f);
+      if (retval == -1)
+       out_of_mem("storing filesys in hash table");
+      else if (retval == 1)
+       {
+         sq_save_data(sq, hash_lookup(filesys, id));
+         sq_save_data(sq, f);
        }
     }
-    EXEC SQL CLOSE csr110;
-
-    generic_fix(sq, show_fs_id, "Change ID", fix_fs_id, 0);
-
-    if (!fast) {
-       sq = sq_create();
-       if(!sq) out_of_mem("looking for duplicate filesys names");
-
-       EXEC SQL DECLARE csr118 CURSOR FOR
-           SELECT fs1.filsys_id FROM filesys fs1, filesys fs2
-               WHERE fs1.label=fs2.label AND fs1.rowid != fs2.rowid;
-       EXEC SQL OPEN csr118;
-       while(1) {
-           EXEC SQL FETCH csr118 INTO :id;
-           if (sqlca.sqlcode != 0) break; 
-           
-           sq_save_data(sq, hash_lookup(filesys, id));
+  EXEC SQL CLOSE csr110;
+
+  generic_fix(sq, show_fs_id, "Change ID", fix_fs_id, 0);
+
+  if (!fast)
+    {
+      sq = sq_create();
+      if (!sq)
+       out_of_mem("looking for duplicate filesys names");
+
+      EXEC SQL DECLARE csr118 CURSOR FOR
+       SELECT fs1.filsys_id FROM filesys fs1, filesys fs2
+       WHERE fs1.label = fs2.label AND fs1.rowid != fs2.rowid;
+      EXEC SQL OPEN csr118;
+      while (1)
+       {
+         EXEC SQL FETCH csr118 INTO :id;
+         if (sqlca.sqlcode)
+           break;
+
+         sq_save_data(sq, hash_lookup(filesys, id));
        }
-       EXEC SQL CLOSE csr118;
-       generic_fix(sq, show_fs_name, "Change name", cant_fix, 0);
+      EXEC SQL CLOSE csr118;
+      generic_fix(sq, show_fs_name, "Change name", cant_fix, 0);
     }
 
-    dprintf("Loading nfsphys...\n");
-    sq = sq_create();
-    nfsphys = create_hash(500);
-    if(!sq || !nfsphys) out_of_mem("loading nfsphs");
-
-    EXEC SQL DECLARE csr111 CURSOR FOR
-       SELECT nfsphys_id, dir, mach_id, allocated, modby FROM nfsphys;
-    EXEC SQL OPEN csr111;
-    while(1) {
-       EXEC SQL FETCH csr111 INTO :id, :name, :id2, :id3, :sid;
-       if (sqlca.sqlcode != 0) break; 
-       
-       n = (struct nfsphys *) malloc(sizeof(struct nfsphys));
-       if (n == NULL)
-         out_of_mem("storing nfsphys");
-       strcpy(n->dir, strtrim(name));
-       n->mach_id = id2;
-       n->nfsphys_id = id;
-       n->allocated = id3;
-       n->count = 0;
-       retval = hash_store(nfsphys, id, n);
-       if ( retval == -1 ) {
-           out_of_mem("storing nfsphys in hash table");
-       } else if ( retval == 1 ) {
-           sq_save_data(sq, hash_lookup(nfsphys, id));
-           sq_save_data(sq, n);
+  dprintf("Loading nfsphys...\n");
+  sq = sq_create();
+  nfsphys = create_hash(500);
+  if (!sq || !nfsphys)
+    out_of_mem("loading nfsphs");
+
+  EXEC SQL DECLARE csr111 CURSOR FOR
+    SELECT nfsphys_id, dir, mach_id, allocated, modby FROM nfsphys;
+  EXEC SQL OPEN csr111;
+  while (1)
+    {
+      EXEC SQL FETCH csr111 INTO :id, :name, :id2, :id3, :sid;
+      if (sqlca.sqlcode)
+       break;
+
+      n = malloc(sizeof(struct nfsphys));
+      if (!n)
+       out_of_mem("storing nfsphys");
+      strcpy(n->dir, strtrim(name));
+      n->mach_id = id2;
+      n->nfsphys_id = id;
+      n->allocated = id3;
+      n->count = 0;
+      retval = hash_store(nfsphys, id, n);
+      if (retval == -1)
+       out_of_mem("storing nfsphys in hash table");
+      else if (retval == 1)
+       {
+         sq_save_data(sq, hash_lookup(nfsphys, id));
+         sq_save_data(sq, n);
        }
     }
-    EXEC SQL CLOSE csr111;
+  EXEC SQL CLOSE csr111;
 
-    generic_fix(sq, show_np_id, "Change ID", fix_np_id, 0);
+  generic_fix(sq, show_np_id, "Change ID", fix_np_id, 0);
 
-    dprintf("Checking printcap...\n");
+  dprintf("Checking printcap...\n");
 
-    EXEC SQL DECLARE csr119 CURSOR FOR
-       SELECT p1.name FROM printcap p1, printcap p2
-       WHERE p1.name=p2.name AND p1.rowid<p2.rowid;
-    EXEC SQL OPEN csr119;
-    while(1) {
-       EXEC SQL FETCH csr119 INTO :name;
-       if (sqlca.sqlcode != 0) break;
+  EXEC SQL DECLARE csr119 CURSOR FOR
+    SELECT p1.name FROM printcap p1, printcap p2
+    WHERE p1.name = p2.name AND p1.rowid < p2.rowid;
+  EXEC SQL OPEN csr119;
+  while (1)
+    {
+      EXEC SQL FETCH csr119 INTO :name;
+      if (sqlca.sqlcode)
+       break;
 
-       printf("Printer %s has duplicate name\n", name);
-       cant_fix(0);
+      printf("Printer %s has duplicate name\n", name);
+      cant_fix(0);
     }
-    EXEC SQL CLOSE csr119;
+  EXEC SQL CLOSE csr119;
 }
This page took 0.081346 seconds and 4 git commands to generate.