mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-02-03 19:30:41 +01:00
Create the new nm-platform framework and implement link (or interface) management. The nm-platform serves as the point of contact between the rest of NetworkManager and the operating system. There are two backends for nm-platform: * NMFakePlatform: Fake kernel backend for testing purposes * NMLinuxPlatform: Linux kernel backend for actual use A comprehensive testsuite is included and will be extended with new feature additions. To enable the Linux part of the testsuite, use --enable-tests=root configure options and run 'make check' as root. Use --enable-code-coverage for code coverage support. ./autogen.sh --enable-tests=root --enable-code-coverage make make -C src/platform check-code-coverage Link features: * Retrieve the list of links * Translate between indexes and names * Discover device type * Add/remove dummy interfaces (for testing) Thanks to Thomas Graf for helping with libnl3 synchronization issues.
27 lines
527 B
C
27 lines
527 B
C
#include <stdlib.h>
|
|
#include <syslog.h>
|
|
|
|
#include "nm-fake-platform.h"
|
|
#include "nm-linux-platform.h"
|
|
#include "nm-logging.h"
|
|
|
|
int
|
|
main (int argc, char **argv)
|
|
{
|
|
GMainLoop *loop;
|
|
|
|
g_type_init ();
|
|
loop = g_main_loop_new (NULL, FALSE);
|
|
nm_logging_setup ("debug", NULL, NULL);
|
|
openlog (G_LOG_DOMAIN, LOG_CONS | LOG_PERROR, LOG_DAEMON);
|
|
|
|
g_assert (argc <= 2);
|
|
if (argc > 1 && !g_strcmp0 (argv[1], "--fake"))
|
|
nm_fake_platform_setup ();
|
|
else
|
|
nm_linux_platform_setup ();
|
|
|
|
g_main_loop_run (loop);
|
|
|
|
return EXIT_SUCCESS;
|
|
}
|