diff options
author | Nathan Skrzypczak <nathan.skrzypczak@gmail.com> | 2019-05-16 14:38:44 +0200 |
---|---|---|
committer | Florin Coras <florin.coras@gmail.com> | 2019-07-18 18:19:05 +0000 |
commit | 9fd996275c745faec2843cf3a8b1d15d6f8c9dab (patch) | |
tree | 01bd59cd9deea4994a33bce8bb4a2a7d7fa5c283 /src/plugins/hs_apps/vcl/vcl_test.h | |
parent | cef02be220eff4aa32ec7ff56b1e0a552faa1280 (diff) |
vcl: add QUIC support
Type: feature
* Adds the concept of a "connectable listener" : a session that
can be both connected and accepted on.
* vppcom_session_is_connectable_listener (fd) that tells if the fd
is a connectable listener
* vppcom_session_listener (fd) that gives you the listener's fd
that accepted the session (if any)
* vppcom_session_n_accepted (fd) that gives the number
of sessions a listener accepted.
Change-Id: Id89d67d8339fb15a7cf7e00a9c5448175eca04fc
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Diffstat (limited to 'src/plugins/hs_apps/vcl/vcl_test.h')
-rw-r--r-- | src/plugins/hs_apps/vcl/vcl_test.h | 31 |
1 files changed, 11 insertions, 20 deletions
diff --git a/src/plugins/hs_apps/vcl/vcl_test.h b/src/plugins/hs_apps/vcl/vcl_test.h index ab05f7ae9cf..7586e29749a 100644 --- a/src/plugins/hs_apps/vcl/vcl_test.h +++ b/src/plugins/hs_apps/vcl/vcl_test.h @@ -86,10 +86,11 @@ typedef struct __attribute__ ((packed)) uint32_t test; uint32_t ctrl_handle; uint32_t num_test_sessions; + uint32_t num_test_sessions_perq; + uint32_t num_test_qsessions; uint32_t verbose; uint32_t address_ip6; uint32_t transport_udp; - uint32_t transport_tls; uint64_t rxbuf_size; uint64_t txbuf_size; uint64_t num_writes; @@ -119,6 +120,7 @@ typedef struct char *rxbuf; vcl_test_cfg_t cfg; vcl_test_stats_t stats; + int session_index; } vcl_test_session_t; @@ -201,6 +203,7 @@ vcl_test_cfg_init (vcl_test_cfg_t * cfg) cfg->test = VCL_TEST_TYPE_NONE; cfg->ctrl_handle = ~0; cfg->num_test_sessions = 1; + cfg->num_test_sessions_perq = 1; cfg->verbose = 0; cfg->rxbuf_size = VCL_TEST_CFG_RXBUF_SIZE_DEF; cfg->num_writes = VCL_TEST_CFG_NUM_WRITES_DEF; @@ -491,28 +494,16 @@ vcl_test_write (int fd, uint8_t * buf, uint32_t nbytes, if (rv < 0) { errno = -rv; - rv = -1; - } - if (rv < 0) - { - if ((errno == EAGAIN) || (errno == EWOULDBLOCK)) - { - if (stats) - stats->tx_eagain++; - break; - } - else - break; + if ((errno == EAGAIN || errno == EWOULDBLOCK) && stats) + stats->tx_eagain++; + break; } tx_bytes += rv; - if (tx_bytes != nbytes) - { - nbytes_left = nbytes_left - rv; - buf += rv; - if (stats) - stats->tx_incomp++; - } + nbytes_left = nbytes_left - rv; + buf += rv; + if (stats) + stats->tx_incomp++; } while (tx_bytes != nbytes); |