Prevent shm_mq_send from reading uninitialized memory.
Robert Haas <rhaas@postgresql.org>
Prevent shm_mq_send from reading uninitialized memory. shm_mq_send_bytes didn't invariably initialize *bytes_written before returning, which would cause shm_mq_send to read from uninitialized memory and add the value it found there to mqh->mqh_partial_bytes. This could cause the next attempt to send a message via the queue to fail an assertion (if the queue was detached) or copy data from a garbage pointer value into the queue (if non-blocking mode was in use).
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/storage/ipc/shm_mq.c | modified | +7 −0 |