]> andersk Git - moira.git/blobdiff - gen/hosts.dc
Send zgrams if the disk usage is over 90% or the quota change, if used, would bring...
[moira.git] / gen / hosts.dc
index 207d35905b5a501cc2a1fe2f2777af7302ea42a9..8119f6e3e99e3e9dae1a511b7bf8019cd0e7d616 100644 (file)
@@ -69,7 +69,13 @@ char **argv;
     EXEC SQL WHENEVER SQLERROR GOTO sqlerr;
 
     gettimeofday(&now, NULL);
-    fprintf(out, "; Host table generated %s;\n", ctime(&now.tv_sec));
+    
+    fprintf(out, "; MIT Network Host Table\n;\n");
+    fprintf(out, "; \t%cAuthor: $\n", '$');
+    fprintf(out, "; \t%cDate: $\n", '$');
+    fprintf(out, "; \t%cRevision: $\n;\n", '$');
+    fprintf(out, "; Host table generated by Moira at %s;\n",
+           ctime(&now.tv_sec));
 
     EXEC SQL DECLARE y CURSOR FOR SELECT
       mach_id, name FROM hostalias;
@@ -104,7 +110,6 @@ char **argv;
        if (id == 0) continue;
        if (*strtrim(name) == 0) continue;
        if ((i = strlen(name)) < 9 || strcmp(&name[i-8], ".MIT.EDU")) {
-           fprintf(stderr, "Name %s not in MIT domain\n", name);
            continue;
        } else {
            name[i-8] = 0;
@@ -113,17 +118,20 @@ char **argv;
        strtrim(model);
        strtrim(os);
        strtrim(addr);
-       if (*addr == 0)
+       if (*addr == 0 || inet_addr(addr) == -1)
          continue;
        if (p = hash_lookup(aliases, id))
          sprintf(buf, "%s,%s", name, p);
        else
          strcpy(buf, name);
        fprintf(out, "HOST : %s : %s : ", addr, buf);
-       if (*vendor && *model)
-         fprintf(out, "%s/%s : %s :\n", vendor, model, os);
-       else
-         fprintf(out, "%s%s : %s :\n", vendor, model, os);
+       if ((*vendor || *model) && *os) {
+           if (*vendor && *model)
+             fprintf(out, "%s/%s : %s :\n", vendor, model, os);
+           else
+             fprintf(out, "%s%s : %s :\n", vendor, model, os);
+       } else
+         fputs("\n", out);
     }
 
     EXEC SQL CLOSE x;
This page took 0.044592 seconds and 4 git commands to generate.