From: Michael Tremer Date: Tue, 2 Aug 2022 09:02:54 +0000 (+0000) Subject: jail: Add flags X-Git-Tag: 0.9.28~642 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d639929bf47a2c4694fbcc89ba9fe979a7cd43b7;p=pakfire.git jail: Add flags Signed-off-by: Michael Tremer --- diff --git a/src/libpakfire/include/pakfire/jail.h b/src/libpakfire/include/pakfire/jail.h index fc00a0c96..53395a7f4 100644 --- a/src/libpakfire/include/pakfire/jail.h +++ b/src/libpakfire/include/pakfire/jail.h @@ -27,7 +27,7 @@ struct pakfire_jail; -int pakfire_jail_create(struct pakfire_jail** jail, struct pakfire* pakfire); +int pakfire_jail_create(struct pakfire_jail** jail, struct pakfire* pakfire, int flags); struct pakfire_jail* pakfire_jail_ref(struct pakfire_jail* jail); struct pakfire_jail* pakfire_jail_unref(struct pakfire_jail* jail); diff --git a/src/libpakfire/jail.c b/src/libpakfire/jail.c index f116085b5..35fcb1b3b 100644 --- a/src/libpakfire/jail.c +++ b/src/libpakfire/jail.c @@ -42,6 +42,9 @@ struct pakfire_jail { struct pakfire* pakfire; int nrefs; + // Flags + int flags; + // Environment char* env[ENVIRON_SIZE]; }; @@ -57,7 +60,7 @@ static void pakfire_jail_free(struct pakfire_jail* jail) { free(jail); } -int pakfire_jail_create(struct pakfire_jail** jail, struct pakfire* pakfire) { +int pakfire_jail_create(struct pakfire_jail** jail, struct pakfire* pakfire, int flags) { int r; // Allocate a new jail @@ -71,6 +74,9 @@ int pakfire_jail_create(struct pakfire_jail** jail, struct pakfire* pakfire) { // Initialize reference counter j->nrefs = 1; + // Store flags + j->flags = flags; + DEBUG(j->pakfire, "Allocated new jail at %p\n", j); // Set default environment diff --git a/tests/libpakfire/jail.c b/tests/libpakfire/jail.c index f9dfe4028..de3c56488 100644 --- a/tests/libpakfire/jail.c +++ b/tests/libpakfire/jail.c @@ -30,7 +30,7 @@ static int test_create(const struct test* t) { struct pakfire_jail* jail = NULL; // Create a new jail - ASSERT_SUCCESS(pakfire_jail_create(&jail, t->pakfire)); + ASSERT_SUCCESS(pakfire_jail_create(&jail, t->pakfire, 0)); // Destroy it ASSERT_NULL(pakfire_jail_unref(jail)); @@ -45,7 +45,7 @@ static int test_env(const struct test* t) { struct pakfire_jail* jail = NULL; // Create a new jail - ASSERT_SUCCESS(pakfire_jail_create(&jail, t->pakfire)); + ASSERT_SUCCESS(pakfire_jail_create(&jail, t->pakfire, 0)); // Check if the default variables are set ASSERT(pakfire_jail_get_env(jail, "LANG"));