diff options
Diffstat (limited to 'host/start-vmm/tests/bridge_remove.c')
-rw-r--r-- | host/start-vmm/tests/bridge_remove.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/host/start-vmm/tests/bridge_remove.c b/host/start-vmm/tests/bridge_remove.c new file mode 100644 index 0000000..9de41fe --- /dev/null +++ b/host/start-vmm/tests/bridge_remove.c @@ -0,0 +1,26 @@ +// SPDX-License-Identifier: EUPL-1.2+ +// SPDX-FileCopyrightText: 2022 Alyssa Ross <hi@alyssa.is> + +#include "../net-util.h" + +#include <assert.h> +#include <errno.h> +#include <sched.h> +#include <stdio.h> +#include <stdlib.h> + +int main(void) +{ + char name[IFNAMSIZ]; + int r; + + unshare(CLONE_NEWUSER|CLONE_NEWNET); + + r = snprintf(name, sizeof name, "br%d", rand()); + assert(r > 0 && (size_t)r < sizeof name); + if (bridge_add(name) == -1) + return errno == EPERM ? 77 : 1; + + assert(!bridge_delete(name)); + assert(!if_nametoindex(name)); +} |