Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
session: return bound listener for proxy accepts
[vpp.git]
/
src
/
vnet
/
session
/
session_api.c
diff --git
a/src/vnet/session/session_api.c
b/src/vnet/session/session_api.c
index
f15d2f6
..
c54e635
100755
(executable)
--- 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);
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);
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);