comparison src/event/ngx_event_quic_protection.c @ 8313:c625bde6cb77 quic

Fixed computing nonce again, by properly shifting packet number.
author Sergey Kandaurov <pluknet@nginx.com>
date Fri, 03 Apr 2020 13:49:40 +0300
parents 7ac890c18f5e
children fdda518d10ba
comparison
equal deleted inserted replaced
8312:053fa468b044 8313:c625bde6cb77
785 785
786 786
787 static void 787 static void
788 ngx_quic_compute_nonce(u_char *nonce, size_t len, uint64_t pn) 788 ngx_quic_compute_nonce(u_char *nonce, size_t len, uint64_t pn)
789 { 789 {
790 nonce[len - 4] ^= pn & 0xff000000; 790 nonce[len - 4] ^= (pn & 0xff000000) >> 24;
791 nonce[len - 3] ^= pn & 0x00ff0000; 791 nonce[len - 3] ^= (pn & 0x00ff0000) >> 16;
792 nonce[len - 2] ^= pn & 0x0000ff00; 792 nonce[len - 2] ^= (pn & 0x0000ff00) >> 8;
793 nonce[len - 1] ^= pn & 0x000000ff; 793 nonce[len - 1] ^= (pn & 0x000000ff);
794 } 794 }
795 795
796 796
797 ssize_t 797 ssize_t
798 ngx_quic_encrypt(ngx_quic_header_t *pkt, ngx_ssl_conn_t *ssl_conn, 798 ngx_quic_encrypt(ngx_quic_header_t *pkt, ngx_ssl_conn_t *ssl_conn,