From aecbad960aaaac3d4ff50bfebc82f348750e7d9b Mon Sep 17 00:00:00 2001 From: Koen Zandberg <koen@bergzand.net> Date: Tue, 10 Jul 2018 18:31:09 +0200 Subject: [PATCH] netdev: Initialize sequence number to random value --- Makefile.dep | 1 + drivers/netdev_ieee802154/netdev_ieee802154.c | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Makefile.dep b/Makefile.dep index 77c9b9081e..cfeb10de38 100644 --- a/Makefile.dep +++ b/Makefile.dep @@ -59,6 +59,7 @@ endif ifneq (,$(filter netdev_ieee802154,$(USEMODULE))) USEMODULE += ieee802154 + USEMODULE += random endif ifneq (,$(filter gnrc_uhcpc,$(USEMODULE))) diff --git a/drivers/netdev_ieee802154/netdev_ieee802154.c b/drivers/netdev_ieee802154/netdev_ieee802154.c index 202656658e..f826f2d546 100644 --- a/drivers/netdev_ieee802154/netdev_ieee802154.c +++ b/drivers/netdev_ieee802154/netdev_ieee802154.c @@ -22,6 +22,7 @@ #include "net/eui64.h" #include "net/ieee802154.h" #include "net/netdev.h" +#include "random.h" #include "net/netdev/ieee802154.h" @@ -52,7 +53,8 @@ static int _get_iid(netdev_ieee802154_t *dev, eui64_t *value, size_t max_len) void netdev_ieee802154_reset(netdev_ieee802154_t *dev) { - dev->seq = 0; + /* Only the least significant byte of the random value is used */ + dev->seq = random_uint32(); dev->flags = 0; /* set default protocol */ -- GitLab