亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? arp.c

?? QT2410嵌入式開發版的Bootloader源碼
?? C
字號:
//#include "../../inc/config.h"
#include "skbuff.h"
#include "eth.h"
#include "arp.h"
#include "utility.h" 



#define ARP_CACHE_SIZE   16

typedef struct arp_entry {
	unsigned char ar_ha[ETH_ALEN];
	unsigned long ar_ip;
} arp_entry;

static arp_entry arp_entrys;
static arp_entry arp_cache[ARP_CACHE_SIZE];
static int arp_chche_cur = 0;

int arp_init(void)
{
	memset(&arp_entrys, 0, sizeof(arp_entry));
	memset(arp_cache, 0, sizeof(arp_entry) * ARP_CACHE_SIZE);

	return 0;
}

int arp_add_entry(unsigned char *ha, unsigned long ip)
{
	memcpy(arp_entrys.ar_ha, ha, ETH_ALEN);
	arp_entrys.ar_ip = htonl(ip);

	return 0;
}

int arp_add_cache(unsigned char *ha, unsigned long ip)
{
	int i;

	for (i = 0; i < ARP_CACHE_SIZE; i++) {
		if (ip == arp_cache[i].ar_ip)
			break;
	}

	if (i == ARP_CACHE_SIZE) {
		i = arp_chche_cur;
//		arp_chche_cur = (arp_chche_cur + 1) % ARP_CACHE_SIZE;
		arp_chche_cur++;
		if(arp_chche_cur>=ARP_CACHE_SIZE)
			arp_chche_cur = 0;
	}

	memcpy(arp_cache[i].ar_ha, ha, ETH_ALEN);
	arp_cache[i].ar_ip = ip;

	return 0;
}

int arp_send_req(unsigned long ip)
{
	struct sk_buff *skb;
	struct arphdr *arp_req;	
	unsigned char broadcast[ETH_ALEN] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff};	

	skb = alloc_skb(ETH_HLEN + sizeof(struct arphdr));
	eth_skb_reserve(skb);
	arp_req = (struct arphdr *)skb_put(skb, sizeof(struct arphdr));

	arp_req->ar_hrd = htons(ARPHRD_ETHER);
	arp_req->ar_pro = htons(ETH_P_IP);
	arp_req->ar_hln = 0x06;
	arp_req->ar_pln = 0x04;
	arp_req->ar_op = htons(ARPOP_REQUEST);	
	memcpy((unsigned char *)arp_req->ar_sha, arp_entrys.ar_ha, ETH_ALEN);
	arp_req->ar_sip = arp_entrys.ar_ip;	
	memset((unsigned char *)arp_req->ar_tha, 0x00, ETH_ALEN);
	arp_req->ar_tip = htonl(ip);

	eth_send(skb, broadcast, ETH_P_ARP);

	return 0;
}

int arp_send_rsp(struct arphdr *arp_hdr)
{
	struct sk_buff *skb;
	struct arphdr *arp_rsp;	
	
	skb = alloc_skb(ETH_HLEN + sizeof(struct arphdr));
	eth_skb_reserve(skb);
	arp_rsp = (struct arphdr *)skb_put(skb, sizeof(struct arphdr));

	arp_rsp->ar_hrd = htons(ARPHRD_ETHER);
	arp_rsp->ar_pro = htons(ETH_P_IP);
	arp_rsp->ar_hln = 0x06;
	arp_rsp->ar_pln = 0x04;
	arp_rsp->ar_op = htons(ARPOP_REPLY);
	memcpy((unsigned char *)arp_rsp->ar_sha, arp_entrys.ar_ha, ETH_ALEN);
	arp_rsp->ar_sip = arp_hdr->ar_tip;
	memcpy((unsigned char *)arp_rsp->ar_tha, (unsigned char *)arp_hdr->ar_sha, ETH_ALEN);
	arp_rsp->ar_tip = arp_hdr->ar_sip;

	eth_send(skb, arp_hdr->ar_sha, ETH_P_ARP);

	return 0;
}

