0

我正在使用 libnetfilter_queue 库。但我想不出在回调函数中提取有效负载的方法。我有点新。详细的帮助将不胜感激!实际上,我还希望从有效负载中提取 http 标头。

4

1 回答 1

2

一旦你得到了直到回调,使用以下 api 获取与 nfqueue 处理程序关联的文件描述符。

int nfq_fd (struct nfq_handle *h);

然后调用一个标准的 recv() ,它接受一个要读取的描述符、一个填充数据的缓冲区和缓冲区的长度。

if(recv(fd, buf, sizeof(buf), 0) >= 0)
        printf("pkt received in buf\n");

现在 buf 包含整个数据包。我认为没有可用于解析 http 的显式 api。您可以阅读 http 标准的规范并跳过字节到您要查找的字段。

libnetfilerqueue

于 2012-09-27T12:09:33.713 回答