summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/cc1111/ao_packet.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/cc1111/ao_packet.c b/src/cc1111/ao_packet.c
index f502d67c..7eeb0710 100644
--- a/src/cc1111/ao_packet.c
+++ b/src/cc1111/ao_packet.c
@@ -68,6 +68,15 @@ ao_packet_recv(void)
if (!(ao_rx_packet.status & PKT_APPEND_STATUS_1_CRC_OK))
return 0;
+ /* Accept packets with matching call signs, or any packet if
+ * our callsign hasn't been configured
+ */
+ if (ao_xmemcmp(ao_rx_packet.packet.callsign,
+ ao_config.callsign,
+ AO_MAX_CALLSIGN) != 0 &&
+ ao_xmemcmp(ao_config.callsign, CODE_TO_XDATA("N0CALL"), 7) != 0)
+ return 0;
+
/* SYN packets carry no data */
if (ao_rx_packet.packet.len == AO_PACKET_SYN) {
rx_seq = ao_rx_packet.packet.seq;