From: Nathan Skrzypczak Date: Thu, 4 Jul 2019 12:20:17 +0000 (+0200) Subject: udp: UDPC handle open fail X-Git-Tag: v20.01-rc0~220 X-Git-Url: https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commitdiff_plain;h=50f4a417147ae4aae6ad8cddb0c7709420c712f0 udp: UDPC handle open fail Type: fix Change-Id: Ib8fb4957f4da9e464e2575c45c8ff3828db89872 Signed-off-by: Nathan Skrzypczak --- diff --git a/MAINTAINERS b/MAINTAINERS index 54e9a63a5bd..4bcd82ee0dd 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -199,6 +199,11 @@ I: tcp M: Florin Coras F: src/vnet/tcp +VNET UDP +I: udp +M: Florin Coras +F: src/vnet/udp + VNET VXLAN I: vxlan M: John Lo diff --git a/src/vnet/udp/udp.c b/src/vnet/udp/udp.c index 1fb7a507544..fafe8900242 100644 --- a/src/vnet/udp/udp.c +++ b/src/vnet/udp/udp.c @@ -357,9 +357,10 @@ udpc_connection_open (transport_endpoint_cfg_t * rmt) u32 thread_index = vlib_num_workers ()? 1 : vlib_get_main ()->thread_index; u32 uc_index; uc_index = udp_open_connection (rmt); + if (uc_index == (u32) ~ 0) + return -1; uc = udp_connection_get (uc_index, thread_index); - if (uc) - uc->is_connected = 1; + uc->is_connected = 1; return uc_index; } @@ -367,11 +368,13 @@ u32 udpc_connection_listen (u32 session_index, transport_endpoint_t * lcl) { udp_connection_t *listener; - u32 li; - li = udp_session_bind (session_index, lcl); - listener = udp_listener_get (li); + u32 li_index; + li_index = udp_session_bind (session_index, lcl); + if (li_index == (u32) ~ 0) + return -1; + listener = udp_listener_get (li_index); listener->is_connected = 1; - return li; + return li_index; } /* *INDENT-OFF* */