summaryrefslogtreecommitdiff
path: root/src/common/exec.c
diff options
context:
space:
mode:
authorTom Lane2017-03-26 21:35:35 +0000
committerTom Lane2017-03-26 21:35:35 +0000
commit4c051c41d63e8462971c13956a38030de9c35c51 (patch)
tree2884c141706cb38cfad4519cf8170060888acd17 /src/common/exec.c
parent7cbd944662854a0a5264895bcba3ce7f9bfd1c1f (diff)
Fix unportable disregard of alignment requirements in RADIUS code.
The compiler is entitled to store a char[] local variable with no particular alignment requirement. Our RADIUS code cavalierly took such a local variable and cast its address to a struct type that does have alignment requirements. On an alignment-picky machine this would lead to bus errors. To fix, declare the local variable honestly, and then cast its address to char * for use in the I/O calls. Given the lack of field complaints, there must be very few if any people affected; but nonetheless this is a clear portability issue, so back-patch to all supported branches. Noted while looking at a Coverity complaint in the same code.
Diffstat (limited to 'src/common/exec.c')
0 files changed, 0 insertions, 0 deletions