nghttp2_submit_priority_update

Synopsis

#include <nghttp2/nghttp2.h>

int nghttp2_submit_priority_update(nghttp2_session *session, uint8_t flags, int32_t stream_id, const uint8_t *field_value, size_t field_value_len)

Submits PRIORITY_UPDATE frame.

PRIORITY_UPDATE frame is a non-critical extension to HTTP/2, and defined in RFC 9218#section-7.1.

The flags is currently ignored and should be nghttp2_flag.NGHTTP2_FLAG_NONE.

The stream_id is the ID of stream which is prioritized. The field_value points to the Priority field value. The field_value_len is the length of the Priority field value.

If this function is called by server, nghttp2_error.NGHTTP2_ERR_INVALID_STATE is returned.

If nghttp2_settings_id.NGHTTP2_SETTINGS_NO_RFC7540_PRIORITIES of value of 0 is received by a remote endpoint (or it is omitted), this function does nothing and returns 0.

This function returns 0 if it succeeds, or one of the following negative error codes:

nghttp2_error.NGHTTP2_ERR_NOMEM

Out of memory

nghttp2_error.NGHTTP2_ERR_INVALID_STATE

The function is called from server side session

nghttp2_error.NGHTTP2_ERR_INVALID_ARGUMENT

The field_value_len is larger than 16380; or stream_id is 0.