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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? icmp6.c

?? FreeRtos Source code Version 4.04
?? C
字號(hào):
/* * Copyright (c) 2001-2004 Swedish Institute of Computer Science. * All rights reserved. * * Redistribution and use in source and binary forms, with or without modification, * are permitted provided that the following conditions are met: * * 1. Redistributions of source code must retain the above copyright notice, *    this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright notice, *    this list of conditions and the following disclaimer in the documentation *    and/or other materials provided with the distribution. * 3. The name of the author may not be used to endorse or promote products *    derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY * OF SUCH DAMAGE. * * This file is part of the lwIP TCP/IP stack. * * Author: Adam Dunkels <adam@sics.se> * *//* Some ICMP messages should be passed to the transport protocols. This   is not implemented. */#include "lwip/opt.h"#include "lwip/icmp.h"#include "lwip/inet.h"#include "lwip/ip.h"#include "lwip/def.h"#include "lwip/stats.h"voidicmp_input(struct pbuf *p, struct netif *inp){  unsigned char type;  struct icmp_echo_hdr *iecho;  struct ip_hdr *iphdr;  struct ip_addr tmpaddr;#ifdef ICMP_STATS  ++lwip_stats.icmp.recv;#endif /* ICMP_STATS */  /* TODO: check length before accessing payload! */  type = ((char *)p->payload)[0];  switch (type) {  case ICMP6_ECHO:    LWIP_DEBUGF(ICMP_DEBUG, ("icmp_input: ping\n"));    if (p->tot_len < sizeof(struct icmp_echo_hdr)) {      LWIP_DEBUGF(ICMP_DEBUG, ("icmp_input: bad ICMP echo received\n"));      pbuf_free(p);#ifdef ICMP_STATS      ++lwip_stats.icmp.lenerr;#endif /* ICMP_STATS */      return;    }    iecho = p->payload;    iphdr = (struct ip_hdr *)((char *)p->payload - IP_HLEN);    if (inet_chksum_pbuf(p) != 0) {      LWIP_DEBUGF(ICMP_DEBUG, ("icmp_input: checksum failed for received ICMP echo (%x)\n", inet_chksum_pseudo(p, &(iphdr->src), &(iphdr->dest), IP_PROTO_ICMP, p->tot_len)));#ifdef ICMP_STATS      ++lwip_stats.icmp.chkerr;#endif /* ICMP_STATS */    /*      return;*/    }    LWIP_DEBUGF(ICMP_DEBUG, ("icmp: p->len %d p->tot_len %d\n", p->len, p->tot_len));    ip_addr_set(&tmpaddr, &(iphdr->src));    ip_addr_set(&(iphdr->src), &(iphdr->dest));    ip_addr_set(&(iphdr->dest), &tmpaddr);    iecho->type = ICMP6_ER;    /* adjust the checksum */    if (iecho->chksum >= htons(0xffff - (ICMP6_ECHO << 8))) {      iecho->chksum += htons(ICMP6_ECHO << 8) + 1;    } else {      iecho->chksum += htons(ICMP6_ECHO << 8);    }    LWIP_DEBUGF(ICMP_DEBUG, ("icmp_input: checksum failed for received ICMP echo (%x)\n", inet_chksum_pseudo(p, &(iphdr->src), &(iphdr->dest), IP_PROTO_ICMP, p->tot_len)));#ifdef ICMP_STATS    ++lwip_stats.icmp.xmit;#endif /* ICMP_STATS */    /*    LWIP_DEBUGF("icmp: p->len %u p->tot_len %u\n", p->len, p->tot_len);*/    ip_output_if (p, &(iphdr->src), IP_HDRINCL,     iphdr->hoplim, IP_PROTO_ICMP, inp);    break;  default:    LWIP_DEBUGF(ICMP_DEBUG, ("icmp_input: ICMP type %d not supported.\n", (int)type));#ifdef ICMP_STATS    ++lwip_stats.icmp.proterr;    ++lwip_stats.icmp.drop;#endif /* ICMP_STATS */  }  pbuf_free(p);}voidicmp_dest_unreach(struct pbuf *p, enum icmp_dur_type t){  struct pbuf *q;  struct ip_hdr *iphdr;  struct icmp_dur_hdr *idur;  q = pbuf_alloc(PBUF_IP, 8 + IP_HLEN + 8, PBUF_RAM);  /* ICMP header + IP header + 8 bytes of data */  iphdr = p->payload;  idur = q->payload;  idur->type = (char)ICMP6_DUR;  idur->icode = (char)t;  memcpy((char *)q->payload + 8, p->payload, IP_HLEN + 8);  /* calculate checksum */  idur->chksum = 0;  idur->chksum = inet_chksum(idur, q->len);#ifdef ICMP_STATS  ++lwip_stats.icmp.xmit;#endif /* ICMP_STATS */  ip_output(q, NULL,      (struct ip_addr *)&(iphdr->src), ICMP_TTL, IP_PROTO_ICMP);  pbuf_free(q);}voidicmp_time_exceeded(struct pbuf *p, enum icmp_te_type t){  struct pbuf *q;  struct ip_hdr *iphdr;  struct icmp_te_hdr *tehdr;  LWIP_DEBUGF(ICMP_DEBUG, ("icmp_time_exceeded\n"));  q = pbuf_alloc(PBUF_IP, 8 + IP_HLEN + 8, PBUF_RAM);  iphdr = p->payload;  tehdr = q->payload;  tehdr->type = (char)ICMP6_TE;  tehdr->icode = (char)t;  /* copy fields from original packet */  memcpy((char *)q->payload + 8, (char *)p->payload, IP_HLEN + 8);  /* calculate checksum */  tehdr->chksum = 0;  tehdr->chksum = inet_chksum(tehdr, q->len);#ifdef ICMP_STATS  ++lwip_stats.icmp.xmit;#endif /* ICMP_STATS */  ip_output(q, NULL,      (struct ip_addr *)&(iphdr->src), ICMP_TTL, IP_PROTO_ICMP);  pbuf_free(q);}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲自拍偷拍欧美| 亚洲三级在线观看| 欧美一区在线视频| 亚洲美女淫视频| 日韩美女主播在线视频一区二区三区| 国产98色在线|日韩| 亚洲超碰97人人做人人爱| www成人在线观看| 精品视频1区2区3区| 成人综合婷婷国产精品久久蜜臀| 日精品一区二区| 椎名由奈av一区二区三区| 欧美成人伊人久久综合网| 91福利区一区二区三区| 懂色av一区二区三区蜜臀| 99久久久久久| 久久精品久久精品| 亚洲va欧美va人人爽| 国产精品盗摄一区二区三区| 日韩免费高清av| 欧美三级电影精品| 色综合中文字幕| 福利电影一区二区三区| 国产一区二区三区蝌蚪| 亚洲一区二区欧美| 中文字幕一区av| 成人av网站大全| 国产成人综合在线观看| 国产丝袜在线精品| 日韩欧美亚洲国产另类| 欧美精品自拍偷拍| 欧美在线观看视频一区二区三区 | 亚洲福利视频一区二区| 中文字幕一区免费在线观看| 久久久久久久久伊人| 日韩精品中午字幕| 日韩女优av电影| 日韩一级片在线观看| 91麻豆精品国产自产在线 | 午夜精品一区二区三区电影天堂| 亚洲视频在线观看一区| 亚洲色大成网站www久久九九| 中文字幕电影一区| 国产精品乱人伦一区二区| 欧美国产日韩亚洲一区| 欧美极品aⅴ影院| 国产精品免费aⅴ片在线观看| 欧美国产一区在线| 国产精品美女久久久久av爽李琼 | 欧美色图天堂网| 欧美日韩精品一区二区天天拍小说| 色成人在线视频| 欧美综合亚洲图片综合区| 欧美午夜视频网站| 欧美精品在线观看播放| 欧美一级国产精品| 精品国产露脸精彩对白 | 国产午夜亚洲精品羞羞网站| 久久精品视频在线看| 中文字幕一区在线观看视频| 亚洲色图制服诱惑| 一区二区三区欧美久久| 亚洲成av人片在www色猫咪| 午夜国产精品一区| 麻豆一区二区三| 国产一区二区三区四区五区入口 | 91在线视频18| 欧美三日本三级三级在线播放| 欧美日韩在线播放三区四区| 制服丝袜日韩国产| 久久免费国产精品| 亚洲免费观看在线视频| 天天综合色天天综合| 国产一区二区三区观看| 波多野结衣一区二区三区| 色婷婷综合久久久中文字幕| 欧美精品一级二级三级| 久久久精品天堂| 亚洲美女区一区| 免费精品视频在线| 高清国产午夜精品久久久久久| 一本大道久久a久久综合| 91精品国产欧美一区二区18| 国产人成亚洲第一网站在线播放| 亚洲欧美国产77777| 日本欧美一区二区三区| 懂色av一区二区三区免费观看| 在线观看区一区二| 久久午夜老司机| 亚洲一区二区欧美日韩| 国产成人99久久亚洲综合精品| 日本精品免费观看高清观看| 日韩一级精品视频在线观看| 国产精品国产三级国产专播品爱网| 亚洲图片欧美色图| 国产不卡免费视频| 欧美精品免费视频| 亚洲视频在线观看三级| 看电视剧不卡顿的网站| 色综合 综合色| www国产精品av| 丝袜诱惑亚洲看片| 99麻豆久久久国产精品免费优播| 日韩欧美电影一区| 一区二区不卡在线播放 | 成人性生交大片| 91麻豆精品国产91久久久使用方法| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 成人18视频在线播放| 日韩一级免费观看| 亚洲一区在线视频| 91网站在线观看视频| 久久久久综合网| 麻豆一区二区三| 欧美日韩中文另类| 一区二区三区日本| 99久久国产综合色|国产精品| 精品国产一区二区三区不卡 | 91极品视觉盛宴| 国产精品毛片a∨一区二区三区| 久久狠狠亚洲综合| 91精品国产麻豆| 亚洲二区在线观看| 91成人免费在线| 中文字幕在线一区二区三区| 国产福利一区二区三区视频在线| 欧美一级理论性理论a| 亚洲第一狼人社区| 欧美性受极品xxxx喷水| 亚洲女同一区二区| 91影院在线观看| 日韩一区欧美一区| a亚洲天堂av| 国产精品免费av| 成人av网站在线观看| 欧美激情在线看| 国产白丝精品91爽爽久久| 久久久91精品国产一区二区精品| 韩国精品一区二区| 久久综合久久综合久久综合| 国产自产视频一区二区三区| 精品国产一区a| 国产精品1区二区.| 中文字幕不卡一区| 99久久精品国产观看| 成人欧美一区二区三区在线播放| 白白色亚洲国产精品| 最好看的中文字幕久久| 91影视在线播放| 亚洲中国最大av网站| 欧美午夜精品免费| 丝袜美腿一区二区三区| 欧美精品一级二级| 精品一区二区三区欧美| 久久婷婷成人综合色| 懂色av一区二区三区蜜臀| 亚洲视频一二三区| 欧美日韩在线一区二区| 日韩成人精品在线| 久久综合999| 不卡一区二区三区四区| 一区二区三区在线高清| 欧美日韩激情一区二区| 精品无人码麻豆乱码1区2区| 国产亚洲综合色| 日韩视频123| 久久九九国产精品| 国产精品水嫩水嫩| 亚洲国产精品久久人人爱蜜臀| 国产成a人亚洲| 91久久精品一区二区三区| 久久九九全国免费| 国产精品久久久久久久裸模| 色综合久久中文字幕| 国产精品乱人伦中文| 在线观看不卡视频| 免费久久精品视频| 国产精品卡一卡二卡三| 精品视频1区2区3区| 国内精品自线一区二区三区视频| 欧美国产日韩在线观看| 欧美性xxxxxx少妇| 国产揄拍国内精品对白| 亚洲女人的天堂| 欧美第一区第二区| 91污片在线观看| 精品一二三四区| 日韩专区中文字幕一区二区| 久久久久9999亚洲精品| 欧美在线啊v一区| 国产成人精品1024| 亚洲国产视频网站| 欧美国产日产图区| 91麻豆精品国产91久久久资源速度 | 欧美日韩另类一区| 国产麻豆视频一区| 亚洲成a人v欧美综合天堂下载| 久久精品亚洲乱码伦伦中文| 欧美乱熟臀69xxxxxx| 播五月开心婷婷综合|