struct quic_frame_builder {
int (*func)(unsigned char **buf, const unsigned char *end,
struct quic_frame *frm, struct quic_conn *conn);
+ uint32_t mask;
unsigned char flags;
- unsigned char mask;
};
const struct quic_frame_builder quic_frame_builders[] = {
struct quic_frame_parser {
int (*func)(struct quic_frame *frm, struct quic_conn *qc,
const unsigned char **buf, const unsigned char *end);
+ uint32_t mask;
unsigned char flags;
- unsigned char mask;
};
const struct quic_frame_parser quic_frame_parsers[] = {
}
parser = &quic_frame_parsers[frm->type];
- if (!(parser->mask & (1 << pkt->type))) {
+ if (!(parser->mask & (1U << pkt->type))) {
TRACE_DEVEL("unauthorized frame", QUIC_EV_CONN_PRSFRM, qc, frm);
return 0;
}
const struct quic_frame_builder *builder;
builder = &quic_frame_builders[frm->type];
- if (!(builder->mask & (1 << pkt->type))) {
+ if (!(builder->mask & (1U << pkt->type))) {
/* XXX This it a bug to send an unauthorized frame with such a packet type XXX */
TRACE_DEVEL("frame skipped", QUIC_EV_CONN_BFRM, qc, frm);
- BUG_ON(!(builder->mask & (1 << pkt->type)));
+ BUG_ON(!(builder->mask & (1U << pkt->type)));
}
if (end <= *buf) {