Main Page   Compound List   File List   Compound Members   File Members  

zsig-random.vtc

00001 /* -*- C -*-
00002  * zsig-random.vtc: Produce random Zephyr signatures
00003  * $Id$
00004  */
00005 
00006 defzsigfile ?:= getenv("HOME") + "/Private/zsigs-vt";
00007 
00008 func chomp(s) [l] {
00009     l = strlen(s) - 1;
00010     if (s[l] == '\n')
00011         s[l] = '\0';
00012     return s;
00013 }
00014 
00015 func Load_zsigs(sigfile) [file, line] {
00016     if (!sigfile || !strlen(sigfile))
00017         sigfile = defsigfile;
00018     else if (sigfile[0] == '~' && sigfile[1] == '/')
00019         sigfile = getenv("HOME") + "/" + (sigfile + 2);
00020 
00021     if (!(file = fopen(sigfile, "r"))) {
00022         output(errmsg);
00023         return 1;
00024     }
00025 
00026     if (!zsigs) {
00027         zsigs = alloc(5);
00028     }
00029     numzsigs = 0;
00030     zsigs[0] = "";
00031     while (line = fread(file)) {
00032         line = chomp(line);
00033         zsigs[numzsigs++] = line;
00034     }
00035     fclose(file);
00036     return 0;
00037 }
00038 
00039 func random_zsig()
00040 {
00041   return zsigs[rnd % numzsigs];
00042 }
00043 
00044 add_cmd("load_zsigs", -1, .Load_zsigs, "/load_zsigs <filename>");
00045 

Generated at Mon Aug 13 16:45:52 2001 for dzm-vtc by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001