Skip to content

Commit

Permalink
Release 2.29.4
Browse files Browse the repository at this point in the history
- [BUGFIX] Infinite loop in stream: returned HQ frame can be at any
  point on the list.
- [BUGFIX] Fail push promise immediately if STREAM_NOPUSH is set.
  • Loading branch information
Dmitri Tikhonov committed Mar 8, 2021
1 parent 99a1ad0 commit e1b8f1a
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 5 deletions.
6 changes: 6 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
2021-03-08
- 2.29.4
- [BUGFIX] Infinite loop in stream: returned HQ frame can be at any
point on the list.
- [BUGFIX] Fail push promise immediately if STREAM_NOPUSH is set.

2021-03-03
- 2.29.3
- [BUGFIX] Do not send RESET_STREAM if writing to stream is already
Expand Down
2 changes: 1 addition & 1 deletion docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
# The short X.Y version
version = u'2.29'
# The full version, including alpha/beta/rc tags
release = u'2.29.3'
release = u'2.29.4'


# -- General configuration ---------------------------------------------------
Expand Down
2 changes: 1 addition & 1 deletion include/lsquic.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ extern "C" {

#define LSQUIC_MAJOR_VERSION 2
#define LSQUIC_MINOR_VERSION 29
#define LSQUIC_PATCH_VERSION 3
#define LSQUIC_PATCH_VERSION 4

/**
* Engine flags:
Expand Down
8 changes: 5 additions & 3 deletions src/liblsquic/lsquic_stream.c
Original file line number Diff line number Diff line change
Expand Up @@ -2669,8 +2669,8 @@ static void
stream_hq_frame_put (struct lsquic_stream *stream,
struct stream_hq_frame *shf)
{
assert(STAILQ_FIRST(&stream->sm_hq_frames) == shf);
STAILQ_REMOVE_HEAD(&stream->sm_hq_frames, shf_next);
/* In vast majority of cases, the frame to put is at the head: */
STAILQ_REMOVE(&stream->sm_hq_frames, shf, stream_hq_frame, shf_next);
if (frame_in_stream(stream, shf))
memset(shf, 0, sizeof(*shf));
else
Expand Down Expand Up @@ -5383,7 +5383,9 @@ lsquic_stream_push_promise (struct lsquic_stream *stream,
ssize_t nw;

assert(stream->sm_bflags & SMBF_IETF);
assert(lsquic_stream_can_push(stream));

if (stream->stream_flags & STREAM_NOPUSH)
return -1;

bits = vint_val2bits(promise->pp_id);
len = 1 << bits;
Expand Down

0 comments on commit e1b8f1a

Please sign in to comment.