diff options
| -rw-r--r-- | src/akcom-udpechod.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/akcom-udpechod.c b/src/akcom-udpechod.c index 892e6ba..83af161 100644 --- a/src/akcom-udpechod.c +++ b/src/akcom-udpechod.c | |||
| @@ -857,9 +857,10 @@ int my_loop(int s, size_t * connp) | |||
| 857 | 857 | ||
| 858 | // log connection | 858 | // log connection |
| 859 | my_log_conn(MY_RECV, connp, &sa, &udpbuff.msg, ssize, &ts, 0); | 859 | my_log_conn(MY_RECV, connp, &sa, &udpbuff.msg, ssize, &ts, 0); |
| 860 | if ((cnf_echoplus)) | 860 | if ( ((cnf_echoplus)) && (ssize < (ssize_t)sizeof(struct udp_echo_plus)) ) |
| 861 | { | 861 | { |
| 862 | udpbuff.msg.recv_time = htonl(us_recv & 0xFFFFFFFFLL); | 862 | my_log_conn(MY_INVAL, connp, &sa, &udpbuff.msg, ssize, &ts, 0); |
| 863 | return(0); | ||
| 863 | }; | 864 | }; |
| 864 | 865 | ||
| 865 | // randomly drop packets | 866 | // randomly drop packets |
| @@ -892,6 +893,7 @@ int my_loop(int s, size_t * connp) | |||
| 892 | if ((cnf_echoplus)) | 893 | if ((cnf_echoplus)) |
| 893 | { | 894 | { |
| 894 | udpbuff.msg.res_sn = htonl(state.res_sn); | 895 | udpbuff.msg.res_sn = htonl(state.res_sn); |
| 896 | udpbuff.msg.recv_time = htonl(us_recv & 0xFFFFFFFFLL); | ||
| 895 | udpbuff.msg.reply_time = htonl(us_reply & 0xFFFFFFFFLL); | 897 | udpbuff.msg.reply_time = htonl(us_reply & 0xFFFFFFFFLL); |
| 896 | udpbuff.msg.failures = htonl(state.failures); | 898 | udpbuff.msg.failures = htonl(state.failures); |
| 897 | }; | 899 | }; |
