2 * tools.c -- Miscellaneous routines
10 char *safestrncpy(char *dest, const char *src, size_t n)
12 if (dest == NULL || src == NULL) {
13 fprintf(stderr, "safestrncpy: NULL argument\n");
16 strncpy(dest, src, n);
23 * num_parms() - discover number of parameters...
25 int num_parms(char *source)
30 for (a = 0; a < strlen(source); ++a)
37 * extract() - extract a parameter from a series of "|" separated...
39 void extract(char *dest, char *source, int parmnum)
45 if (strlen(source) == 0) {
49 n = num_parms(source);
56 if ((parmnum == 0) && (n == 1)) {
58 for (n = 0; n < strlen(dest); ++n)
63 while (count++ < parmnum)
66 } while ((strlen(buf) > 0) && (buf[0] != '|'));
69 for (count = 0; count < strlen(buf); ++count)
70 if (buf[count] == '|')
76 * extract_int() - extract an int parm w/o supplying a buffer
78 int extract_int(char *source, int parmnum)
82 extract(buf, source, parmnum);
87 * extract_long() - extract an long parm w/o supplying a buffer
89 long extract_long(char *source, long int parmnum)
93 extract(buf, source, parmnum);
99 * check for the presence of a character within a string (returns count)
107 for (a = 0; a < strlen(st); ++a)