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/tcp: postpone cleanup on reset
[vpp.git]
/
src
/
vnet
/
session-apps
/
echo_server.c
diff --git
a/src/vnet/session-apps/echo_server.c
b/src/vnet/session-apps/echo_server.c
index
e79e838
..
c0fdb13
100644
(file)
--- a/
src/vnet/session-apps/echo_server.c
+++ b/
src/vnet/session-apps/echo_server.c
@@
-73,7
+73,7
@@
void
echo_server_session_disconnect_callback (stream_session_t * s)
{
echo_server_main_t *esm = &echo_server_main;
echo_server_session_disconnect_callback (stream_session_t * s)
{
echo_server_main_t *esm = &echo_server_main;
- vnet_disconnect_args_t _a, *a = &_a;
+ vnet_disconnect_args_t _a
= { 0 }
, *a = &_a;
a->handle = session_handle (s);
a->app_index = esm->app_index;
a->handle = session_handle (s);
a->app_index = esm->app_index;
@@
-83,8
+83,12
@@
echo_server_session_disconnect_callback (stream_session_t * s)
void
echo_server_session_reset_callback (stream_session_t * s)
{
void
echo_server_session_reset_callback (stream_session_t * s)
{
+ echo_server_main_t *esm = &echo_server_main;
+ vnet_disconnect_args_t _a = { 0 }, *a = &_a;
clib_warning ("Reset session %U", format_stream_session, s, 2);
clib_warning ("Reset session %U", format_stream_session, s, 2);
- stream_session_cleanup (s);
+ a->handle = session_handle (s);
+ a->app_index = esm->app_index;
+ vnet_disconnect_session (a);
}
int
}
int