我刚刚回到C编程领域,我有一个我认为与链接器相关的问题。
我也是第一次使用cmake,所以这可能会增加我的挫败感。
我已经包含了一个第三方头文件,该文件包含我的代码试图使用的typedef,它包含以下行:
typedef struct pcap pcap_t;
所以我的代码有
pcap_t *var;
//later.....
var->fd;// this line throws the error
这会抛出
error: dereferencing pointer to incomplete type
那么,我只是遗漏了另一个包含文件,还是这是一个链接器问题?我正在用QtCreato
如果在一个目录中,假设有100个文件,其名称类似于file.pcap1、file.pcap2、file.pcap3、.....、file.pcap100。在shell脚本中,为了逐个读取这些文件,我编写了一行代码:
for $file in /root/*pcap*
do
Something
done
读取文件的顺序是什么?它们是按照文件名末尾的数字递增顺序读取的吗?这对于所有类型的linux机器来说都是一样的吗?
我试图使用Pcap.net进行一些PCAP文件分析,它花了大约5秒的时间循环处理1GB pcap中的所有可用数据包。
我现在试图在Python3上使用Scapy,无论出于什么原因,它被称为Kamene,但是解析文件需要花费很长的时间,CPU活动达到100%,所以我显然做错了什么。下面是代码:
from kamene.all import *
packetCount = 0
with PcapReader("C:\\Testing\\pcap\\maccdc2012_00000.pcap") as reader:
for packet in reader:
我找到了一个方便的packet capture program in C,然后把它编译到我家的Ubuntu机器上。原始代码的顶部是这样的: #include <pcap/pcap.h> 但是当我编译的时候,我看到了这个: root@ubuntu:/home/me# gcc -Wall packetCap.c
/tmp/cc2kDt1M.o: In function `main':
packetCap.c:(.text+0x33): undefined reference to `pcap_lookupdev'
packetCap.c:(.text+0xa0): u
我正在半程安装metasploit在我的Centos 5.9盒。在执行包安装过程中,我遇到了一个错误,安装了pcaprub,我试着单独运行它,作为gem安装pcaprub并在这里进行记录。安装了libpcap 0.9.4-15.el5.i386.rpm。我已经隐藏了大量的堆叠溢出,可悲的是,这是我的第一篇帖子。我肯定会错过一些基石,我的问题与日志,我已经张贴了,所以请不要犹豫,说明这一点。
gem install pcaprub
Building native extensions. This could take a while...
ERROR: Error installing pc
我有一个C++ JNI库(不是我自己写的),它使用libpcap的功能。实际上只有少数几个函数是从libpcap中使用的,但是在编译库时,每个函数都会被包含在内。也许是一面旗子?我已经搜索过了,似乎找不到答案。
较老的开发人员正在使用BJAM进行编译,而我最近受命将其转换为GNU。
以下是我的Make编译中的所有pcap符号:
00000000000197f0 T _pcap_activate
0000000000019d00 T _pcap_breakloop
0000000000019070 T _pcap_can_set_rfmon
0000000000019bb0 T _pcap_cl
为了同时在多个接口上启用捕获通信,我尝试安装wireshark 1.8.3。但是,我遇到了以下错误:
capture-pcap-util.c:274:1: error: static declaration of ‘pcap_datalink_name_to_val’ follows non-static declaration
/usr/local/include/pcap/pcap.h:326:5: note: previous declaration of ‘pcap_datalink_name_to_val’ was here
capture-pcap-util.c:289:1: e
#I used to have this, but I don't want to write to the disk
#
pcap="somefile.pcap"
tcpdump -n -r $pcap > all.txt
while read line; do
ARRAY[$c]="$line"
c=$((c+1))
done < all.txt
下面的操作失败了。
# I would prefer something like...
#
pcap="somefile.pcap"
while read
我在我的linux系统上安装了pcap库,但是当包含它时,我得到以下错误
/usr/include/pcap/bpf.h:88:1: error: unknown type name ‘u_int’
/usr/include/pcap/bpf.h:108:2: error: unknown type name ‘u_int’
/usr/include/pcap/bpf.h:1260:2: error: unknown type name ‘u_short’
/usr/include/pcap/bpf.h:1261:2: error: unknown type name ‘u_char’
-desktop:~/Desktop$ gcc -lpcap test.c -o test
/tmp/cczDYeHY.o: In function `main':
test.c:(.text+0xbc): undefined reference to `pcap_lookupdev'
test.c:(.text+0x11b): undefined reference to `pcap_lookupnet'
test.c:(.text+0x143): undefined reference to `pcap_open_live'
test.c:(.text+0x