From b0bc1aa86410d43ea6b8e3dc7ba7f51d6dd3edfb Mon Sep 17 00:00:00 2001 From: Andrew Opalach Date: Sun, 7 Jan 2024 16:47:48 -0500 Subject: Update - Enable aki_packet_pool grow - Disable aki_packet_stream timeout - Change aki_packet_stream_disconnect flow Signed-off-by: Andrew Opalach --- src/packet_pool.c | 2 +- src/packet_stream.c | 21 ++++++++++++--------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/packet_pool.c b/src/packet_pool.c index 683efcb..a49c5f5 100644 --- a/src/packet_pool.c +++ b/src/packet_pool.c @@ -79,7 +79,7 @@ void aki_packet_pool_init_ex(struct aki_packet_pool *pool, u32 size, struct aki_ init_internal(pool, size, loop, mode, callback, userdata); } -static const bool grow = false; +static const bool grow = true; struct aki_packet *aki_packet_pool_get(struct aki_packet_pool *pool) { diff --git a/src/packet_stream.c b/src/packet_stream.c index 0096f7c..6d90fa7 100644 --- a/src/packet_stream.c +++ b/src/packet_stream.c @@ -44,10 +44,10 @@ static void stop_write_internal(struct aki_packet_stream *stream) static void stop_internal(struct aki_packet_stream *stream) { stream->connected = false; - if (stream->timer_started) { - ev_timer_stop(stream->loop->ev, &stream->timer); - stream->timer_started = false; - } + //if (stream->timer_started) { + // ev_timer_stop(stream->loop->ev, &stream->timer); + // stream->timer_started = false; + //} if (stream->revent.active) { ev_io_stop(stream->loop->ev, &stream->revent); } @@ -192,14 +192,14 @@ void aki_packet_stream_connect(struct aki_packet_stream *stream, ev_io_init(&stream->wevent, stream_write_callback, aki_socket_get_fd(&stream->s), EV_WRITE); start_write_internal(stream); - stream->timer.data = stream; - ev_timer_init(&stream->timer, timeout_callback, 5.0, 0.0); + //stream->timer.data = stream; + //ev_timer_init(&stream->timer, timeout_callback, 5.0, 0.0); if (!aki_socket_connect(&stream->s, addr, port)) { stop_internal(stream); return; } - stream->timer_started = true; - ev_timer_start(loop->ev, &stream->timer); + //stream->timer_started = true; + //ev_timer_start(loop->ev, &stream->timer); } void aki_packet_stream_cork(struct aki_packet_stream *stream, bool cork) @@ -234,7 +234,10 @@ void aki_packet_stream_disconnect(struct aki_packet_stream *stream) { if (stream->connected) { aki_socket_shutdown(&stream->s); - aki_packet_stream_cork(stream, false); + if (stream->revent.active) { + ev_io_stop(stream->loop->ev, &stream->revent); + } + stop_internal(stream); } } -- cgit v1.2.3-101-g0448