3 * Utility program to generate magic words for a given ID
5 * Copyright (C) 1998 by the Massachusetts Institute of Technology
6 * For copying and distribution information, please see the file
11 #include <mit-copyright.h>
13 #include <moira_schema.h>
19 EXEC SQL INCLUDE sqlca;
23 int main(int argc, char **argv)
28 if (argc > 1 && !strcmp(argv[1], "-v"))
37 fprintf(stderr, "Usage: genwords [-v] id\n");
43 fprintf(stderr, "Couldn't read hmac key\n");
47 getwordlist(argv[1], words);
50 EXEC SQL BEGIN DECLARE SECTION;
51 char first[USERS_FIRST_SIZE], middle[USERS_MIDDLE_SIZE];
52 char last[USERS_LAST_SIZE], *id, *database = "moira";
53 EXEC SQL END DECLARE SECTION;
55 EXEC SQL CONNECT :database IDENTIFIED BY :database;
58 EXEC SQL SELECT first, middle, last INTO :first, :middle, :last
59 FROM users WHERE clearid = :id;
62 sprintf(first, "%d", sqlca.sqlcode);
63 *middle = *last = '\0';
72 printf("(%s%s%s %s) (%s) (%s) (%s) (%s) (%s) (%s) (%s) dopage\n",
73 first, *middle ? " " : "", middle, last, id,
74 words[0], words[1], words[2], words[3], words[4], words[5]);
78 printf("%s %s %s %s %s %s\n", words[0], words[1], words[2],
79 words[3], words[4], words[5]);
84 void *xmalloc(size_t size)
86 /* we won't run out of memory here */