reentrant with sigsetjmp or siglongjmp