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

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

?? inet6.c

?? 一個輕量tcpip協議在移植在ucOS2系統上運行
?? C
字號:
/*
 * Copyright (c) 2001-2003 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>
 *
 */

/*-----------------------------------------------------------------------------------*/
/* inet6.c
 *
 * Functions common to all TCP/IP modules, such as the Internet checksum and the
 * byte order functions.
 *
 */
/*-----------------------------------------------------------------------------------*/

#include "lwip/opt.h"

#include "lwip/def.h"
#include "lwip/inet.h"


/*-----------------------------------------------------------------------------------*/
/* chksum:
 *
 * Sums up all 16 bit words in a memory portion. Also includes any odd byte.
 * This function is used by the other checksum functions.
 *
 * For now, this is not optimized. Must be optimized for the particular processor
 * arcitecture on which it is to run. Preferebly coded in assembler.
 */
/*-----------------------------------------------------------------------------------*/
static u32_t
chksum(void *dataptr, u16_t len)
{
  u16_t *sdataptr = dataptr;
  u32_t acc;
  
  
  for(acc = 0; len > 1; len -= 2) {
    acc += *sdataptr++;
  }

  /* add up any odd byte */
  if(len == 1) {
    acc += htons((u16_t)(*(u8_t *)dataptr) << 8);
  }

  return acc;

}
/*-----------------------------------------------------------------------------------*/
/* inet_chksum_pseudo:
 *
 * Calculates the pseudo Internet checksum used by TCP and UDP for a pbuf chain.
 */
/*-----------------------------------------------------------------------------------*/
u16_t
inet_chksum_pseudo(struct pbuf *p,
		   struct ip_addr *src, struct ip_addr *dest,
		   u8_t proto, u32_t proto_len)
{
  u32_t acc;
  struct pbuf *q;
  u8_t swapped, i;

  acc = 0;
  swapped = 0;
  for(q = p; q != NULL; q = q->next) {    
    acc += chksum(q->payload, q->len);
    while(acc >> 16) {
      acc = (acc & 0xffff) + (acc >> 16);
    }
    if(q->len % 2 != 0) {
      swapped = 1 - swapped;
      acc = ((acc & 0xff) << 8) | ((acc & 0xff00) >> 8);
    }
  }

  if(swapped) {
    acc = ((acc & 0xff) << 8) | ((acc & 0xff00) >> 8);
  }
  
  for(i = 0; i < 8; i++) {
    acc += ((u16_t *)src->addr)[i] & 0xffff;
    acc += ((u16_t *)dest->addr)[i] & 0xffff;
    while(acc >> 16) {
      acc = (acc & 0xffff) + (acc >> 16);
    }
  }
  acc += (u16_t)htons((u16_t)proto);
  acc += ((u16_t *)&proto_len)[0] & 0xffff;
  acc += ((u16_t *)&proto_len)[1] & 0xffff;

  while(acc >> 16) {
    acc = (acc & 0xffff) + (acc >> 16);
  }
  return ~(acc & 0xffff);
}
/*-----------------------------------------------------------------------------------*/
/* inet_chksum:
 *
 * Calculates the Internet checksum over a portion of memory. Used primarely for IP
 * and ICMP.
 */
