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

@ -7,6 +7,9 @@ set log_file "/var/log/l2tpns"
# Write pid to this file # Write pid to this file
set pid_file "/var/run/l2tpns.pid" set pid_file "/var/run/l2tpns.pid"
# This host name, if different from the OS one
#set hostname "localhost"
# Shared secret with LAC # Shared secret with LAC
set l2tp_secret "secret" set l2tp_secret "secret"

View file

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

View file

@ -38,6 +38,7 @@
#define PPPoE_MRU 1492 // maximum PPPoE MRU (rfc2516: 1500 less PPPoE header (6) and PPP protocol ID (2)) #define PPPoE_MRU 1492 // maximum PPPoE MRU (rfc2516: 1500 less PPPoE header (6) and PPP protocol ID (2))
#define MAXETHER (MAXMTU+18) // max packet we try sending to tun #define MAXETHER (MAXMTU+18) // max packet we try sending to tun
#define MAXTEL 96 // telephone number #define MAXTEL 96 // telephone number
#define MAXHOSTNAME 256 // hostname
#define MAXUSER 128 // username #define MAXUSER 128 // username
#define MAXPASS 128 // password #define MAXPASS 128 // password
#define MAXPLUGINS 20 // maximum number of plugins to load #define MAXPLUGINS 20 // maximum number of plugins to load
@ -713,6 +714,7 @@ typedef struct
int cluster_master_min_adv; // Master advertises routes while the number of up to date int cluster_master_min_adv; // Master advertises routes while the number of up to date
// slaves is less than this value. // slaves is less than this value.
in_addr_t cli_bind_address; // bind address for CLI in_addr_t cli_bind_address; // bind address for CLI
char hostname[MAXHOSTNAME]; // hostname (overridden by -h on command line)
// Guest change // Guest change
char guest_user[MAXUSER]; // Guest account username char guest_user[MAXUSER]; // Guest account username