FreeCalypso > hg > freecalypso-tools
diff rvinterf/lowlevel/rvifmain.c @ 222:7168f63fc3b8
rvinterf: implemented keepalive mechanism
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 20 May 2017 21:00:15 +0000 |
parents | e7502631a0f9 |
children | 6f078c4a5506 |
line wrap: on
line diff
--- a/rvinterf/lowlevel/rvifmain.c Sat May 20 20:04:35 2017 +0000 +++ b/rvinterf/lowlevel/rvifmain.c Sat May 20 21:00:15 2017 +0000 @@ -36,6 +36,10 @@ int wakeup_after_sec = 7; +static char keepalive_msg[] = + "Received keepalive query, responding with keepalive answer"; +static u_char keepalive_answer[2] = {RVT_KEEPALIVE_HEADER, 'A'}; + main(argc, argv) char **argv; { @@ -203,6 +207,12 @@ if (client_head) forward_nonrvt_pkt(); return; + case RVT_KEEPALIVE_HEADER: + if (rxpkt_len != 2 || rxpkt[1] != 'Q') + goto unknown; + output_line(keepalive_msg); + send_pkt_to_target(keepalive_answer, 2); + return; case '*': print_fc_lld_msg(); return;