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

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

?? ppp_vxworks.c

?? vxwork源代碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
/* ppp_vxworks.c - System-dependent procedures for setting up PPP interfaces *//* Copyright 1995 Wind River Systems, Inc. */#include "copyright_wrs.h"/* * Copyright (c) 1989 Carnegie Mellon University. * All rights reserved. * * Redistribution and use in source and binary forms are permitted * provided that the above copyright notice and this paragraph are * duplicated in all such forms and that any documentation, * advertising materials, and other materials related to such * distribution and use acknowledge that the software was developed * by Carnegie Mellon University.  The name of the * University may not be used to endorse or promote products derived * from this software without specific prior written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. *//*modification history--------------------01i,30jan01,ijm  Fixed spr 34274, OPT_PROXYARP is not setting ARP entry		 correctly.  It times out.01h,17feb99,sgv  Fixed spr 22486, Proxy Arp fix.01g,05aug96,vin  upgraded to BSD4.4., replaced rtentry with ortentry,		 reworked get_ether_addr since ifreq struct changed.		 switched the order of initialization in sifaddr(). 01f,16jun95,dzb  header file consolidation.01e,15may95,dzb  changed LOG_ERR for route delete to LOG_WARNING.01d,06mar95,dzb  proxyArp fix (SPR #4074).01c,07feb95,dzb  changed to look for OK from pppwrite().01b,16jan95,dzb  renamed to ppp_vxworks.c. warnings cleanup.01a,21dec94,dab  VxWorks port - first WRS version.	   +dzb  added: path for ppp header files, WRS copyright.*/#include "vxWorks.h"#include "string.h"#include "stdlib.h"#include "stdio.h"#include "ioctl.h"#include "ioLib.h"#include "sys/ioctl.h"#include "sys/types.h"#include "sys/socket.h"#include "sys/times.h"#include "net/if.h"#include "net/if_arp.h"#include "netinet/if_ether.h"#include "net/if_dl.h"#include "errno.h"#include "net/if.h"#include "net/route.h"#include "netinet/in.h"#include "pppLib.h"#include "logLib.h"IMPORT struct ifnet     *ifnet;         /* list of all network interfaces */IMPORT void arptfree (struct llinfo_arp *); int pppArpCmd (int cmd, struct arpreq * ar);/* * establish_ppp - Turn the serial port into a ppp interface. */voidestablish_ppp(){    int x;    /* get ppp fd */    if (ppptioctl(ppp_unit, PPPIOCGFD, (caddr_t) &(ppp_if[ppp_unit]->fd)) < 0) {        syslog(LOG_ERR, "ppptioctl(PPPIOCGFD) error");        die(ppp_unit, 1);    }    /*     * Enable debug in the driver if requested.     */    if (ppp_if[ppp_unit]->kdebugflag) {        if (ppptioctl(ppp_unit, PPPIOCGFLAGS, (caddr_t) &x) < 0) {            syslog(LOG_WARNING, "ioctl (PPPIOCGFLAGS): error");        } else {            x |= (ppp_if[ppp_unit]->kdebugflag & 0xFF) * SC_DEBUG;            if (ppptioctl(ppp_unit, PPPIOCSFLAGS, (caddr_t) &x) < 0)                syslog(LOG_WARNING, "ioctl(PPPIOCSFLAGS): error");        }    }}/* * disestablish_ppp - Restore the serial port to normal operation. * This shouldn't call die() because it's called from die(). */voiddisestablish_ppp(){}/* * output - Output PPP packet. */voidoutput(unit, p, len)    int unit;    u_char *p;    int len;{    if (ppp_if[unit]->debug)        log_packet(p, len, "sent ");    if (pppwrite(unit, (char *) p, len) != OK) {	syslog(LOG_ERR, "write error");	die(unit, 1);    }}/* * read_packet - get a PPP packet from the serial device. */intread_packet(buf)    u_char *buf;{    int len;    len = pppread(ppp_unit, (char *) buf, MTU + DLLHEADERLEN);    if (len == 0) {        MAINDEBUG((LOG_DEBUG, "read(fd): EWOULDBLOCK"));	return -1;    }    return len;}/* * ppp_send_config - configure the transmit characteristics of * the ppp interface. */voidppp_send_config(unit, mtu, asyncmap, pcomp, accomp)    int unit, mtu;    u_long asyncmap;    int pcomp, accomp;{    u_int x;    if (ppptioctl(unit, SIOCSIFMTU, (caddr_t) &mtu) < 0) {	syslog(LOG_ERR, "ioctl(SIOCSIFMTU) error");	die(unit, 1);    }    if (ppptioctl(unit, PPPIOCSASYNCMAP, (caddr_t) &asyncmap) < 0) {	syslog(LOG_ERR, "ioctl(PPPIOCSASYNCMAP) error");	die(unit, 1);    }    if (ppptioctl(unit, PPPIOCGFLAGS, (caddr_t) &x) < 0) {	syslog(LOG_ERR, "ioctl (PPPIOCGFLAGS) error");	die(unit, 1);    }    x = pcomp? x | SC_COMP_PROT: x &~ SC_COMP_PROT;    x = accomp? x | SC_COMP_AC: x &~ SC_COMP_AC;    if (ppptioctl(unit, PPPIOCSFLAGS, (caddr_t) &x) < 0) {	syslog(LOG_ERR, "ioctl(PPPIOCSFLAGS) error");	die(unit, 1);    }}/* * ppp_set_xaccm - set the extended transmit ACCM for the interface. */voidppp_set_xaccm(unit, accm)    int unit;    ext_accm accm;{    if (ppptioctl(unit, PPPIOCSXASYNCMAP, (caddr_t) accm) < 0)        syslog(LOG_WARNING, "ioctl(set extended ACCM): error");}/* * ppp_recv_config - configure the receive-side characteristics of * the ppp interface. */voidppp_recv_config(unit, mru, asyncmap, pcomp, accomp)    int unit, mru;    u_long asyncmap;    int pcomp, accomp;{    int x;    if (ppptioctl(unit, PPPIOCSMRU, (caddr_t) &mru) < 0) {        syslog(LOG_ERR, "ioctl(PPPIOCSMRU): error");	die(unit, 1);    }    if (ppptioctl(unit, PPPIOCSRASYNCMAP, (caddr_t) &asyncmap) < 0) {        syslog(LOG_ERR, "ioctl(PPPIOCSRASYNCMAP): error");	die(unit, 1);    }    if (ppptioctl(unit, PPPIOCGFLAGS, (caddr_t) &x) < 0) {        syslog(LOG_ERR, "ioctl (PPPIOCGFLAGS): error");	die(unit, 1);    }    x = !accomp? x | SC_REJ_COMP_AC: x &~ SC_REJ_COMP_AC;    if (ppptioctl(unit, PPPIOCSFLAGS, (caddr_t) &x) < 0) {        syslog(LOG_ERR, "ioctl(PPPIOCSFLAGS): error");	die(unit, 1);    }}/* * sifvjcomp - config tcp header compression */intsifvjcomp(u, vjcomp, cidcomp, maxcid)    int u, vjcomp, cidcomp, maxcid;{    u_int x;    if (ppptioctl(u, PPPIOCGFLAGS, (caddr_t) &x) < 0) {	syslog(LOG_ERR, "ioctl (PPPIOCGFLAGS) error");	return 0;    }    x = vjcomp ? x | SC_COMP_TCP: x &~ SC_COMP_TCP;    x = cidcomp? x & ~SC_NO_TCP_CCID: x | SC_NO_TCP_CCID;    if (ppptioctl(u, PPPIOCSFLAGS, (caddr_t) &x) < 0) {	syslog(LOG_ERR, "ioctl(PPPIOCSFLAGS) error");	return 0;    }    if (ppptioctl(u, PPPIOCSMAXCID, (caddr_t) &maxcid) < 0) {        syslog(LOG_ERR, "ioctl(PPPIOCSFLAGS): error");        return 0;    }    return 1;}/* * sifup - Config the interface up and enable IP packets to pass. */intsifup(u)    int u;{    struct ifreq ifr;    u_int x;    strncpy(ifr.ifr_name, ppp_if[u]->ifname, sizeof (ifr.ifr_name));    if (ioctl(ppp_if[u]->s, SIOCGIFFLAGS, (int) &ifr) < 0) {	syslog(LOG_ERR, "ioctl (SIOCGIFFLAGS) error");	return 0;    }    ifr.ifr_flags |= IFF_UP;    if (ioctl(ppp_if[u]->s, SIOCSIFFLAGS, (int) &ifr) < 0) {	syslog(LOG_ERR, "ioctl(SIOCSIFFLAGS) error");	return 0;    }    if (ppptioctl(u, PPPIOCGFLAGS, (caddr_t) &x) < 0) {        syslog(LOG_ERR, "ioctl (PPPIOCGFLAGS): error");        return 0;    }    x |= SC_ENABLE_IP;    if (ppptioctl(u, PPPIOCSFLAGS, (caddr_t) &x) < 0) {        syslog(LOG_ERR, "ioctl(PPPIOCSFLAGS): error");        return 0;    }    return 1;}/* * sifdown - Config the interface down and disable IP. */intsifdown(u)    int u;{    struct ifreq ifr;    u_int x;    int rv;    rv = 1;    if (ppptioctl(u, PPPIOCGFLAGS, (caddr_t) &x) < 0) {        syslog(LOG_ERR, "ioctl (PPPIOCGFLAGS): error");        rv = 0;    } else {        x &= ~SC_ENABLE_IP;        if (ppptioctl(u, PPPIOCSFLAGS, (caddr_t) &x) < 0) {            syslog(LOG_ERR, "ioctl(PPPIOCSFLAGS): error");            rv = 0;        }    }    strncpy(ifr.ifr_name, ppp_if[u]->ifname, sizeof (ifr.ifr_name));    if (ioctl(ppp_if[u]->s, SIOCGIFFLAGS, (int) &ifr) < 0) {	syslog(LOG_ERR, "ioctl (SIOCGIFFLAGS) error");	rv = 0;    } else {        ifr.ifr_flags &= ~IFF_UP;        if (ioctl(ppp_if[u]->s, SIOCSIFFLAGS, (int) &ifr) < 0) {	    syslog(LOG_ERR, "ioctl(SIOCSIFFLAGS): error");	    rv = 0;        }    }    return rv;}/* * SET_SA_FAMILY - set the sa_family field of a struct sockaddr, * if it exists. */#define SET_SA_FAMILY(addr, family)		\    BZERO((char *) &(addr), sizeof(addr));	\    addr.sa_family = (family);			\	/* * sifaddr - Config the interface IP addresses and netmask. */intsifaddr(u, o, h, m)    int u, o, h, m;{    struct ifreq ifr;    strncpy(ifr.ifr_name, ppp_if[u]->ifname, sizeof(ifr.ifr_name));    SET_SA_FAMILY(ifr.ifr_addr, AF_INET);    ifr.ifr_addr.sa_len = sizeof (struct sockaddr_in);    if (m != 0) {        ((struct sockaddr_in *) &ifr.ifr_addr)->sin_addr.s_addr = m;        syslog(LOG_NOTICE, "Setting interface mask to %s", ip_ntoa(m));        if (ioctl(ppp_if[u]->s, SIOCSIFNETMASK, (int) &ifr) < 0) {	    syslog(LOG_ERR, "ioctl(SIOCSIFNETMASK): error");	    return (0); 	}    }    SET_SA_FAMILY(ifr.ifr_dstaddr, AF_INET);    ifr.ifr_dstaddr.sa_len = sizeof (struct sockaddr_in);    ((struct sockaddr_in *) &ifr.ifr_dstaddr)->sin_addr.s_addr = h;    if (ioctl(ppp_if[u]->s, SIOCSIFDSTADDR, (int) &ifr) < 0) {        syslog(LOG_ERR, "ioctl(SIOCSIFDSTADDR): error");	return (0);     }    SET_SA_FAMILY(ifr.ifr_addr, AF_INET);    ifr.ifr_addr.sa_len = sizeof (struct sockaddr_in);    ((struct sockaddr_in *) &ifr.ifr_addr)->sin_addr.s_addr = o;    if (ioctl(ppp_if[u]->s, SIOCSIFADDR, (int) &ifr) < 0) {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
韩国三级在线一区| 欧美一级在线观看| 欧美人伦禁忌dvd放荡欲情| 久久久久青草大香线综合精品| 最新久久zyz资源站| 蜜桃精品视频在线| 99久久久精品| 欧美精品一区二区久久婷婷| 亚洲最大的成人av| 成人免费毛片aaaaa**| 日韩欧美在线综合网| 亚洲va韩国va欧美va精品| 国产suv精品一区二区883| 日韩免费在线观看| 亚洲国产精品一区二区久久恐怖片| 日本乱人伦aⅴ精品| 国产亚洲一区二区三区四区 | 欧美色区777第一页| 国产精品久久久久久久蜜臀| 极品尤物av久久免费看| 91麻豆精品国产91久久久久久| 一级做a爱片久久| 成人黄色小视频| 国产亚洲女人久久久久毛片| 捆绑紧缚一区二区三区视频| 91精选在线观看| 午夜精品福利一区二区蜜股av| 91丝袜美腿高跟国产极品老师 | 成人v精品蜜桃久久一区| 2014亚洲片线观看视频免费| 看国产成人h片视频| 日韩欧美综合一区| 精东粉嫩av免费一区二区三区| 欧美成人三级在线| 麻豆91精品视频| 精品区一区二区| 狠狠狠色丁香婷婷综合久久五月| 欧美日本免费一区二区三区| 亚洲精品菠萝久久久久久久| 在线一区二区三区做爰视频网站| 久久精品欧美日韩| 成人一级黄色片| 亚洲猫色日本管| 欧美在线观看一区| 五月天一区二区| 91精品视频网| 极品少妇一区二区三区精品视频| 久久久亚洲欧洲日产国码αv| 国产成人免费视频一区| 中文字幕亚洲视频| 欧美日韩国产综合一区二区| 午夜精品久久久久久久久久| 精品久久久久99| jizz一区二区| 五月激情丁香一区二区三区| 精品成人私密视频| 91在线免费视频观看| 亚洲一区在线观看网站| 日韩一级二级三级| 成人爽a毛片一区二区免费| 亚洲精品久久久久久国产精华液| 欧美中文字幕一区二区三区| 日本欧美加勒比视频| 久久精品日产第一区二区三区高清版 | 国产福利不卡视频| 一级女性全黄久久生活片免费| 欧美一区二区三区在线电影| 国内成+人亚洲+欧美+综合在线| 国产精品久久久久久久久久久免费看| 日本丰满少妇一区二区三区| 美女网站在线免费欧美精品| 国产日韩精品视频一区| 欧美日韩亚洲国产综合| 国产福利电影一区二区三区| 亚洲一区二区四区蜜桃| 久久久精品影视| 337p亚洲精品色噜噜狠狠| 成人在线一区二区三区| 性做久久久久久久免费看| 国产精品网站导航| 91精品国产乱码久久蜜臀| 成人视屏免费看| 麻豆91免费观看| 性感美女久久精品| 中文字幕永久在线不卡| 26uuu成人网一区二区三区| 欧美人妖巨大在线| 91视频在线看| 成人综合婷婷国产精品久久免费| 日本不卡高清视频| 亚洲女同一区二区| 国产日韩精品视频一区| 欧美xxxxxxxx| 欧美日韩亚州综合| 在线视频中文字幕一区二区| 国产福利91精品| 久久成人免费日本黄色| 丝袜美腿亚洲一区二区图片| 亚洲精品国产视频| 中文字幕制服丝袜一区二区三区| 精品国产网站在线观看| 911精品国产一区二区在线| 欧美体内she精高潮| 99国产精品一区| kk眼镜猥琐国模调教系列一区二区| 国产麻豆视频一区二区| 国产一区二区三区四| 久久精品理论片| 免费成人性网站| 石原莉奈在线亚洲二区| 日韩综合小视频| 石原莉奈在线亚洲三区| 午夜久久久久久久久久一区二区| 一区二区三区在线视频免费观看| 国产精品色眯眯| 中文字幕一区二区三区四区不卡 | 成人精品视频.| 不卡av电影在线播放| 国产精品一区二区久久精品爱涩| 精品在线视频一区| 国产一区二区三区在线看麻豆| 久久精品国产99国产| 韩国女主播成人在线| 激情小说欧美图片| 国产99久久久国产精品潘金| 成人av午夜电影| 色香色香欲天天天影视综合网| 色婷婷亚洲一区二区三区| 色狠狠一区二区三区香蕉| 91电影在线观看| 欧美一区二区网站| 精品av久久707| 国产精品视频线看| 亚洲人吸女人奶水| 午夜久久福利影院| 精品一区二区三区在线观看国产 | 精品视频一区二区不卡| 9191精品国产综合久久久久久| 日韩欧美在线1卡| 国产农村妇女精品| 亚洲精品国产a| 九色|91porny| 一本大道久久精品懂色aⅴ| 欧美视频三区在线播放| 精品国产乱码久久| 欧美国产激情一区二区三区蜜月| 一区二区三区在线观看动漫| 日韩二区在线观看| 国产iv一区二区三区| 欧美做爰猛烈大尺度电影无法无天| 91精品国产综合久久久久久久久久 | 欧美色图免费看| 欧美精品一区二区三区蜜桃| 亚洲视频在线观看一区| 日韩精品三区四区| av中文字幕在线不卡| 91精品欧美福利在线观看| 国产精品欧美一区喷水| 视频一区二区三区中文字幕| 成人免费视频视频在线观看免费| 欧美日韩国产小视频在线观看| 337p日本欧洲亚洲大胆色噜噜| 自拍偷拍欧美精品| 蜜桃av噜噜一区| 色综合天天综合在线视频| 欧美r级电影在线观看| 亚洲精品videosex极品| 国产成人aaa| 日韩视频在线观看一区二区| 亚洲美腿欧美偷拍| 国产福利电影一区二区三区| 337p亚洲精品色噜噜| 亚洲精品乱码久久久久久久久 | 91精品福利在线| 日本一区二区三级电影在线观看| 亚洲第一主播视频| 成人av在线电影| 久久精品人人做人人爽人人| 美女在线观看视频一区二区| 欧美偷拍一区二区| 成人免费一区二区三区视频 | 麻豆专区一区二区三区四区五区| 在线区一区二视频| 中文字幕亚洲综合久久菠萝蜜| 国产福利一区二区三区在线视频| 日韩欧美一二三四区| 亚洲成人你懂的| 欧美系列在线观看| 亚洲视频一区在线观看| 成人网男人的天堂| 久久精品无码一区二区三区| 国内成+人亚洲+欧美+综合在线| 欧美一区二区三区在线电影| 天天色天天爱天天射综合| 欧美日韩国产在线观看| 亚洲一区在线观看网站| 欧美性猛交xxxx乱大交退制版| 亚洲蜜桃精久久久久久久| 91麻豆精东视频| 一区二区三区四区不卡视频|