LINUX.ORG.RU

bash. как получить код завершения процесса в «необычных» условиях


0

1

привет.

имеется бинарник. этот бинарник выполняется юзерами на чужой машине. при запуске бинарника используется systrace и timelimit. (думаю, понятно для чего)

проблема в том, что systrace не возвращает код завершения ограниченного процесса. (т.е. того, который он(systrace) ограничивает)

т.е., если бинарник выполнить только при использовании timelimit(timelimit [args] ./program), то timelimit вернет код в которым завершился процесс. а вот с systrace бяда-бяда %) он возвращает либо 0(в случае успешного завершения), либо 1(в случае если программа попыталась превысить «полномочия»).

т.е. все это в купе запускаю так: timelimit [args] systrace [args] ./program

подскажите, каким образом можно получить код завершения program при одновременном использовании timelimit и systrace?

благодарен.

★★★
Ответ на: комментарий от niXman

я без понятия, что такое systrace и timelimit, но, думаю, в данном контексте шелл и бинарник - одно и тоже

zolden ★★★★★
()

В описании написано, что можно указывать в политике какие syscall'ы логировать. Может настроить логирование exit()?

P.S. Ни разу не использовал systrace.

mky ★★★★★
()
Ответ на: комментарий от mky

хотя...если под логированием подразумевается именно логирование, то код возврата бинаря будет записан в лог, а не вернется как код возврата. придется еще и лог парсить...

niXman ★★★
() автор топика
Ответ на: комментарий от niXman

кстати, если мне не изменяет склероз, то systrace не надо каждый раз запускать, достаточно один раз, что бы создать policy. потом эта policy автоматом цепляется системой.

beastie ★★★★★
()
Ответ на: комментарий от beastie

ну...у бинарника имя все время разное, если быть точным. но, прочту еще раз доку.

других вариантов нет?

niXman ★★★
() автор топика
Ответ на: комментарий от beastie

все же нет. можно создать политику для определенного бинаря, и тогда systrace не нужно постоянно запускать. но если имена бинарей всегда разные(мой случай) - то нужно руками systrace запускать.

есть идеи?

niXman ★★★
() автор топика
Ответ на: комментарий от niXman

systrace без policy - это как бы оксюморон. кстати, почему имена всегда разные?

beastie ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.