Fix a wrong open() if no motd is specified.

This commit is contained in:
Jan Vidar Krey 2009-11-18 17:28:36 +01:00
parent 00995a1946
commit 828c19cfc6
1 changed files with 7 additions and 11 deletions

View File

@ -654,7 +654,7 @@ void hub_set_variables(struct hub_info* hub, struct acl_handle* acl)
/* (Re-)read the message of the day */ /* (Re-)read the message of the day */
hub->command_motd = 0; hub->command_motd = 0;
fd = open(hub->config->file_motd, 0); fd = (hub->config->file_motd && *hub->config->file_motd) ? open(hub->config->file_motd, 0) : -1;
if (fd != -1) if (fd != -1)
{ {
ret = read(fd, buf, MAX_RECV_BUF); ret = read(fd, buf, MAX_RECV_BUF);
@ -663,12 +663,8 @@ void hub_set_variables(struct hub_info* hub, struct acl_handle* acl)
buf[ret] = 0; buf[ret] = 0;
tmp = adc_msg_escape(buf); tmp = adc_msg_escape(buf);
hub->command_motd = adc_msg_construct(ADC_CMD_IMSG, 6 + strlen(tmp)); hub->command_motd = adc_msg_construct(ADC_CMD_IMSG, 6 + strlen(tmp));
adc_msg_add_argument(hub->command_motd, tmp); adc_msg_add_argument(hub->command_motd, tmp);
hub_free(tmp); hub_free(tmp);
}
else
{
} }
close(fd); close(fd);
} }