aboutsummaryrefslogtreecommitdiffstats
path: root/extras
diff options
context:
space:
mode:
authorMatus Fabian <matfabia@cisco.com>2025-03-07 08:02:42 -0500
committerFlorin Coras <florin.coras@gmail.com>2025-03-24 17:03:48 +0000
commit8e50ec8dcadc33f057a621efbfdc948fd414784e (patch)
treee595359420cf0e92c742fe882fb20f82ebee6c35 /extras
parent7aebf804fe0050d4a48aab591b55f026e8dcc4c4 (diff)
http: extendable conn/req ctx and multiplexing
multiplexing support: - set request index as connection_index in application session - do not allocate app session/http req immediately in http_ts_accept_callback but wait for request/stream opening HTTP version specific data in connection and request ctx: - opaque pointer in http_conn_t - req_pool manged entirely by specific version engine Version specific configuration: - added name to http_engine_vft_t - added unformat_cfg_callback (optional) to http_engine_vft_t Type: improvement Change-Id: Ib43f0489337a222a68b0f81d45cb2e64b2c606c0 Signed-off-by: Matus Fabian <matfabia@cisco.com>
Diffstat (limited to 'extras')
-rw-r--r--extras/hs-test/http_test.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/extras/hs-test/http_test.go b/extras/hs-test/http_test.go
index f4bee5e312b..760ca3ca936 100644
--- a/extras/hs-test/http_test.go
+++ b/extras/hs-test/http_test.go
@@ -239,6 +239,23 @@ func HttpCliTest(s *VethsSuite) {
s.Log(o)
s.AssertContains(o, "<html>", "<html> not found in the result!")
s.AssertContains(o, "</html>", "</html> not found in the result!")
+
+ /* test client session cleanup */
+ clientCleanupDone := false
+ for nTries := 0; nTries < 30; nTries++ {
+ o := s.Containers.ClientVpp.VppInstance.Vppctl("show session verbose 2")
+ if !strings.Contains(o, "->"+s.Interfaces.Server.Ip4AddressString()+":80") {
+ clientCleanupDone = true
+ break
+ }
+ time.Sleep(1 * time.Second)
+ }
+ s.AssertEqual(true, clientCleanupDone)
+
+ /* test server app stop listen */
+ s.Containers.ServerVpp.VppInstance.Vppctl("http cli server listener del")
+ o = s.Containers.ServerVpp.VppInstance.Vppctl("show session verbose proto http")
+ s.AssertNotContains(o, "LISTEN")
}
func HttpCliTlsTest(s *VethsSuite) {