Add an "hostname" config option.

It is overridden by the -h command line option.

Signed-off-by: Benjamin Cama <benoar@dolka.fr>
This commit is contained in:
Benjamin Cama 2011-07-25 20:07:14 +02:00
parent 3d9333a6cb
commit fd021320ec
3 changed files with 15 additions and 4 deletions

View file

@ -69,7 +69,7 @@ int rand_fd = -1; // Random data source
int cluster_sockfd = -1; // Intra-cluster communications socket.
int epollfd = -1; // event polling
time_t basetime = 0; // base clock
char hostname[1000] = ""; // us.
char hostname[MAXHOSTNAME] = ""; // us.
static int tunidx; // ifr_ifindex of tun device
static int syslog_log = 0; // are we logging to syslog
static FILE *log_stream = 0; // file handle for direct logging (i.e. direct into file, not via syslog).
@ -158,6 +158,7 @@ config_descriptt config_values[] = {
CONFIG("cluster_master_min_adv", cluster_master_min_adv, INT),
CONFIG("ipv6_prefix", ipv6_prefix, IPv6),
CONFIG("cli_bind_address", cli_bind_address, IPv4),
CONFIG("hostname", hostname, STRING),
{ NULL, 0, 0, 0 },
};
@ -4068,9 +4069,14 @@ static void initdata(int optdebug, char *optconfig)
if (!*hostname)
{
// Grab my hostname unless it's been specified
gethostname(hostname, sizeof(hostname));
stripdomain(hostname);
if (!*config->hostname)
{
// Grab my hostname unless it's been specified
gethostname(hostname, sizeof(hostname));
stripdomain(hostname);
}
else
strcpy(hostname, config->hostname);
}
_statistics->start_time = _statistics->last_reset = time(NULL);