Mercurial > hg > nginx
comparison src/event/quic/ngx_event_quic_transport.c @ 8797:4715f3e669f1 quic
QUIC: updated specification references.
This includes updating citations and further clarification.
author | Sergey Kandaurov <pluknet@nginx.com> |
---|---|
date | Wed, 16 Jun 2021 11:55:12 +0300 |
parents | 81d491f0dc8c |
children | 4009f120cad4 |
comparison
equal
deleted
inserted
replaced
8796:1fec68e322d0 | 8797:4715f3e669f1 |
---|---|
1125 static ngx_int_t | 1125 static ngx_int_t |
1126 ngx_quic_frame_allowed(ngx_quic_header_t *pkt, ngx_uint_t frame_type) | 1126 ngx_quic_frame_allowed(ngx_quic_header_t *pkt, ngx_uint_t frame_type) |
1127 { | 1127 { |
1128 uint8_t ptype; | 1128 uint8_t ptype; |
1129 | 1129 |
1130 /* frame permissions per packet: 4 bits: IH01: 12.4, Table 3 */ | 1130 /* |
1131 * RFC 9000, 12.4. Frames and Frame Types: Table 3 | |
1132 * | |
1133 * Frame permissions per packet: 4 bits: IH01 | |
1134 */ | |
1131 static uint8_t ngx_quic_frame_masks[] = { | 1135 static uint8_t ngx_quic_frame_masks[] = { |
1132 /* PADDING */ 0xF, | 1136 /* PADDING */ 0xF, |
1133 /* PING */ 0xF, | 1137 /* PING */ 0xF, |
1134 /* ACK */ 0xD, | 1138 /* ACK */ 0xD, |
1135 /* ACK_ECN */ 0xD, | 1139 /* ACK_ECN */ 0xD, |
1240 | 1244 |
1241 ssize_t | 1245 ssize_t |
1242 ngx_quic_create_frame(u_char *p, ngx_quic_frame_t *f) | 1246 ngx_quic_create_frame(u_char *p, ngx_quic_frame_t *f) |
1243 { | 1247 { |
1244 /* | 1248 /* |
1245 * QUIC-recovery, section 2: | 1249 * RFC 9002, 2. Conventions and Definitions |
1246 * | 1250 * |
1247 * Ack-eliciting Frames: All frames other than ACK, PADDING, and | 1251 * Ack-eliciting frames: All frames other than ACK, PADDING, and |
1248 * CONNECTION_CLOSE are considered ack-eliciting. | 1252 * CONNECTION_CLOSE are considered ack-eliciting. |
1249 */ | 1253 */ |
1250 f->need_ack = 1; | 1254 f->need_ack = 1; |
1251 | 1255 |
1252 switch (f->type) { | 1256 switch (f->type) { |