comparison src/event/ngx_event_quic_transport.c @ 8642:05b1ee464350 quic

QUIC: hide header creation internals in ngx_event_quic_transport.c. It doesn't make sense to expose the header type in a public function.
author Sergey Kandaurov <pluknet@nginx.com>
date Tue, 17 Nov 2020 21:32:06 +0000
parents fe53def49945
children dbad2d6d1898
comparison
equal deleted inserted replaced
8641:fe53def49945 8642:05b1ee464350
77 static ngx_int_t ngx_quic_parse_short_header(ngx_quic_header_t *pkt, 77 static ngx_int_t ngx_quic_parse_short_header(ngx_quic_header_t *pkt,
78 size_t dcid_len); 78 size_t dcid_len);
79 static ngx_int_t ngx_quic_parse_long_header(ngx_quic_header_t *pkt); 79 static ngx_int_t ngx_quic_parse_long_header(ngx_quic_header_t *pkt);
80 static ngx_int_t ngx_quic_supported_version(uint32_t version); 80 static ngx_int_t ngx_quic_supported_version(uint32_t version);
81 static ngx_int_t ngx_quic_parse_long_header_v1(ngx_quic_header_t *pkt); 81 static ngx_int_t ngx_quic_parse_long_header_v1(ngx_quic_header_t *pkt);
82
83 static size_t ngx_quic_create_long_header(ngx_quic_header_t *pkt, u_char *out,
84 size_t pkt_len, u_char **pnp);
85 static size_t ngx_quic_create_short_header(ngx_quic_header_t *pkt, u_char *out,
86 size_t pkt_len, u_char **pnp);
82 87
83 static ngx_int_t ngx_quic_frame_allowed(ngx_quic_header_t *pkt, 88 static ngx_int_t ngx_quic_frame_allowed(ngx_quic_header_t *pkt,
84 ngx_uint_t frame_type); 89 ngx_uint_t frame_type);
85 static size_t ngx_quic_create_ack(u_char *p, ngx_quic_ack_frame_t *ack); 90 static size_t ngx_quic_create_ack(u_char *p, ngx_quic_ack_frame_t *ack);
86 static size_t ngx_quic_create_stop_sending(u_char *p, 91 static size_t ngx_quic_create_stop_sending(u_char *p,
560 return p - start; 565 return p - start;
561 } 566 }
562 567
563 568
564 size_t 569 size_t
570 ngx_quic_create_header(ngx_quic_header_t *pkt, u_char *out, size_t pkt_len,
571 u_char **pnp)
572 {
573 return ngx_quic_short_pkt(pkt->flags)
574 ? ngx_quic_create_short_header(pkt, out, pkt_len, pnp)
575 : ngx_quic_create_long_header(pkt, out, pkt_len, pnp);
576 }
577
578
579 static size_t
565 ngx_quic_create_long_header(ngx_quic_header_t *pkt, u_char *out, 580 ngx_quic_create_long_header(ngx_quic_header_t *pkt, u_char *out,
566 size_t pkt_len, u_char **pnp) 581 size_t pkt_len, u_char **pnp)
567 { 582 {
568 u_char *p, *start; 583 u_char *p, *start;
569 584
610 625
611 return p - start; 626 return p - start;
612 } 627 }
613 628
614 629
615 size_t 630 static size_t
616 ngx_quic_create_short_header(ngx_quic_header_t *pkt, u_char *out, 631 ngx_quic_create_short_header(ngx_quic_header_t *pkt, u_char *out,
617 size_t pkt_len, u_char **pnp) 632 size_t pkt_len, u_char **pnp)
618 { 633 {
619 u_char *p, *start; 634 u_char *p, *start;
620 635