30_sigaltstack.py 757 B

1234567891011121314151617181920212223242526272829
  1. import sys
  2. from regression import Regression
  3. loader = sys.argv[1]
  4. # Running sigaltstack
  5. regression = Regression(loader, "sigaltstack")
  6. messages = (
  7. "OK on sigaltstack in main thread before alarm",
  8. "&act == 0x",
  9. "sig 14 count 1 goes off with sp=0x",
  10. "OK on signal stack",
  11. "OK on sigaltstack in handler",
  12. "sig 14 count 2 goes off with sp=0x",
  13. "OK on signal stack",
  14. "OK on sigaltstack in handler",
  15. "sig 14 count 3 goes off with sp=0x",
  16. "OK on signal stack",
  17. "OK on sigaltstack in handler",
  18. "OK on sigaltstack in main thread",
  19. "done exiting",
  20. )
  21. regression.add_check(name="Sigaltstack Test",
  22. check=lambda res: all([x in res[0].out for x in messages]))
  23. rv = regression.run_checks()
  24. if rv: sys.exit(rv)