[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[paparazzi-commits] [4248] Make the onboard logger somewhat more robust
From: |
Allen Ibara |
Subject: |
[paparazzi-commits] [4248] Make the onboard logger somewhat more robust against undersized messages |
Date: |
Tue, 13 Oct 2009 00:28:32 +0000 |
Revision: 4248
http://svn.sv.gnu.org/viewvc/?view=rev&root=paparazzi&revision=4248
Author: aibara
Date: 2009-10-13 00:28:31 +0000 (Tue, 13 Oct 2009)
Log Message:
-----------
Make the onboard logger somewhat more robust against undersized messages
Modified Paths:
--------------
paparazzi3/trunk/sw/airborne/fms/onboard_logger.c
Modified: paparazzi3/trunk/sw/airborne/fms/onboard_logger.c
===================================================================
--- paparazzi3/trunk/sw/airborne/fms/onboard_logger.c 2009-10-12 12:13:43 UTC
(rev 4247)
+++ paparazzi3/trunk/sw/airborne/fms/onboard_logger.c 2009-10-13 00:28:31 UTC
(rev 4248)
@@ -6,6 +6,8 @@
static const char filter_exp[] = "dst port 4242 && udp";
+#define MIN_MSG_LENGTH 3
+
static void got_pprz_message(const u_char *buf, const struct timeval *ts)
{
int i = 0;
@@ -47,6 +49,7 @@
const struct ethernet_header *ethernet;
const struct ip_header *ip;
const struct udp_header *udp;
+ unsigned int msg_length;
u_short udp_length;
u_int size_ip;
@@ -76,7 +79,8 @@
break;
}
i++;
- if (i + payload[i] <= udp_length) {
+ msg_length = payload[i];
+ if ((i + msg_length <= udp_length) && msg_length >= MIN_MSG_LENGTH) {
got_pprz_message(payload + i, &header->ts);
i += payload[i] - 1;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [paparazzi-commits] [4248] Make the onboard logger somewhat more robust against undersized messages,
Allen Ibara <=