From 57de44a4bc36a7034b2a90f44db0696f3099f75a Mon Sep 17 00:00:00 2001 From: David Gibson Date: Fri, 8 Dec 2023 01:31:40 +1100 Subject: util: Make sock_l4() treat empty string ifname like NULL sock_l4() takes NULL for ifname if you don't want to bind the socket to a particular interface. However, for a number of the callers, it's more natural to use an empty string for that case. Change sock_l4() to accept either NULL or an empty string equivalently, and simplify some callers using that change. Signed-off-by: David Gibson Signed-off-by: Stefano Brivio --- udp.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'udp.c') diff --git a/udp.c b/udp.c index f6e8b37..7057977 100644 --- a/udp.c +++ b/udp.c @@ -870,8 +870,7 @@ int udp_tap_handler(struct ctx *c, uint8_t pif, union udp_epoll_ref uref = { .port = src }; const char *bind_if = NULL; - if (!IN6_IS_ADDR_LOOPBACK(&s_in.sin_addr) && - *c->ip6.ifname_out) + if (!IN6_IS_ADDR_LOOPBACK(&s_in.sin_addr)) bind_if = c->ip6.ifname_out; if (!IN4_IS_ADDR_UNSPECIFIED(&c->ip4.addr_out) && @@ -919,8 +918,7 @@ int udp_tap_handler(struct ctx *c, uint8_t pif, union udp_epoll_ref uref = { .v6 = 1, .port = src }; const char *bind_if = NULL; - if (!IN6_IS_ADDR_LOOPBACK(&s_in6.sin6_addr) && - *c->ip6.ifname_out) + if (!IN6_IS_ADDR_LOOPBACK(&s_in6.sin6_addr)) bind_if = c->ip6.ifname_out; if (!IN6_IS_ADDR_UNSPECIFIED(&c->ip6.addr_out) && -- cgit v1.2.3