tree e089e6ba990bd3db9df9b93a6f6db2e69a2a53f4
parent bc933930a709e9bf96450b98805df1f6b57bfa1f
author Willy Tarreau <w@1wt.eu> 1494964265 +0200
committer Willy Tarreau <w@1wt.eu> 1509470178 +0100
encoding latin1

MINOR: h2: add a function to send a GOAWAY error frame

For now it's only used to report immediate errors by announcing the
highest known stream-id on the mux's error path. The function may be
used both while processing a stream or directly in relation with the
connection. The wake() callback will automatically ask for send access
if an error is reported. The function should be usable for graceful
shutdowns as well by simply setting h2c->last_sid to the highest
acceptable stream-id (2^31-1) prior to calling the function.

A connection flag (H2_CF_GOAWAY_SENT) is set once the frame was
successfully sent. It will be usable to detect when it's safe to
close the connection.

Another flag (H2_CF_GOAWAY_FAILED) is set in case of unrecoverable
error while trying to send. It will also be used to know when it's safe
to close the connection.
