From 0bbf7ad5e481fdf740315b2d9239d39430e27e50 Mon Sep 17 00:00:00 2001 From: Angel Garcia Date: Thu, 23 May 2019 04:13:07 +0200 Subject: [PATCH] Fixed crash when 0 length packet was send to tunnel Now UDP packets with 0 length are discarded without answer to sender. Minor --- hover-controller/hover-controller.cpp | 4 +++- rfudp/TxTunnelSender.cpp | 8 ++++++++ rfudp/client_test.cpp | 1 + 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/hover-controller/hover-controller.cpp b/hover-controller/hover-controller.cpp index 168d96a..9e5feac 100644 --- a/hover-controller/hover-controller.cpp +++ b/hover-controller/hover-controller.cpp @@ -139,7 +139,9 @@ int main(int argc, char** argv) { radio.startListening(); #endif - + //clean buffer + //buffer[0]='\0'; + //memset(buffer, 0, sizeof(buffer)); }while(loop_on); diff --git a/rfudp/TxTunnelSender.cpp b/rfudp/TxTunnelSender.cpp index 58e999a..3c9a18c 100644 --- a/rfudp/TxTunnelSender.cpp +++ b/rfudp/TxTunnelSender.cpp @@ -154,6 +154,10 @@ int main(int argc, char** argv){ inet_ntoa(cliaddr.sin_addr), // addrress ntohs(cliaddr.sin_port) // port ); + if ( n ==0 ) { + printf("empty msg, discarded\n"); + continue; + } printf("MSG: \'%s\'\n", buffer); @@ -203,6 +207,10 @@ int main(int argc, char** argv){ (const struct sockaddr *) &cliaddr, cliaddr_len ); + //clean buffer + //buffer[0]='\0'; + //memset(buffer, 0, sizeof(buffer)); + }while(loop_on); // Power down the antenna diff --git a/rfudp/client_test.cpp b/rfudp/client_test.cpp index 1571890..b2b3939 100644 --- a/rfudp/client_test.cpp +++ b/rfudp/client_test.cpp @@ -63,5 +63,6 @@ do{ buffer[n] = '\0'; printf("ANS: \'%s\'\n", buffer); + //buffer[0]='\0'; }while(loop_on); }