guix/gnu/packages/patches/ganeti-procps-compat.patch
Marius Bakke b41ea5dcd4
gnu: ganeti: Fix build.
* gnu/packages/patches/ganeti-lens-compat.patch,
gnu/packages/patches/ganeti-procps-compat.patch,
gnu/packages/patches/ganeti-relax-dependencies.patch,
gnu/packages/patches/ganeti-reorder-arbitrary-definitions.patch,
gnu/packages/patches/ganeti-template-haskell-2.17.patch,
gnu/packages/patches/ganeti-template-haskell-2.18.patch: New files.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/virtualization.scm (ganeti)[source](patches): Add them.
2023-09-08 18:53:46 +08:00

45 lines
1.6 KiB
Diff

Fix compatibility with procps 4.
Negative UIDs are no longer allowed. Use a very high one instead.
Taken from upstream:
https://github.com/ganeti/ganeti/commit/9cd67e6a81c66ed326d68ea8c3241d14eea6550b
diff --git a/test/py/ganeti.uidpool_unittest.py b/test/py/ganeti.uidpool_unittest.py
index b2f5bc5cf2..2d9227cbf5 100755
--- a/test/py/ganeti.uidpool_unittest.py
+++ b/test/py/ganeti.uidpool_unittest.py
@@ -106,23 +106,24 @@ def testRequestUnusedUid(self):
# Check with a single, known unused user-id
#
- # We use "-1" here, which is not a valid user-id, so it's
- # guaranteed that it's unused.
- uid = uidpool.RequestUnusedUid(set([-1]))
- self.assertEqualValues(uid.GetUid(), -1)
+ # We use 2^30+42 here, which is a valid UID, but unlikely to be used on
+ # most systems (even as a subuid).
+ free_uid = 2**30 + 42
+ uid = uidpool.RequestUnusedUid(set([free_uid]))
+ self.assertEqualValues(uid.GetUid(), free_uid)
# Check uid-pool exhaustion
#
- # uid "-1" is locked now, so RequestUnusedUid is expected to fail
+ # free_uid is locked now, so RequestUnusedUid is expected to fail
self.assertRaises(errors.LockError,
uidpool.RequestUnusedUid,
- set([-1]))
+ set([free_uid]))
# Check unlocking
uid.Unlock()
# After unlocking, "-1" should be available again
- uid = uidpool.RequestUnusedUid(set([-1]))
- self.assertEqualValues(uid.GetUid(), -1)
+ uid = uidpool.RequestUnusedUid(set([free_uid]))
+ self.assertEqualValues(uid.GetUid(), free_uid)
if __name__ == "__main__":