
c语言
文章平均质量分 79
乱搭巴士
debug
展开
-
c语言:将pcap数据包按域名进行拆分
实现功能:提取一个pcap文件里的每个pcap数据包的五元组和根域名,插入到哈希表。提取一个pcap文件里的每个pcap数据包的五元组,去哈希表中查找,如果可以查到,取出对应的根域名,并且输出为pcap数据包,名字是根域名。以下为一些小记:(判断一个数据包是否有域名!用一个数组记录已存在的数据包,再决定进行新建pcap还是追加。根域名数组里有,说明已经有了pcap包,追加在后面。根域名数组里没有,新建一个。tmp代表这个根域名在数组的什么位置。)代码如下:#include<stdio原创 2020-12-08 17:01:05 · 589 阅读 · 1 评论 -
c语言,实现按照流来拆分数据包并保存为pcap包
在上一篇输出五元组的代码的基础上修改的。解析每个数据包,得到五元组对五元组进行处理,双向的五元组修正为同样的五元组(可以根据IP、端口的大小)判断五元组是否在已有的表格中,如果不在则插入(可以用数组)将这个包写到对应的输出数据包中#include<stdio.h>#include<string.h>#include<stdlib.h>#include<math.h>#include<netinet/in.h>typedef原创 2020-12-07 10:25:08 · 2412 阅读 · 3 评论 -
c语言-从pcap数据包中提取出host的值并提取出根域名
是在之前五元组信息的代码基础上改的,因此有一些冗余。主要思想就是字符串匹配。提取出host#include<stdio.h>#include<string.h>#include<stdlib.h>#include<math.h>#include<netinet/in.h>typedef int32_t bpf_int32;typedef u_int32_t bpf_u_int32;typedef u_int16_t u_shor原创 2020-12-04 17:36:36 · 860 阅读 · 0 评论 -
解决哈希冲突,拉链法的简单使用
在工业界,主要用拉链法来解决哈希冲突,称之为哈希桶的概念。请实现一个简单的哈希表,将如下信息,插入到哈希表中。哈希表的哈希桶数量设置为10,以员工编号为input来计算哈希后的key,哈希函数使用取余法,编码来实现,并且再编写一个单独的函数来打印出来所有存储的数据。编号姓名薪资198mark5000245jerry5600345ferry8000346roy7500基于数组+链表来实现,每个数组的元素指向一个链表(如果没有冲突,链表中只有一个原创 2020-11-20 16:23:43 · 1804 阅读 · 0 评论 -
c语言解析pcap文件,打印出每个数据包的五元组信息并输出到txt。
使用C语言,解析pcap文件,要求能够打印出每个数据包的五元组信息,并将五元组信息写入文件5_tuple.txt中。#include<stdio.h>#include<string.h>#include<stdlib.h>#include<math.h>#include<netinet/in.h>typedef int32_t bpf_int32;typedef u_int32_t bpf_u_int32;typedef u_int原创 2020-11-20 16:21:57 · 3313 阅读 · 2 评论 -
c语言实现用定时0的方式2完成1s计时,并实现跑马灯
单片机课老师的作业#include<stdio.h>#include<reg51.h>#include<intrins.h>unsigned int vT = 0;//计数unsigned char tmp=0;void main(){P1=0x00; //关闭p1口的所有灯TMOD=0x02; //确定定时器的工作模式为方式2TR0=1; ...原创 2019-11-14 09:26:06 · 1617 阅读 · 0 评论