char buf[1024], *p;
FILE *fp, *randomp;
size_t len;
+ char *server_tmp;
+ server_tmp = (options->server ? options->server : options->hostname);
if (strcmp(opt, "auto") == 0) {
goto server_signature_auto; /* default */
} else if (strcmp(opt, "host") == 0) {
if ((servername_conf = strtok( p, " \t" )) == NULL)
continue; /* syntax error: invalid servername */
}
- p = index(p, '\0');
+ p = strchr(p, '\0');
p++;
if (*p == '\0')
continue; /* syntax error: missing signature */
- if (strcmp(options->server, servername_conf))
+ if (strcmp(server_tmp, servername_conf))
continue; /* another servername */
while (p && isblank(*p))
}
LOG(log_note, logtype_afpd,
"generate %s's signature %02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X from /dev/urandom",
- options->server,
+ server_tmp,
(options->signature)[ 0], (options->signature)[ 1],
(options->signature)[ 2], (options->signature)[ 3],
(options->signature)[ 4], (options->signature)[ 5],
(options->signature)[14], (options->signature)[15]);
} else { /* genarate from random() because cannot open /dev/urandom */
- srandom((unsigned int)time(NULL) + (unsigned int)options + (unsigned int)options->server);
+ srandom((unsigned int)time(NULL) + (unsigned int)options + (unsigned int)server_tmp);
for (i=0 ; i<16 ; i++) {
(options->signature)[i] = random() & 0xFF;
}
LOG(log_note, logtype_afpd,
"generate %s's signature %02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X from random()",
- options->server,
+ server_tmp,
(options->signature)[ 0], (options->signature)[ 1],
(options->signature)[ 2], (options->signature)[ 3],
(options->signature)[ 4], (options->signature)[ 5],
}
if (fp) {
- fprintf(fp, "\"%s\"\t", options->server);
+ fprintf(fp, "\"%s\"\t", server_tmp);
for (i=0 ; i<16 ; i++) {
fprintf(fp, "%02X", (options->signature)[i]);
}
/* retrun */
LOG(log_info, logtype_afpd,
" \"%s\"'s signature is %02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X",
- options->server,
+ server_tmp,
(options->signature)[ 0], (options->signature)[ 1],
(options->signature)[ 2], (options->signature)[ 3],
(options->signature)[ 4], (options->signature)[ 5],