/*-----------------------------------------------------------------------------------*/
u16_t
inet_chksum(void *dataptr, u16_t len)
{
  u32_t acc, sum;

  acc = chksum(dataptr, len);
  sum = (acc & 0xffff) + (acc >> 16);
  sum += (sum >> 16);
  return ~(sum & 0xffff);
}
/*-----------------------------------------------------------------------------------*/
u16_t
inet_chksum_pbuf(struct pbuf *p)
{
  u32_t acc;
  struct pbuf *q;
  u8_t swapped;
  
  acc = 0;
  swapped = 0;
  for(q = p; q != NULL; q = q->next) {
    acc += chksum(q->payload, q->len);
    while(acc >> 16) {
      acc = (acc & 0xffff) + (acc >> 16);
    }    
    if(q->len % 2 != 0) {
      swapped = 1 - swapped;
      acc = (acc & 0xff << 8) | (acc & 0xff00 >> 8);
    }
  }
 
  if(swapped) {
    acc = ((acc & 0xff) << 8) | ((acc & 0xff00) >> 8);
  }
  return ~(acc & 0xffff);
}
/*-----------------------------------------------------------------------------------*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91首页免费视频| 一本大道久久a久久综合| 亚洲高清三级视频| 国产精品美女久久久久久久久| 精品sm捆绑视频| 精品精品国产高清a毛片牛牛| 国产欧美一区二区精品性色超碰 | 高清免费成人av| 久久不见久久见免费视频7| 久久99热99| 国产精品自拍网站| 国产成人精品午夜视频免费| 成人免费看黄yyy456| 成人国产精品免费观看视频| jiyouzz国产精品久久| 一本一道波多野结衣一区二区| 日本高清不卡一区| 日韩免费电影一区| 国产日韩欧美精品一区| 中文文精品字幕一区二区| 中文字幕一区av| 午夜久久久久久| 精品亚洲国内自在自线福利| 成人精品一区二区三区中文字幕| 色婷婷精品久久二区二区蜜臂av | 久久97超碰国产精品超碰| 极品少妇xxxx精品少妇| 粉嫩高潮美女一区二区三区| 94-欧美-setu| 91精品国产福利| 欧美韩国日本一区| 亚洲成人av福利| 韩国v欧美v亚洲v日本v| 99久久久久久| 欧美成人欧美edvon| 自拍视频在线观看一区二区| 青娱乐精品在线视频| 国产91丝袜在线播放九色| 91在线视频在线| 欧美大片在线观看| 亚洲精品中文在线观看| 老司机一区二区| 91久久免费观看| 国产欧美精品国产国产专区| 一级精品视频在线观看宜春院 | 久久精品男人天堂av| 亚洲精品视频观看| 国产成人精品免费看| 欧美日韩极品在线观看一区| 欧美国产国产综合| 另类调教123区| 欧美私模裸体表演在线观看| 国产精品婷婷午夜在线观看| 日本不卡一区二区三区高清视频| 暴力调教一区二区三区| 日韩女优视频免费观看| 亚洲成人自拍一区| 色综合中文字幕| 国产精品国产成人国产三级| 91久久一区二区| 国产精品传媒视频| 国精产品一区一区三区mba桃花 | 精品免费国产一区二区三区四区| 怡红院av一区二区三区| 99在线精品视频| 久久久噜噜噜久噜久久综合| 秋霞电影一区二区| 欧美一卡二卡三卡| 日韩精品色哟哟| 5566中文字幕一区二区电影| 一区二区三区精品久久久| 波波电影院一区二区三区| 国产精品视频一二三区| 国产剧情一区在线| 久久精品一级爱片| 国产一区二区在线视频| 精品91自产拍在线观看一区| 捆绑调教美女网站视频一区| 精品少妇一区二区三区在线视频| 久久久夜色精品亚洲| 99久久伊人精品| 欧美成人精精品一区二区频| 日本不卡视频一二三区| 在线电影欧美成精品| 日韩—二三区免费观看av| 欧美精选在线播放| 蜜桃精品在线观看| 精品不卡在线视频| 成人亚洲精品久久久久软件| 国产精品久久久久久亚洲毛片| 99天天综合性| 亚洲午夜久久久久久久久久久| 欧美精品一级二级三级| 麻豆91在线观看| 国产欧美日韩视频在线观看| 丁香五精品蜜臀久久久久99网站 | 91精彩视频在线观看| 亚洲人123区| 亚洲精品在线电影| aaa欧美大片| 午夜影院在线观看欧美| 日韩一区二区电影在线| 国产成人免费av在线| 亚洲精品免费在线播放| 欧美人体做爰大胆视频| 国内外精品视频| |精品福利一区二区三区| 欧美专区亚洲专区| 国产在线播放一区三区四| 亚洲视频在线一区观看| 3d成人动漫网站| av电影天堂一区二区在线| 亚洲福利国产精品| 久久亚洲综合色| 欧美午夜电影网| 国产99精品视频| 五月天欧美精品| 国产精品久久福利| 欧美一区二区三区在线视频| 国产91对白在线观看九色| 日韩国产高清影视| 亚洲三级在线免费观看| 精品久久久久久久久久久院品网| 欧美一区二区网站| 色婷婷激情综合| 国产成人免费网站| 日日摸夜夜添夜夜添国产精品 | 日韩一区二区三区免费观看| 不卡在线观看av| 久久超碰97中文字幕| 亚洲狠狠爱一区二区三区| 久久精品夜色噜噜亚洲aⅴ| 欧美日韩视频在线观看一区二区三区 | 国产精品久久久久天堂| 欧美一二三区精品| 欧美在线999| av午夜精品一区二区三区| 激情五月播播久久久精品| 日韩中文字幕av电影| 亚洲免费观看高清| 国产精品成人免费| 久久嫩草精品久久久久| 这里是久久伊人| 欧美三级视频在线播放| 色婷婷综合在线| 播五月开心婷婷综合| 国产精品一卡二卡| 国产综合成人久久大片91| 久久99日本精品| 久草热8精品视频在线观看| 日韩电影网1区2区| 日韩国产在线观看| 日产国产高清一区二区三区| 午夜精品久久久久久久蜜桃app| 综合久久久久久| 亚洲免费观看高清完整| 亚洲女女做受ⅹxx高潮| 亚洲视频综合在线| 日韩毛片一二三区| 一区二区在线观看免费| 亚洲人一二三区| 亚洲一二三区在线观看| 亚洲大片在线观看| 亚洲成人午夜电影| 日本vs亚洲vs韩国一区三区二区| 午夜亚洲国产au精品一区二区| 亚洲国产美国国产综合一区二区| 亚洲va欧美va人人爽| 日韩精品免费视频人成| 老汉av免费一区二区三区| 国产精品自在欧美一区| 成人av在线资源| 欧洲人成人精品| 制服丝袜中文字幕亚洲| 欧美精品一区二区三区很污很色的 | 中文一区二区在线观看| 最新不卡av在线| 亚洲大片一区二区三区| 国产揄拍国内精品对白| gogogo免费视频观看亚洲一| 日本道色综合久久| 日韩精品资源二区在线| 国产欧美日韩中文久久| 亚洲图片欧美综合| 久久国产精品一区二区| 粉嫩aⅴ一区二区三区四区五区| 色呦呦网站一区| 日韩欧美亚洲一区二区| 中文字幕一区二区三区不卡在线| 亚洲伊人伊色伊影伊综合网| 精品一区在线看| 色偷偷一区二区三区| 精品少妇一区二区三区免费观看| 亚洲欧美综合色| 日本 国产 欧美色综合| jiyouzz国产精品久久| 91精品国产综合久久精品麻豆| 国产精品国产三级国产a| 免费一级片91| 91黄色免费看|