From: David Härdeman Date: Tue, 7 Oct 2025 11:44:08 +0000 (+0200) Subject: odhcpd: remove mac_len argument to ubus_bcast_dhcp_event() X-Git-Url: http://git.openwrt.org/?a=commitdiff_plain;h=22481d848e0d37a09c6281a28a59cdfaf8237d62;p=project%2Fodhcpd.git odhcpd: remove mac_len argument to ubus_bcast_dhcp_event() All the places that call ubus_bcast_dhcp_event() have already checked that the hardware adress is a MAC address, and it's not like we support anything else, so remove the length argument. The function is actually DHCPv4 specific, but that's a topic for another time. Signed-off-by: David Härdeman Link: https://github.com/openwrt/odhcpd/pull/270 Signed-off-by: Álvaro Fernández Rojas --- diff --git a/src/dhcpv4.c b/src/dhcpv4.c index 8b6a0ce..d63e76a 100644 --- a/src/dhcpv4.c +++ b/src/dhcpv4.c @@ -705,7 +705,7 @@ void dhcpv4_handle_msg(void *addr, void *data, size_t len, if (reqmsg == DHCPV4_MSG_RELEASE) { struct in_addr ciaddr = req->ciaddr; // ensure pointer alignment - ubus_bcast_dhcp_event("dhcp.release", req->chaddr, req->hlen, + ubus_bcast_dhcp_event("dhcp.release", req->chaddr, &ciaddr, a ? a->hostname : NULL, iface->ifname); } @@ -933,7 +933,7 @@ void dhcpv4_handle_msg(void *addr, void *data, size_t len, if (msg == DHCPV4_MSG_ACK) { struct in_addr yiaddr = reply.yiaddr; // ensure pointer alignment - ubus_bcast_dhcp_event("dhcp.ack", req->chaddr, req->hlen, &yiaddr, + ubus_bcast_dhcp_event("dhcp.ack", req->chaddr, &yiaddr, a ? a->hostname : NULL, iface->ifname); } } diff --git a/src/odhcpd.h b/src/odhcpd.h index 7244274..0903487 100644 --- a/src/odhcpd.h +++ b/src/odhcpd.h @@ -520,8 +520,8 @@ const char* ubus_get_ifname(const char *name); void ubus_apply_network(void); bool ubus_has_prefix(const char *name, const char *ifname); void ubus_bcast_dhcp_event(const char *type, const uint8_t *mac, - const size_t mac_len, const struct in_addr *addr, - const char *name, const char *interface); + const struct in_addr *addr, const char *name, + const char *interface); #else static inline int ubus_init(void) { @@ -535,8 +535,8 @@ static inline void ubus_apply_network(void) static inline void ubus_bcast_dhcp_event(const char *type, const uint8_t *mac, - const size_t mac_len, const struct in_addr *addr, - const char *name, const char *interface) + const struct in_addr *addr, const char *name, + const char *interface) { return; } diff --git a/src/ubus.c b/src/ubus.c index 5c4a99f..987e0b4 100644 --- a/src/ubus.c +++ b/src/ubus.c @@ -401,15 +401,15 @@ static const struct blobmsg_policy obj_attrs[OBJ_ATTR_MAX] = { }; void ubus_bcast_dhcp_event(const char *type, const uint8_t *mac, - const size_t mlen, const struct in_addr *addr, const char *name, - const char *interface) + const struct in_addr *addr, const char *name, + const char *interface) { if (!ubus || !main_object.has_subscribers) return; blob_buf_init(&b, 0); if (mac) - blobmsg_add_string(&b, "mac", odhcpd_print_mac(mac, mlen)); + blobmsg_add_string(&b, "mac", odhcpd_print_mac(mac, ETH_ALEN)); if (addr) blobmsg_add_string(&b, "ip", inet_ntoa(*addr)); if (name)