-
Notifications
You must be signed in to change notification settings - Fork 101
Open
Description
On HP-UX/ia64:
# uname -a
HP-UX hp113-01 B.11.31 U ia64 1093729534 unlimited-user license
this happens in rc_send_server:
Program terminated with signal 10, Bus error.
BUS_ADRALN - Invalid address alignment. Please refer to the following link that helps in handling unaligned data: http://docs.hp.com/en/7730/newhelp0610/pragmas.htm#pragma-pack-ex3
#0 0x4023750:1 in rc_send_server (rh=0x200000004001eb30,
data=0x200000007fffd7c0, msg=0x200000007fffd83c "") at sendserver.c:339
339 auth->length = htons ((unsigned short) total_length);
(gdb) p &retries
$1 = (int *) 0x200000007fff96d4
(gdb) p &send_buffer[0]
$2 = 0x200000007fffb76d "\001\275"
(gdb) p &recv_buffer[0]
$3 = 0x200000007fff976d ""
(gdb) p &vector[0]
$4 = (
unsigned char *) 0x200000007fff975d "8\016\354\306\245\347\357\330\025\332\343\327\224R!\235"
(gdb) p &secret[0]
$5 = 0x200000007fff972c "testing123"
(gdb) p &secretlen
$6 = (long unsigned int *) 0x200000007fff96d8
(gdb) p auth
$7 = (struct pw_auth_hdr *) 0x200000007fffb76d
(gdb)
Note the odd address for auth and send_buffer (and recv_buffer).
A fix has been attached; instead of cast:ing between a misaligned char buffer and a struct, use a union to ensure proper alignment.
... ok, so not attached after all. I get "Something went really wrong, and we can't process that file." no matter in which form I try to upload the patch. Patch can be emailed on request.
Metadata
Metadata
Assignees
Labels
No labels