# HG changeset patch # User Vladimir Homutov # Date 1587373937 -10800 # Node ID e0abe17a2878b1fae369b848673a2fe226ee487f # Parent de715cdd425723bbdd9f532645a8595323999a7d Removed source/destination swap from the function creating header. The function now creates a header according to fileds provided in the "pkt" argument without applying any logic regarding sending side. diff --git a/src/event/ngx_event_quic.c b/src/event/ngx_event_quic.c --- a/src/event/ngx_event_quic.c +++ b/src/event/ngx_event_quic.c @@ -2233,8 +2233,8 @@ ngx_quic_send_frames(ngx_connection_t *c pkt.log = c->log; pkt.level = start->level; - pkt.dcid = qc->dcid; - pkt.scid = qc->scid; + pkt.dcid = qc->scid; + pkt.scid = qc->dcid; pkt.payload = out; res.data = dst; diff --git a/src/event/ngx_event_quic_transport.c b/src/event/ngx_event_quic_transport.c --- a/src/event/ngx_event_quic_transport.c +++ b/src/event/ngx_event_quic_transport.c @@ -365,12 +365,12 @@ ngx_quic_create_long_header(ngx_quic_hea p = ngx_quic_write_uint32(p, NGX_QUIC_VERSION); + *p++ = pkt->dcid.len; + p = ngx_cpymem(p, pkt->dcid.data, pkt->dcid.len); + *p++ = pkt->scid.len; p = ngx_cpymem(p, pkt->scid.data, pkt->scid.len); - *p++ = pkt->dcid.len; - p = ngx_cpymem(p, pkt->dcid.data, pkt->dcid.len); - if (pkt->level == ssl_encryption_initial) { ngx_quic_build_int(&p, pkt->token.len); } @@ -408,7 +408,7 @@ ngx_quic_create_short_header(ngx_quic_he *p++ = pkt->flags; - p = ngx_cpymem(p, pkt->scid.data, pkt->scid.len); + p = ngx_cpymem(p, pkt->dcid.data, pkt->dcid.len); *pnp = p;