int arp_get_eth_addr(unsigned long ip, unsigned char *ha)
{
	int i;

	for (i = 0; i < ARP_CACHE_SIZE; i++) {
		if (htonl(ip) == arp_cache[i].ar_ip) {
			memcpy(ha, arp_cache[i].ar_ha, ETH_ALEN);
			break;
		}
	}

	if (i == ARP_CACHE_SIZE) {
		arp_send_req(ip);
		return -1;
	}

	return 0;
}

int arp_rcv_packet(struct sk_buff *skb)
{
	struct arphdr *arp_hdr = (struct arphdr *)(skb->data);

	if (arp_hdr->ar_tip != arp_entrys.ar_ip)
		return 0;

	if (arp_hdr->ar_op == htons(ARPOP_REQUEST))
		arp_send_rsp(arp_hdr);
	arp_add_cache(arp_hdr->ar_sha, arp_hdr->ar_sip);

	return 0;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文在线资源观看网站视频免费不卡 | 国产亚洲欧美激情| 亚洲色图都市小说| 激情图区综合网| 欧美三级日韩三级| 中文字幕av在线一区二区三区| 亚洲国产日产av| 国产精品一卡二卡在线观看| 欧美日韩国产一区| 中文字幕一区日韩精品欧美| 美女免费视频一区| 欧美日韩卡一卡二| 日韩美女视频一区| 粉嫩13p一区二区三区| 91精品国产福利| 亚洲自拍偷拍九九九| av动漫一区二区| 国产色产综合色产在线视频| 久久国产生活片100| 欧美日韩国产综合一区二区 | 99久久国产综合精品女不卡| 久久影院午夜片一区| 青青青伊人色综合久久| 欧美日韩视频专区在线播放| 一区二区高清免费观看影视大全| 成人黄色在线网站| 中文字幕第一区二区| 国产很黄免费观看久久| 精品少妇一区二区三区| 毛片av一区二区三区| 欧美一级欧美一级在线播放| 香蕉成人啪国产精品视频综合网| 一本一本大道香蕉久在线精品 | 欧美韩国日本一区| 国产精品亚洲一区二区三区妖精 | 欧美日韩高清不卡| 午夜精品一区二区三区免费视频| 欧美在线影院一区二区| 一个色妞综合视频在线观看| 91久久精品网| 亚洲成a人片在线观看中文| 欧美高清精品3d| 天天操天天干天天综合网| 欧美高清视频在线高清观看mv色露露十八 | 蜜臀av性久久久久蜜臀aⅴ四虎| 欧美精品在线观看播放| 免费在线观看一区| 欧美v国产在线一区二区三区| 国内欧美视频一区二区| 欧美激情中文字幕一区二区| 99久久综合国产精品| 一区二区三区在线免费| 欧美日韩国产免费| 麻豆成人综合网| 亚洲国产高清在线观看视频| 99久久国产免费看| 亚洲超碰97人人做人人爱| 欧美一二三在线| 处破女av一区二区| 一区二区三区在线影院| 欧美一级二级三级乱码| 国产精品91xxx| 樱桃视频在线观看一区| 日韩免费视频一区二区| www.亚洲在线| 日韩va亚洲va欧美va久久| 久久久影视传媒| 在线影院国内精品| 极品尤物av久久免费看| 日韩理论电影院| 日韩一区二区三区在线| www.日韩精品| 蜜臀av国产精品久久久久| 国产精品色呦呦| 制服丝袜成人动漫| av不卡一区二区三区| 日韩和的一区二区| 国产精品日产欧美久久久久| 欧美女孩性生活视频| 国产成人aaa| 久久狠狠亚洲综合| 一区二区三区欧美| 国产欧美日韩久久| 欧美日韩精品综合在线| 成人黄动漫网站免费app| 三级一区在线视频先锋| 亚洲欧洲精品一区二区三区不卡| 日韩欧美一区二区视频| 91成人免费在线视频| 高清在线成人网| 久久99精品久久久久久国产越南| 伊人开心综合网| 国产精品美女视频| 亚洲精品在线观看视频| 欧美日韩国产系列| 91免费国产在线| 国产69精品久久久久777| 韩国一区二区在线观看| 天堂va蜜桃一区二区三区 | 国产精品久久久久一区二区三区共| 7777精品久久久大香线蕉 | 一区二区三区鲁丝不卡| 国产精品国产自产拍在线| 久久婷婷国产综合精品青草| 日韩精品一区二区三区视频| 欧美日韩日日骚| 欧美日精品一区视频| 91传媒视频在线播放| 欧美专区在线观看一区| 色视频成人在线观看免| 波多野结衣亚洲| 99re亚洲国产精品| 97久久超碰国产精品| 色综合夜色一区| 色综合激情五月| 欧美午夜精品免费| 欧美熟乱第一页| 欧美丰满嫩嫩电影| 91精选在线观看| 欧美成人精品高清在线播放| 欧美一二三在线| 久久亚洲免费视频| 国产欧美日韩另类一区| 欧美国产精品劲爆| 国产精品欧美一区喷水| 国产精品久久久久久久蜜臀| 国产精品久久久久一区二区三区 | 国产欧美日韩久久| 中文字幕一区二区在线观看| 亚洲免费看黄网站| 亚洲第一主播视频| 日韩av网站免费在线| 久久成人麻豆午夜电影| 国产盗摄精品一区二区三区在线| 成人一区二区视频| 91黄色免费版| 制服.丝袜.亚洲.中文.综合| 精品国产91乱码一区二区三区| wwww国产精品欧美| 亚洲天堂成人在线观看| 亚洲国产视频一区二区| 另类综合日韩欧美亚洲| 国产a级毛片一区| 欧美在线综合视频| 精品盗摄一区二区三区| 亚洲视频小说图片| 日日骚欧美日韩| 成人一区二区视频| 欧美美女一区二区三区| 国产欧美一区二区三区沐欲| 亚洲精品国产无天堂网2021 | 亚洲人午夜精品天堂一二香蕉| 一区二区三区在线播放| 美女被吸乳得到大胸91| eeuss鲁片一区二区三区在线观看| 欧美日韩午夜影院| 精品电影一区二区| 亚洲一区在线视频| 国产精品羞羞答答xxdd| 日本韩国欧美一区二区三区| 精品人伦一区二区色婷婷| 亚洲日本免费电影| 国产一区久久久| 欧美日韩一区二区三区四区五区| 国产情人综合久久777777| 香蕉影视欧美成人| 成人免费视频播放| 精品日韩一区二区三区| 肉色丝袜一区二区| 色婷婷av一区二区三区大白胸| 国产性色一区二区| 免费欧美在线视频| 91黄色免费版| 亚洲特黄一级片| 国产馆精品极品| 日韩一级大片在线观看| 亚洲宅男天堂在线观看无病毒| 岛国av在线一区| 久久久久国产精品免费免费搜索| 日韩国产欧美三级| 在线精品亚洲一区二区不卡| 国产精品天干天干在观线| 国产日韩v精品一区二区| 成人性视频免费网站| 欧美伦理影视网| 激情成人综合网| 国产·精品毛片| 国产日韩欧美综合一区| 三级久久三级久久| 精品毛片乱码1区2区3区| 理论片日本一区| 久久久美女毛片| a亚洲天堂av| 亚洲精品大片www| 欧美一区二区成人| 日韩情涩欧美日韩视频| 日韩免费高清电影| 久久成人精品无人区| 欧美mv日韩mv亚洲| 狠狠色伊人亚洲综合成人|