Fix possible NULL pointer dereference in GetNamedDSMSegment().
commit4372adfa24f2f5ddc587317d634b5389bd764106
authorNathan Bossart <nathan@postgresql.org>
Tue, 23 Jan 2024 02:44:38 +0000 (22 20:44 -0600)
committerNathan Bossart <nathan@postgresql.org>
Tue, 23 Jan 2024 02:44:38 +0000 (22 20:44 -0600)
tree3fac41ae7e0a99b9c4498157bb4f4e82e64bb947
parentcdd863480c27b406ac14e94f1fe122b98ea562b4
Fix possible NULL pointer dereference in GetNamedDSMSegment().

GetNamedDSMSegment() doesn't check whether dsm_attach() returns
NULL, which creates the possibility of a NULL pointer dereference
soon after.  To fix, emit an ERROR if dsm_attach() returns NULL.
This shouldn't happen, but it would be nice to avoid a segfault if
it does.  In passing, tidy up the surrounding code.

Reported-by: Tom Lane
Reviewed-by: Michael Paquier, Bharath Rupireddy
Discussion: https://postgr.es/m/3348869.1705854106%40sss.pgh.pa.us
src/backend/storage/ipc/dsm_registry.c