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

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

?? in_cksum.c

?? vxworks下的實(shí)現(xiàn)網(wǎng)絡(luò)TCPIP協(xié)議的原代碼
?? C
字號:
/* in_cksum.c - internet checksum routines *//* Copyright 1984-1996 Wind River Systems, Inc. */#include "copyright_wrs.h"/* * Copyright (c) 1988, 1992, 1993 *	The Regents of the University of California.  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. All advertising materials mentioning features or use of this software *    must display the following acknowledgement: *	This product includes software developed by the University of *	California, Berkeley and its contributors. * 4. Neither the name of the University nor the names of its contributors *    may be used to endorse or promote products derived from this software *    without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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. * *	@(#)in_cksum.c	8.1 (Berkeley) 6/10/93 *//*modification history--------------------01a,03mar96,vin  created from BSD4.4 stuff.*/#include "vxWorks.h"#include "net/systm.h"#include "net/mbuf.h"#include "logLib.h"#ifdef INCHKSUM_PORTABLE/* * Checksum routine for Internet Protocol family headers (Portable Version). * * This routine is very heavily used in the network * code and should be modified for each CPU to be as fast as possible. */#define ADDCARRY(x)  (x > 65535 ? x -= 65535 : x)#define REDUCE {l_util.l = sum; sum = l_util.s[0] + l_util.s[1]; ADDCARRY(sum);}intin_cksum(m, len)	register struct mbuf *m;	register int len;{	register u_short *w;	register int sum = 0;	register int mlen = 0;	int byte_swapped = 0;	union {		char	c[2];		u_short	s;	} s_util;	union {		u_short s[2];		long	l;	} l_util;	for (;m && len; m = m->m_next) {		if (m->m_len == 0)			continue;		w = mtod(m, u_short *);		if (mlen == -1) {			/*			 * The first byte of this mbuf is the continuation			 * of a word spanning between this mbuf and the			 * last mbuf.			 *			 * s_util.c[0] is already saved when scanning previous 			 * mbuf.			 */			s_util.c[1] = *(char *)w;			sum += s_util.s;			w = (u_short *)((char *)w + 1);			mlen = m->m_len - 1;			len--;		} else			mlen = m->m_len;		if (len < mlen)			mlen = len;		len -= mlen;		/*		 * Force to even boundary.		 */		if ((1 & (int) w) && (mlen > 0)) {			REDUCE;			sum <<= 8;			s_util.c[0] = *(u_char *)w;			w = (u_short *)((char *)w + 1);			mlen--;			byte_swapped = 1;		}		/*		 * Unroll the loop to make overhead from		 * branches &c small.		 */		while ((mlen -= 32) >= 0) {			sum += w[0]; sum += w[1]; sum += w[2]; sum += w[3];			sum += w[4]; sum += w[5]; sum += w[6]; sum += w[7];			sum += w[8]; sum += w[9]; sum += w[10]; sum += w[11];			sum += w[12]; sum += w[13]; sum += w[14]; sum += w[15];			w += 16;		}		mlen += 32;		while ((mlen -= 8) >= 0) {			sum += w[0]; sum += w[1]; sum += w[2]; sum += w[3];			w += 4;		}		mlen += 8;		if (mlen == 0 && byte_swapped == 0)			continue;		REDUCE;		while ((mlen -= 2) >= 0) {			sum += *w++;		}		if (byte_swapped) {			REDUCE;			sum <<= 8;			byte_swapped = 0;			if (mlen == -1) {				s_util.c[1] = *(char *)w;				sum += s_util.s;				mlen = 0;			} else				mlen = -1;		} else if (mlen == -1)			s_util.c[0] = *(char *)w;	}	if (len)		printf("cksum: out of data\n");	if (mlen == -1) {		/* The last mbuf has odd # of bytes. Follow the		   standard (the odd byte may be shifted left by 8 bits		   or not as determined by endian-ness of the machine) */		s_util.c[1] = 0;		sum += s_util.s;	}	REDUCE;	return (~sum & 0xffff);}#elseextern cksum();/********************************************************************************* in_cksum - Checksum routine for Internet Protocol family headers** Unportable version that calls architecture dependent routine cksum ().*/int in_cksum (m, len)    FAST struct mbuf *m;    FAST int len;    {    FAST u_short sum = 0;    FAST int mlen = 0;    FAST int slen = 0;    while ((m != NULL) && (len != 0))	{	if ((mlen = m->m_len) > 0)	    {	    if (len < mlen)		mlen = len;	    sum = cksum (sum, mtod(m, u_short *), mlen, slen);	    slen += mlen;	    len -= mlen;	    }	m = m->m_next;	}    if (len != 0)	logMsg ("cksum: out of data\n",0,0,0,0,0,0);    return (~sum & 0xffff);    }#endif /* INCHKSUM_PORTABLE */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
a亚洲天堂av| 久久99精品视频| 天天综合色天天| 免费人成网站在线观看欧美高清| 精品一区二区三区影院在线午夜| 国产不卡高清在线观看视频| 91在线你懂得| 91精品福利在线一区二区三区 | 亚洲欧洲日韩在线| 亚洲福利视频导航| 国产精品综合二区| 91黄色激情网站| 久久久久久久久久久久久女国产乱 | 一区二区三区精品在线| 久久99精品久久只有精品| 91在线观看一区二区| 欧美精品18+| 国产精品黄色在线观看| 天天色图综合网| 成人视屏免费看| 4438x成人网最大色成网站| 欧美国产国产综合| 日韩高清欧美激情| 成人开心网精品视频| 777午夜精品免费视频| 国产精品久久久久久久久免费相片 | 97国产精品videossex| 日韩午夜激情免费电影| 中文字幕一区二区5566日韩| 免费观看在线色综合| 色综合久久天天| 久久中文娱乐网| 日韩精品国产欧美| 日本道色综合久久| 国产精品亲子伦对白| 久久国产三级精品| 国产精品日日摸夜夜摸av| 午夜视频一区二区三区| 懂色av一区二区夜夜嗨| 91精品国产免费久久综合| 国产精品成人免费精品自在线观看| 免费成人结看片| 欧美视频在线播放| 亚洲天天做日日做天天谢日日欢 | 久久蜜桃av一区二区天堂| 亚洲高清免费观看| 色综合 综合色| 一区在线观看视频| 国产精品1024| 日韩欧美亚洲另类制服综合在线 | 欧美日韩中文字幕精品| 337p日本欧洲亚洲大胆精品 | 日本精品视频一区二区| 国产精品美女久久福利网站| 国内精品久久久久影院色| 日韩午夜三级在线| 婷婷成人综合网| 欧美色手机在线观看| 亚洲另类色综合网站| 99久久国产综合精品女不卡| 亚洲精品一区二区三区精华液 | 欧美xxxx在线观看| 午夜激情一区二区| 51午夜精品国产| 日本亚洲三级在线| 337p亚洲精品色噜噜| 亚洲成人黄色小说| 欧美日韩午夜在线视频| 亚洲成av人片一区二区| 欧美日韩一区二区电影| 亚洲一级二级三级在线免费观看| 99久久精品国产精品久久| 亚洲欧美日本在线| 一本大道av一区二区在线播放 | 555夜色666亚洲国产免| 日韩精品一级二级| 日韩午夜精品电影| 六月丁香婷婷久久| 337p日本欧洲亚洲大胆精品| 国产激情一区二区三区| 中文字幕精品一区| 成人免费的视频| 亚洲精品视频一区| 欧美色区777第一页| 蜜臀久久99精品久久久久久9| 日韩精品一区二区三区中文不卡| 精品一区二区三区视频在线观看| 精品国产一区二区三区av性色| 国产精品一区二区男女羞羞无遮挡| 久久er99热精品一区二区| www久久久久| 成人国产精品免费观看| 日韩美女久久久| 欧美亚洲综合在线| 日本最新不卡在线| 精品对白一区国产伦| 高清久久久久久| 一级日本不卡的影视| 欧美日韩国产bt| 国产精品自拍三区| 中文字幕一区在线观看视频| 欧洲一区在线电影| 久久精品免费看| 中文字幕不卡三区| 欧美日韩在线免费视频| 久久99九九99精品| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 色综合一个色综合亚洲| 人禽交欧美网站| 中文字幕av免费专区久久| 欧美综合亚洲图片综合区| 捆绑变态av一区二区三区| 中文字幕一区二区三区在线观看| 在线精品亚洲一区二区不卡| 麻豆一区二区三区| 久久精品人人做| 欧美日韩色综合| 国产精品正在播放| 亚洲丰满少妇videoshd| 久久精品一区二区三区av| 一本一道波多野结衣一区二区| 日韩电影免费在线观看网站| 国产精品美女久久久久久久久久久 | 国产精品美日韩| 欧美人牲a欧美精品| 国产风韵犹存在线视精品| 一区二区三区四区不卡在线| 欧美成人国产一区二区| 色欧美乱欧美15图片| 狠狠色丁香九九婷婷综合五月| 亚洲男人都懂的| 欧美电视剧免费全集观看| 91麻豆swag| 国产一区二区91| 日韩精品一级二级| 亚洲美女视频在线观看| 国产亚洲污的网站| 欧美精品 国产精品| 91小视频免费看| 久草这里只有精品视频| 亚洲一级在线观看| 亚洲欧美综合色| 久久亚洲精华国产精华液| 欧美精品一卡二卡| 色综合天天综合网天天狠天天| 另类小说图片综合网| 亚洲国产人成综合网站| 中文字幕av一区二区三区免费看| 日韩小视频在线观看专区| 欧美午夜视频网站| 99久久久精品| 国产成人av电影| 久久99精品国产麻豆婷婷| 亚洲一区av在线| 亚洲天堂中文字幕| 国产精品乱码久久久久久| 欧美成人精品福利| 欧美一区二区三区免费视频| 欧美色图一区二区三区| a美女胸又www黄视频久久| 国产福利一区二区三区视频在线| 麻豆91在线播放| 91精品国产综合久久婷婷香蕉 | 午夜精品久久一牛影视| 亚洲人成网站色在线观看| 欧美韩国日本综合| 久久久久97国产精华液好用吗| 精品女同一区二区| 日韩一二三四区| 日韩一区二区在线播放| 欧美日本国产一区| 777亚洲妇女| 91精品国产日韩91久久久久久| 欧美色综合网站| 欧美日韩在线观看一区二区| 欧美色精品天天在线观看视频| 色婷婷一区二区三区四区| 色视频一区二区| 91福利国产成人精品照片| 色美美综合视频| 日本伦理一区二区| 欧美性大战久久久| 欧美日韩国产乱码电影| 8x福利精品第一导航| 日韩一级高清毛片| 日韩三级视频中文字幕| 精品国一区二区三区| 久久一日本道色综合| 中文字幕第一页久久| 亚洲视频 欧洲视频| 亚洲欧美一区二区三区国产精品 | 欧美自拍偷拍一区| 欧美色中文字幕| 制服丝袜日韩国产| 欧美大片在线观看一区| 久久久久久久久一| 亚洲色图丝袜美腿| 一区二区三区四区在线播放| 亚洲成av人片一区二区梦乃| 蜜桃久久精品一区二区|