I was trying out the "hello world" example in rlbox, and wanted to confirm that it guards against the library returning garbage. When I changed call_cb() in mylib.c to invoke cb(NULL), running hello crashed with a segfault.
As far as I can tell, the example doesn't seem to properly guard against the library function call_cb passing a null string to the cb() callback, in the verifier that hello_cb() passes to copy_and_verify_string.
It would be good if the example showed what kinds of library mis-behavior the validators guard against (maybe I'm confused about NULL being a misbehavior that rlbox is guarding against?), and/or guard against the library returning a null string pointer.
I was trying out the "hello world" example in rlbox, and wanted to confirm that it guards against the library returning garbage. When I changed
call_cb()inmylib.cto invokecb(NULL), runninghellocrashed with a segfault.As far as I can tell, the example doesn't seem to properly guard against the library function
call_cbpassing a null string to thecb()callback, in the verifier thathello_cb()passes tocopy_and_verify_string.It would be good if the example showed what kinds of library mis-behavior the validators guard against (maybe I'm confused about NULL being a misbehavior that rlbox is guarding against?), and/or guard against the library returning a null string pointer.