C程序连接WIFI

Connect to WIFI from C program

我目前正在使用这些库来列出可用网络:

#include <glib.h>
#include <NetworkManager.h>

(顺便说一句,效果很好)

现在我的问题是,如何从我的 C 程序连接到特定网络? 我似乎找不到任何好的文档或示例。

我发现的是:https://cgit.freedesktop.org/NetworkManager/NetworkManager/tree/examples/C/glib/add-connection-libnm.c

但它没有建议实际连接到添加的网络的方法。 而且,如果重要的话;此代码将 运行 在没有显示器的 Linux 机器上,所以我不是在寻找任何需要图形应用程序的东西。

有什么想法吗?

谢谢

您可以使用以下API

void
nm_client_activate_connection (NMClient *client,
                               NMConnection *connection,
                               NMDevice *device,
                               const char *specific_object,
                               NMClientActivateFn callback,
                               gpointer user_data);

此处描述了每个输入参数的详细信息

https://developer.gnome.org/libnm-glib/stable/NMClient.html#nm-client-activate-connection