midas rpc broken, macos 12.6
midas rpc stopped working on macos 12.6 (for me). “odbedit -h localhost” crashes on startup, stack trace is corrupted, last correct stuff is rpc_call_encode(). if I enable “debug”, then odbedit runs ok. instead, fetest crashes with sensible output, indicates stack corruption:
encode rpc 37 "db_set_value"
encode param 0, flags 0x1, tid 7, arg_type 7, arg_size 4, param_size 8, memcpy 4
encode param 1, flags 0x1, tid 7, arg_type 7, arg_size 4, param_size 8, memcpy 4
encode param 2, flags 0x1, tid 12, arg_type 13, arg_size 10, param_size 16, memcpy pointer 10
encode param 3, flags 0x11, tid 13, arg_type 13, arg_size 62648151, param_size 62648152, memcpy pointer 62648151
zsh: segmentation fault (core dumped) fetest -h localhost
K.O.
Comments (3)
-
reporter -
reporter the look-ahead code was refactored and the crash is gone. also I no longer have macos 12.6. closing this bug. K.O.
-
reporter - changed status to resolved
no longer see this crash. no longer have macos 12.6. K.O.
- Log in to comment
maybe fixed commit fdf0fce80374016514af194a9641e2a697b32462. i do not see where corruption happens, it comes and goes as i add or remove printf() statements or move things on the stack. i suspect the non-kosher va_list look-ahead code in the RPC_VARARRAY branch. K.O.