问题标签 [netlink]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1613 浏览

c - Netlink 导致内核恐慌

我试过这个程序。该程序向内核发送“hello”,内核再次向用户空间回复“hello”一次。

我的要求:用户必须发送“你好”并且必须每 2 秒接收一次消息。

我已经尝试过。

用户应用程序:添加了用于发送和接收的循环

内核模块:没有改变任何东西。

此代码仅适用于第一个循环。下次内核崩溃并在黑屏中出现内核恐慌错误。每次我都在重新启动。为什么它会给内核恐慌?我必须在哪里修改?我认为问题出在内核模块中。
核心:3.13.0-24-generic

0 投票
0 回答
1022 浏览

kernel - RTN_LOCAL 中的 RTN 缩写是什么?

我真的对 RTN_LOCAL 的名称感到困惑。

它在 linux/rtnetlink.h 中定义

};

我发现它在Linux内核的许多地方都使用过。

1.inet_addr_type()的返回值。

2.fib_alias->fatype的路由类型值。

3.fib_rule->action的action值。

0 投票
2 回答
1119 浏览

linux - 是否有任何用户级命令来检查内核映像是否支持 linux 中的 NETLINK?

在不使用任何示例 Netlink 代码的情况下,是否有任何命令或方法可以确定此内核映像是否支持 Netlink。例如。NETLINK_GENERIC 和 NETLINK_ISCSI 出现在 Linux 2.6.15.(netlink(7)) 那么我如何才能看到它支持哪个 Netlink 版本呢?

0 投票
1 回答
1226 浏览

c - libnl '尝试使用 nl80211 时参数无效 (-22)

我尝试扩展“iw”实用程序以允许它设置 802.11 争用窗口的最大和最小大小。但我总是得到一个“无效的参数(-22)”返回。

我编辑了 iw-3.15 源的 phy.c 并附加了

除了头文件本身之外,我找不到 nl80211 的任何好的文档或通过 netlink 使用它。我不确定我是否根据规范构造嵌套消息并且使用 U16 作为属性是有根据的猜测(它们在匹配的 cfg80211 中是 uint_16)。

根据我对 netlink 的理解,我的消息程序集应该是正确的,但由于我收到错误,我可能错了……有人有关于 nl80211 及其用法的良好文档吗?谁能发现我的问题?

0 投票
1 回答
358 浏览

c++ - netlink interface stat goto cross初始化错误

我正在尝试从 netlink 库中读取接口统计信息

下面是代码:

但是,我收到此错误....

有什么建议么?

0 投票
1 回答
141 浏览

c - 允许创建多少个 netlink 协议?

我正在测试以下 netlink 示例代码(内核版本 3.3.4),发现如果 NETLINK_PROTOCOL 设置为大于 31 的数字,模块插入将失败。如果 NETLINK_PROTOCOL 设置为 1、2、3,模块插入将成功, 5,17,19,21-31

这是否意味着只允许创建 32 个 netlink 协议?

0 投票
1 回答
470 浏览

linux - NETLINK_ROUTE 通道可以用于将消息从内核模块发送到用户空间程序吗?

我编写了一个用户空间程序,该程序使用带有协议的netlink套接字轮询可用以太网接口的运行状态。 但是现在我想编写一个内核模块,它使用 NETLINK_ROUTE 通道向这个用户空间程序发送定制的通知消息。 阅读手册页后,我无法得出结论是否可行。任何建议将不胜感激。NETLINK_ROUTE

netlinkrtnetlink

0 投票
0 回答
279 浏览

c - 如何使用 NETLINK_ROUTE 从内核模块向用户空间程序发送消息?

我编写了一个用户空间程序来监听NETLINK_ROUTE套接字协议族。现在我想编写一个内核模块来发送消息,NETLINK_ROUTE以便用户空间程序可以接收这些消息。我已经阅读了许多文章,例如THIS,但所有文章都通过定义新协议族或使用NETLINK_GENERIC. 我知道无法NETLINK_ROUTE使用它创建一个套接字,netlink_kernel_create因为它已经由内核创建。我想知道如何使用这个已经创建的套接字发送消息。

0 投票
1 回答
862 浏览

linux - 为什么即使包含“rtnetlink.h”,我也会收到“RTMGRP_LINK undeclared”错误?

我编写了一个内核模块,我想在其中向用户空间程序发送接口向上/向下通知。我已将消息组分配为RTMGRP_LINK并包含linux/rtnetlink.h头文件。但是当我编译模块时仍然收到以下错误:

有人可以建议为什么吗?

0 投票
0 回答
41 浏览

linux - 尝试使用 netlink 将数据包发送到终止的进程

我正在编写一个与用户进程交换数据的 linux 模块。如果模块尝试向终止的用户进程发送数据,系统可能会崩溃。为了避免崩溃,我们可以使用 kill() 函数来检查 pid 的可用性。但它不会每次都起作用,因为在 kill() 函数成功返回后可能会关闭用户进程。我想知道“是否存在可以处理这种情况的任何信号和信号处理机制?”。如果是,那么请解释一下。

谢谢..