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

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

?? mcast_kern.c

?? Linux Kernel 2.6.9 for OMAP1710
?? C
字號:
/* * user-mode-linux networking multicast transport * Copyright (C) 2001 by Harald Welte <laforge@gnumonks.org> * * based on the existing uml-networking code, which is * Copyright (C) 2001 Lennert Buytenhek (buytenh@gnu.org) and  * James Leu (jleu@mindspring.net). * Copyright (C) 2001 by various other people who didn't put their name here. * * Licensed under the GPL. */#include "linux/kernel.h"#include "linux/init.h"#include "linux/netdevice.h"#include "linux/etherdevice.h"#include "linux/in.h"#include "linux/inet.h"#include "net_kern.h"#include "net_user.h"#include "mcast.h"struct mcast_init {	char *addr;	int port;	int ttl;};void mcast_init(struct net_device *dev, void *data){	struct uml_net_private *pri;	struct mcast_data *dpri;	struct mcast_init *init = data;	pri = dev->priv;	dpri = (struct mcast_data *) pri->user;	dpri->addr = init->addr;	dpri->port = init->port;	dpri->ttl = init->ttl;	dpri->dev = dev;	printk("mcast backend ");	printk("multicast adddress: %s:%u, TTL:%u ",	       dpri->addr, dpri->port, dpri->ttl);	printk("\n");}static int mcast_read(int fd, struct sk_buff **skb, struct uml_net_private *lp){	*skb = ether_adjust_skb(*skb, ETH_HEADER_OTHER);	if(*skb == NULL) return(-ENOMEM);	return(net_recvfrom(fd, (*skb)->mac.raw, 			    (*skb)->dev->mtu + ETH_HEADER_OTHER));}static int mcast_write(int fd, struct sk_buff **skb,			struct uml_net_private *lp){	return mcast_user_write(fd, (*skb)->data, (*skb)->len, 				 (struct mcast_data *) &lp->user);}static struct net_kern_info mcast_kern_info = {	.init			= mcast_init,	.protocol		= eth_protocol,	.read			= mcast_read,	.write			= mcast_write,};int mcast_setup(char *str, char **mac_out, void *data){	struct mcast_init *init = data;	char *port_str = NULL, *ttl_str = NULL, *remain;	char *last;	int n;	*init = ((struct mcast_init)		{ .addr 	= "239.192.168.1",		  .port 	= 1102,		  .ttl 		= 1 });	remain = split_if_spec(str, mac_out, &init->addr, &port_str, &ttl_str,			       NULL);	if(remain != NULL){		printk(KERN_ERR "mcast_setup - Extra garbage on "		       "specification : '%s'\n", remain);		return(0);	}		if(port_str != NULL){		n = simple_strtoul(port_str, &last, 10);		if((*last != '\0') || (last == port_str)){			printk(KERN_ERR "mcast_setup - Bad port : '%s'\n", 			       port_str);			return(0);		}		init->port = htons(n);	}	if(ttl_str != NULL){		init->ttl = simple_strtoul(ttl_str, &last, 10);		if((*last != '\0') || (last == ttl_str)){			printk(KERN_ERR "mcast_setup - Bad ttl : '%s'\n", 			       ttl_str);			return(0);		}	}	printk(KERN_INFO "Configured mcast device: %s:%u-%u\n", init->addr,	       init->port, init->ttl);	return(1);}static struct transport mcast_transport = {	.list 		= LIST_HEAD_INIT(mcast_transport.list),	.name 		= "mcast",	.setup  	= mcast_setup,	.user 		= &mcast_user_info,	.kern 		= &mcast_kern_info,	.private_size 	= sizeof(struct mcast_data),	.setup_size 	= sizeof(struct mcast_init),};static int register_mcast(void){	register_transport(&mcast_transport);	return(1);}__initcall(register_mcast);/* * Overrides for Emacs so that we follow Linus's tabbing style. * Emacs will notice this stuff at the end of the file and automatically * adjust the settings for this buffer only.  This must remain at the end * of the file. * --------------------------------------------------------------------------- * Local variables: * c-file-style: "linux" * End: */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产aⅴ一区二区| 日韩精品一区二区三区视频 | 亚洲特级片在线| 欧美日韩精品一二三区| 国产suv精品一区二区三区| 亚洲一区免费视频| 中文字幕乱码日本亚洲一区二区| 精品视频免费在线| 91欧美激情一区二区三区成人| 麻豆国产精品视频| 亚洲一二三区在线观看| 亚洲国产精品成人综合| 日韩亚洲欧美中文三级| 在线观看日韩一区| 99久久99久久精品免费看蜜桃| 久久精品国产秦先生| 午夜a成v人精品| 亚洲精品你懂的| 欧美激情一区二区在线| 亚洲精品一区二区三区在线观看| 欧美在线一二三| 色综合久久88色综合天天6| 岛国一区二区三区| 韩国三级在线一区| 另类人妖一区二区av| 午夜精品福利视频网站| 亚洲综合小说图片| 一区二区久久久久久| 国产精品成人在线观看| 亚洲国产精品国自产拍av| 精品成人私密视频| 精品国精品国产| 欧美一区二区三区在线| 欧美丰满一区二区免费视频| 欧美三级日韩三级国产三级| 日本久久一区二区三区| 色综合色综合色综合 | 精品综合久久久久久8888| 亚洲成av人片一区二区三区| 一区二区在线观看免费| 亚洲精品成人精品456| 亚洲男人天堂av网| 夜色激情一区二区| 亚洲精品五月天| 亚洲精品欧美二区三区中文字幕| 亚洲色图在线看| 一区二区国产盗摄色噜噜| 亚洲激情第一区| 亚洲一区二区视频| 免费观看在线色综合| 美腿丝袜在线亚洲一区| 韩国一区二区三区| 成人高清av在线| 91色|porny| 欧美日韩视频第一区| 欧美精品vⅰdeose4hd| 日韩一二三四区| 国产欧美日韩精品在线| 亚洲精品老司机| 亚洲成人av中文| 久久av资源网| 成人夜色视频网站在线观看| 91丨porny丨首页| 欧美日韩成人高清| 精品国产91亚洲一区二区三区婷婷| 欧美大胆一级视频| 国产精品私人影院| 亚洲影院在线观看| 精品一区二区av| 成人黄色a**站在线观看| 色老头久久综合| 日韩精品影音先锋| 综合久久给合久久狠狠狠97色| 亚洲综合免费观看高清在线观看| 麻豆精品国产传媒mv男同| 床上的激情91.| 精品视频免费看| 中文字幕av在线一区二区三区| 一区二区三区在线免费视频| 免费成人在线观看视频| 成人ar影院免费观看视频| 欧美日韩一区二区在线观看视频| 欧美videossexotv100| 亚洲欧美日韩中文播放 | 久久色在线视频| 成人免费在线视频| 日本中文字幕不卡| 成人爱爱电影网址| 91精品中文字幕一区二区三区| 国产日韩一级二级三级| 日韩精品一卡二卡三卡四卡无卡| 国内偷窥港台综合视频在线播放| 91色.com| 久久久国产午夜精品| 亚洲国产另类精品专区| 国产成人免费视频网站| 欧美一区二区三区性视频| 亚洲欧洲精品天堂一级| 狠狠色丁香婷婷综合久久片| 色屁屁一区二区| 国产亚洲精品7777| 日本中文在线一区| 在线观看视频一区二区欧美日韩| 久久美女艺术照精彩视频福利播放| 亚洲成人av免费| 91视频www| 欧美激情一区二区三区在线| 奇米影视一区二区三区| 91色porny蝌蚪| 中文字幕不卡在线播放| 久久99国产精品免费| 欧洲av在线精品| 亚洲人成人一区二区在线观看 | 在线一区二区三区四区| 国产午夜精品一区二区三区视频 | 日韩精品每日更新| 色综合久久中文综合久久97| 中文在线一区二区| 九九在线精品视频| 日韩一区二区三区视频在线| 亚洲第一主播视频| 一本色道久久综合亚洲aⅴ蜜桃| 国产人成一区二区三区影院| 六月婷婷色综合| 日韩精品在线一区二区| 蜜臀va亚洲va欧美va天堂| 在线成人av影院| 午夜不卡av在线| 欧美一区二区三区婷婷月色 | 成人av免费在线播放| 久久久91精品国产一区二区精品 | 成人一级片在线观看| 国产欧美综合在线观看第十页| 国产一区二区三区av电影| 久久综合九色综合97婷婷女人 | 另类小说视频一区二区| 日韩欧美精品在线视频| 久久91精品久久久久久秒播| 日韩欧美色电影| 国产麻豆成人精品| 国产精品午夜春色av| k8久久久一区二区三区| 国产欧美中文在线| 波多野结衣一区二区三区| 国产精品二三区| 91网上在线视频| 亚洲一区二区三区视频在线播放| 欧美日韩一区视频| 另类综合日韩欧美亚洲| 久久日一线二线三线suv| 国产成人亚洲综合a∨婷婷| 欧美国产乱子伦 | 精品99久久久久久| 国产一区视频网站| 国产精品乱码一区二区三区软件| 99热99精品| 五月婷婷另类国产| 欧美哺乳videos| 成人动漫av在线| 亚洲成a人片在线不卡一二三区| 在线播放欧美女士性生活| 麻豆视频一区二区| 国产亲近乱来精品视频| 欧洲另类一二三四区| 琪琪一区二区三区| 国产精品乱码妇女bbbb| 欧美体内she精高潮| 裸体一区二区三区| 国产精品理伦片| 欧美日韩一区二区不卡| 麻豆成人av在线| 国产精品传媒入口麻豆| 欧美精品九九99久久| 高潮精品一区videoshd| 亚洲午夜免费电影| 久久久亚洲国产美女国产盗摄| 97久久人人超碰| 蜜桃视频第一区免费观看| 国产精品久久久久久久裸模| 欧美日韩午夜在线视频| 国产成人av一区二区| 亚洲福利电影网| 久久久另类综合| 欧美日韩成人高清| 白白色亚洲国产精品| 日韩avvvv在线播放| 亚洲色图在线播放| 久久午夜国产精品| 在线不卡中文字幕| 91丨九色丨蝌蚪丨老版| 久久99国产精品免费| 亚洲第一搞黄网站| 国产精品久久毛片a| 精品久久久久99| 欧美情侣在线播放| 91麻豆精品一区二区三区| 国产一区二区不卡在线| 亚洲一区二区美女| 综合av第一页| 欧美国产日韩精品免费观看|