diff --git a/lib/spdylay_stream.c b/lib/spdylay_stream.c index 16e27fdd..fa187307 100644 --- a/lib/spdylay_stream.c +++ b/lib/spdylay_stream.c @@ -27,6 +27,7 @@ void spdylay_stream_init(spdylay_stream *stream, int32_t stream_id) { stream->stream_id = stream_id; + stream->state = SPDYLAY_STREAM_OPENING; } void spdylay_stream_free(spdylay_stream *stream) diff --git a/lib/spdylay_stream.h b/lib/spdylay_stream.h index 674cac31..68cbe44c 100644 --- a/lib/spdylay_stream.h +++ b/lib/spdylay_stream.h @@ -31,8 +31,17 @@ #include +typedef enum { + SPDYLAY_STREAM_OPENING, + SPDYLAY_STREAM_OPENED, + SPDYLAY_STREAM_CLOSING +} spdylay_stream_state; + typedef struct { int32_t stream_id; + spdylay_stream_state state; + /* Use same value in frame */ + uint8_t flags; } spdylay_stream; void spdylay_stream_init(spdylay_stream *stream, int32_t stream_id);