def test_setcaps(self): """Test the setcaps function""" if self.am_root: prctl.set_caps((prctl.CAP_SETUID, prctl.ALL_FLAGS, True)) else: self.assertRaises(OSError, prctl.set_caps, (prctl.CAP_SETUID, prctl.ALL_FLAGS, True)) self.assertEqual( prctl.get_caps((prctl.CAP_SETUID, prctl.ALL_FLAGS)), { prctl.CAP_EFFECTIVE: { prctl.CAP_SETUID: self.am_root }, prctl.CAP_PERMITTED: { prctl.CAP_SETUID: self.am_root }, prctl.CAP_INHERITABLE: { prctl.CAP_SETUID: self.am_root } }) prctl.set_caps((prctl.CAP_SETUID, prctl.ALL_FLAGS, False)) self.assertEqual( prctl.get_caps((prctl.CAP_SETUID, prctl.ALL_FLAGS)), { prctl.CAP_EFFECTIVE: { prctl.CAP_SETUID: False }, prctl.CAP_PERMITTED: { prctl.CAP_SETUID: False }, prctl.CAP_INHERITABLE: { prctl.CAP_SETUID: False } }) self.assertRaises(OSError, prctl.set_caps, (prctl.CAP_SETUID, prctl.ALL_FLAGS, True))
def test_getcaps(self): """Test the get_caps function""" self.assertEqual(prctl.get_caps(), {prctl.CAP_EFFECTIVE: {}, prctl.CAP_INHERITABLE: {}, prctl.CAP_PERMITTED: {}}) self.assertEqual(prctl.get_caps((prctl.CAP_SYS_ADMIN, prctl.ALL_FLAGS),(prctl.CAP_NET_ADMIN, prctl.CAP_EFFECTIVE)), {prctl.CAP_EFFECTIVE: {prctl.CAP_SYS_ADMIN: self.am_root, prctl.CAP_NET_ADMIN: self.am_root}, prctl.CAP_INHERITABLE: {prctl.CAP_SYS_ADMIN: False}, prctl.CAP_PERMITTED: {prctl.CAP_SYS_ADMIN: self.am_root}}) self.assertEqual(prctl.get_caps(([prctl.CAP_SYS_ADMIN,prctl.CAP_NET_ADMIN], [prctl.CAP_EFFECTIVE,prctl.CAP_PERMITTED])), {prctl.CAP_EFFECTIVE: {prctl.CAP_SYS_ADMIN: self.am_root, prctl.CAP_NET_ADMIN: self.am_root}, prctl.CAP_INHERITABLE: {}, prctl.CAP_PERMITTED: {prctl.CAP_SYS_ADMIN: self.am_root, prctl.CAP_NET_ADMIN: self.am_root}}) self.assertRaises(KeyError, prctl.get_caps, (prctl.CAP_SYS_ADMIN,'abc')) def fail(): prctl.get_caps((1234,prctl.ALL_FLAGS)) self.assertRaises(ValueError, fail)
def test_setcaps(self): """Test the setcaps function""" if self.am_root: prctl.set_caps((prctl.CAP_SETUID, prctl.ALL_FLAGS, True)) else: self.assertRaises(OSError, prctl.set_caps, (prctl.CAP_SETUID, prctl.ALL_FLAGS, True)) self.assertEqual(prctl.get_caps((prctl.CAP_SETUID, prctl.ALL_FLAGS)), {prctl.CAP_EFFECTIVE: {prctl.CAP_SETUID: self.am_root}, prctl.CAP_PERMITTED: {prctl.CAP_SETUID: self.am_root}, prctl.CAP_INHERITABLE: {prctl.CAP_SETUID: self.am_root}}) prctl.set_caps((prctl.CAP_SETUID, prctl.ALL_FLAGS, False)) self.assertEqual(prctl.get_caps((prctl.CAP_SETUID, prctl.ALL_FLAGS)), {prctl.CAP_EFFECTIVE: {prctl.CAP_SETUID: False}, prctl.CAP_PERMITTED: {prctl.CAP_SETUID: False}, prctl.CAP_INHERITABLE: {prctl.CAP_SETUID: False}}) self.assertRaises(OSError, prctl.set_caps, (prctl.CAP_SETUID, prctl.ALL_FLAGS, True))
def fail(): prctl.get_caps((1234, prctl.ALL_FLAGS))
def fail(): prctl.get_caps((1234,prctl.ALL_FLAGS))