src/http/ngx_http_request.c:481: error: Buffer Overrun L3
  Offset: [14, +oo] (⇐ [13, +oo] + 1) Size: [0, +oo] by call to `ngx_proxy_protocol_read`.

src/http/ngx_http_request.c:413:5: Assignment
411.     cscf = ngx_http_get_module_srv_conf(hc->conf_ctx, ngx_http_core_module);
412. 
413.     size = cscf->client_header_buffer_size;
         ^
414. 
415.     b = c->buffer;

src/http/ngx_http_request.c:418:13: Call
416. 
417.     if (b == NULL) {
418.         b = ngx_create_temp_buf(c->pool, size);
                 ^
419.         if (b == NULL) {
420.             ngx_http_close_connection(c);

src/core/ngx_buf.c:12:1: Parameter `size`
  10. 
  11. 
  12. ngx_buf_t *
      ^
  13. ngx_create_temp_buf(ngx_pool_t *pool, size_t size)
  14. {

src/core/ngx_buf.c:22:16: Call
  20.     }
  21. 
  22.     b->start = ngx_palloc(pool, size);
                     ^
  23.     if (b->start == NULL) {
  24.         return NULL;

src/core/ngx_palloc.c:127:16: Call
    125. #if !(NGX_DEBUG_PALLOC)
    126.     if (size <= pool->max) {
    127.         return ngx_palloc_small(pool, size, 1);
                        ^
    128.     }
    129. #endif

src/core/ngx_palloc.c:157:9: Assignment
      155. 
      156.     do {
      157.         m = p->d.last;
                   ^
      158. 
      159.         if (align) {

src/core/ngx_palloc.c:166:13: Assignment
      164.             p->d.last = m + size;
      165. 
      166.             return m;
                       ^
      167.         }
      168. 

src/core/ngx_palloc.c:127:9: Assignment
    125. #if !(NGX_DEBUG_PALLOC)
    126.     if (size <= pool->max) {
    127.         return ngx_palloc_small(pool, size, 1);
                 ^
    128.     }
    129. #endif

src/core/ngx_buf.c:22:5: Assignment
  20.     }
  21. 
  22.     b->start = ngx_palloc(pool, size);
          ^
  23.     if (b->start == NULL) {
  24.         return NULL;

src/core/ngx_buf.c:38:5: Assignment
  36.      */
  37. 
  38.     b->pos = b->start;
          ^
  39.     b->last = b->start;
  40.     b->end = b->last + size;

src/http/ngx_http_request.c:481:13: Call
479.         hc->proxy_protocol = 0;
480. 
481.         p = ngx_proxy_protocol_read(c, b->pos, b->last);
                 ^
482. 
483.         if (p == NULL) {

src/core/ngx_proxy_protocol.c:47:1: <Length trace>
45. 
46. 
47. u_char *
    ^
48. ngx_proxy_protocol_read(ngx_connection_t *c, u_char *buf, u_char *last)
49. {

src/core/ngx_proxy_protocol.c:47:1: Parameter `*buf`
  45. 
  46. 
  47. u_char *
      ^
  48. ngx_proxy_protocol_read(ngx_connection_t *c, u_char *buf, u_char *last)
  49. {

src/core/ngx_proxy_protocol.c:56:5: Assignment
  54.     static const u_char signature[] = "\r\n\r\n\0\r\nQUIT\n";
  55. 
  56.     p = buf;
          ^
  57.     len = last - buf;
  58. 

src/core/ngx_proxy_protocol.c:69:5: Assignment
  67.     }
  68. 
  69.     p += 6;
          ^
  70.     len -= 6;
  71. 

src/core/ngx_proxy_protocol.c:75:9: Assignment
  73.         ngx_log_debug0(NGX_LOG_DEBUG_CORE, c->log, 0,
  74.                        "PROXY protocol unknown protocol");
  75.         p += 7;
              ^
  76.         goto skip;
  77.     }

src/core/ngx_proxy_protocol.c:157:27: Array access: Offset: [14, +oo] (⇐ [13, +oo] + 1) Size: [0, +oo] by call to `ngx_proxy_protocol_read` 
  155. 
  156.     for ( /* void */ ; p < last - 1; p++) {
  157.         if (p[0] == CR && p[1] == LF) {
                                 ^
  158.             return p + 2;
  159.         }
