Closed ghost closed 5 years ago
您好:
我在 32 位环境里遇到了一个问题,表现为所有 c++ 程序都会 Runtime Error ,因为调用了 SYS_write (系统调用编号为 4 )。
SYS_write
我想是这个部分出了问题:
https://github.com/shi-yang/jnoj/blob/7dde6646c4195859d6cae74818402001eb7822aa/judge/src/okcalls32.h#L51
这个位置应该有两个 {LANG_CV}, (参考 okcalls64.h),但是这里只写了一个。这会导致 judger 检查 32 位程序的系统调用时把 java 程序的合法调用集套用到 c++ 程序上。java 程序是不允许调用 SYS_write 的。
{LANG_CV},
:)
lmo
ok,感谢反馈
您好:
我在 32 位环境里遇到了一个问题,表现为所有 c++ 程序都会 Runtime Error ,因为调用了
SYS_write
(系统调用编号为 4 )。我想是这个部分出了问题:
https://github.com/shi-yang/jnoj/blob/7dde6646c4195859d6cae74818402001eb7822aa/judge/src/okcalls32.h#L51
这个位置应该有两个
{LANG_CV},
(参考 okcalls64.h),但是这里只写了一个。这会导致 judger 检查 32 位程序的系统调用时把 java 程序的合法调用集套用到 c++ 程序上。java 程序是不允许调用SYS_write
的。:)
lmo