comparison src/os/unix/ngx_process_cycle.c @ 7830:f2ff291bbdac

Restored zeroing of ngx_channel_t in ngx_pass_open_channel(). Due to structure's alignment, some uninitialized memory contents may have been passed between processes. Zeroing was removed in 0215ec9aaa8a. Reported by Johnny Wang.
author Ruslan Ermilov <ru@nginx.com>
date Thu, 22 Apr 2021 16:12:52 +0300
parents 0215ec9aaa8a
children b809f53d3f5b
comparison
equal deleted inserted replaced
7829:2851e4c7de03 7830:f2ff291bbdac
396 ngx_pass_open_channel(ngx_cycle_t *cycle) 396 ngx_pass_open_channel(ngx_cycle_t *cycle)
397 { 397 {
398 ngx_int_t i; 398 ngx_int_t i;
399 ngx_channel_t ch; 399 ngx_channel_t ch;
400 400
401 ngx_memzero(&ch, sizeof(ngx_channel_t));
402
401 ch.command = NGX_CMD_OPEN_CHANNEL; 403 ch.command = NGX_CMD_OPEN_CHANNEL;
402 ch.pid = ngx_processes[ngx_process_slot].pid; 404 ch.pid = ngx_processes[ngx_process_slot].pid;
403 ch.slot = ngx_process_slot; 405 ch.slot = ngx_process_slot;
404 ch.fd = ngx_processes[ngx_process_slot].channel[0]; 406 ch.fd = ngx_processes[ngx_process_slot].channel[0];
405 407