diff options
author | Florin Coras <fcoras@cisco.com> | 2017-11-27 03:12:00 -0800 |
---|---|---|
committer | Dave Wallace <dwallacelf@gmail.com> | 2017-11-27 20:35:37 +0000 |
commit | c3ddea8fa9b959956fd8df66c8d3c4dbe99e0a77 (patch) | |
tree | 894853fb1f292e0bb6bb9ace89106392ecdc0620 /src/vnet/session/session_api.c | |
parent | 2d36ed2fac5c8eea5311e0eb8a3aaa7dc75f59ee (diff) |
session: return bound listener for proxy accepts
This, if such a listener exists.
Change-Id: I974cc858c1e2fee50189c3c67e4abb76be32a98a
Signed-off-by: Florin Coras <fcoras@cisco.com>
Diffstat (limited to 'src/vnet/session/session_api.c')
-rwxr-xr-x | src/vnet/session/session_api.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/vnet/session/session_api.c b/src/vnet/session/session_api.c index f15d2f6e830..c54e635d534 100755 --- a/src/vnet/session/session_api.c +++ b/src/vnet/session/session_api.c @@ -106,6 +106,16 @@ send_session_accept_callback (stream_session_t * s) tp_vft = transport_protocol_get_vft (s->session_type); tc = tp_vft->get_connection (s->connection_index, s->thread_index); mp->listener_handle = listen_session_get_handle (listener); + + if (application_is_proxy (server)) + { + listener = + application_first_listener (server, + transport_connection_fib_proto (tc), + tc->proto); + if (listener) + mp->listener_handle = listen_session_get_handle (listener); + } mp->handle = session_handle (s); mp->server_rx_fifo = pointer_to_uword (s->server_rx_fifo); mp->server_tx_fifo = pointer_to_uword (s->server_tx_fifo); |