X-Git-Url: http://git.refcnt.org/?p=distdns.git;a=blobdiff_plain;f=server.cgi;h=1adcf0933b6ee9d71425fcd7cf503292e7a7de2a;hp=f9f8579009c71558664a7cf0c127d5a4bc028701;hb=HEAD;hpb=b29a7dbc8fcef7ffb5ecb50f84b99d38d4c14b8b diff --git a/server.cgi b/server.cgi index f9f8579..1adcf09 100755 --- a/server.cgi +++ b/server.cgi @@ -81,11 +81,14 @@ if ($params{init}) { open(my $fh, '>', $session_file) or die "Cannot open $session_file for writing: $!\n"; print {$fh} "$params{session}\n"; close($fh); + + print $query->header('application/json'); + print encode_json({ entries => [], error => undef }); + exit; } else { open(my $fh, '<', $session_file) or die "Cannot open $session_file for reading: $!\nPerhaps try running --init\n"; - my $session = do { local $/; <$fh> }; - chomp $session; + chomp(my $session = <$fh>); close($fh); die "Session ID mismatch\n" unless $params{session} eq $session; @@ -130,6 +133,7 @@ if (exists $access{$params{name}} && grep /^$params{pc}$/i, @{$access{$params{na } } push @$data, { map { $_ => $params{$_} } qw(netz pc name ip) }; + $data->[-1]->{time} = time; seek($fh, 0, 0) or die "Cannot seek to start of $json_file: $!\n"; truncate($fh, 0) or die "Cannot truncate $json_file: $!\n";