diff options
-rwxr-xr-x | client/scireclient.pl | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/client/scireclient.pl b/client/scireclient.pl index 8c8bdff..6485bac 100755 --- a/client/scireclient.pl +++ b/client/scireclient.pl @@ -161,8 +161,9 @@ sub read_config_file { } sub register_client { - my $mac = "00:11:22:33:44:55"; - my $ip = "192.168.2.3"; +# my $mac = "00:11:22:33:44:55"; +# my $ip = "192.168.2.3"; + my ($mac, $ip) = get_interface_info(defined $conf{interface} && $conf{interface} ? $conf{interface} : "eth0"); my ($status, $message) = parse_response(send_command("REGISTER", $mac, $ip)); die "Could not register client $mac w/ ip $ip. Got: $message" if (! defined $status or $status ne "OK"); debug("Client registered. Status is pending.\n"); @@ -242,3 +243,12 @@ sub debug { print STDERR $msg; } } + +sub get_interface_info { + my $interface = shift; + + my $info = `/sbin/ifconfig ${interface}`; + $info =~ /^.+HWaddr ([a-zA-Z0-9:]+).+inet addr:([0-9.]+).+$/s; + my ($mac, $ip) = ($1, $2); + return ($mac, $ip); +} |