mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-02-10 04:20:30 +01:00
platform: merge branch 'th/platform-test-netns-bgo790214'
https://bugzilla.gnome.org/show_bug.cgi?id=790214
This commit is contained in:
commit
7d26f540ee
2 changed files with 18 additions and 2 deletions
|
|
@ -290,6 +290,7 @@ _netns_new (GError **error)
|
|||
g_set_error (error, NM_UTILS_ERROR, NM_UTILS_ERROR_UNKNOWN,
|
||||
"Failed opening netns: %s",
|
||||
g_strerror (errsv));
|
||||
errno = errsv;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
|
@ -300,6 +301,7 @@ _netns_new (GError **error)
|
|||
"Failed opening mntns: %s",
|
||||
g_strerror (errsv));
|
||||
nm_close (fd_net);
|
||||
errno = errsv;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
|
@ -479,6 +481,7 @@ nmp_netns_new (void)
|
|||
if (!_stack_peek ()) {
|
||||
/* there are no netns instances. We cannot create a new one
|
||||
* (because after unshare we couldn't return to the original one). */
|
||||
errno = ENOTSUP;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
|
@ -508,6 +511,7 @@ nmp_netns_new (void)
|
|||
|
||||
self = _netns_new (&error);
|
||||
if (!self) {
|
||||
errsv = errno;
|
||||
_LOGE (NULL, "failed to create netns after unshare: %s", error->message);
|
||||
g_clear_error (&error);
|
||||
goto err_out;
|
||||
|
|
@ -518,6 +522,7 @@ nmp_netns_new (void)
|
|||
return self;
|
||||
err_out:
|
||||
_netns_switch_pop (NULL, _CLONE_NS_ALL);
|
||||
errno = errsv;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1916,6 +1916,7 @@ _test_netns_check_skip (void)
|
|||
static int support = -1;
|
||||
static int support_errsv = 0;
|
||||
NMPNetns *netns;
|
||||
gs_unref_object NMPNetns *netns2 = NULL;
|
||||
|
||||
netns = nmp_netns_get_current ();
|
||||
if (!netns) {
|
||||
|
|
@ -1931,10 +1932,20 @@ _test_netns_check_skip (void)
|
|||
support_errsv = errno;
|
||||
}
|
||||
if (!support) {
|
||||
_LOGD ("setns() failed with \"%s\". This indicates missing support (valgrind?)", g_strerror (support_errsv));
|
||||
g_test_skip ("No netns support (setns failed)");
|
||||
_LOGD ("setns() failed with \"%s\". This indicates missing support (valgrind?)", g_strerror (support_errsv));
|
||||
g_test_skip ("No netns support (setns failed)");
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
netns2 = nmp_netns_new ();
|
||||
if (!netns2) {
|
||||
/* skip tests for https://bugzilla.gnome.org/show_bug.cgi?id=790214 */
|
||||
g_assert_cmpint (errno, ==, EINVAL);
|
||||
g_test_skip ("No netns support to create another netns");
|
||||
return TRUE;
|
||||
}
|
||||
nmp_netns_pop (netns2);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue