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

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

?? fsm.c

?? vxworks的源代碼
?? C
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
	break;    case STOPPED:	/* Negotiation started by our peer */	fsm_sconfreq(f, 0);		/* Send initial Configure-Request */	f->state = REQSENT;	break;    }    /*     * Pass the requested configuration options     * to protocol-specific code for checking.     */    if (f->callbacks->reqci){		/* Check CI */	reject_if_disagree = (f->nakloops >= f->maxnakloops);	code = (*f->callbacks->reqci)(f, inp, &len, reject_if_disagree);    } else if (len)	code = CONFREJ;			/* Reject all CI */    else        code = CONFACK;    /* send the Ack, Nak or Rej to the peer */    fsm_sdata(f, code, id, inp, len);    if (code == CONFACK) {	if (f->state == ACKRCVD) {	    PPP_UNTIMEOUT(fsm_timeout, (caddr_t) f);	/* Cancel timeout */	    f->state = OPENED;	    if (f->callbacks->up)		(*f->callbacks->up)(f);	/* Inform upper layers */	} else	    f->state = ACKSENT;	f->nakloops = 0;    } else {	/* we sent CONFACK or CONFREJ */	if (f->state != ACKRCVD)	    f->state = REQSENT;	if( code == CONFNAK )	    ++f->nakloops;    }}/* * fsm_rconfack - Receive Configure-Ack. */static voidfsm_rconfack(f, id, inp, len)    fsm *f;    u_char id;    u_char *inp;    int len;{    FSMDEBUG((LOG_INFO, "fsm_rconfack(%s): Rcvd id %d.",              PROTO_NAME(f), id));    if (id != f->reqid)		/* Expected id? */	return;			/* Nope, toss... */    if( !(f->callbacks->ackci? (*f->callbacks->ackci)(f, inp, len): (len == 0)) ){	/* Ack is bad - ignore it */	FSMDEBUG((LOG_INFO, "%s: received bad Ack (length %d)",                  PROTO_NAME(f), len));	return;    }    f->reqid = -1;    switch (f->state) {    case CLOSED:    case STOPPED:	fsm_sdata(f, TERMACK, id, NULL, 0);	break;    case REQSENT:	f->state = ACKRCVD;	f->retransmits = f->maxconfreqtransmits;	break;    case ACKRCVD:	/* Huh? an extra Ack? oh well... */	fsm_sconfreq(f, 0);	f->state = REQSENT;	break;    case ACKSENT:	PPP_UNTIMEOUT(fsm_timeout, (caddr_t) f);	/* Cancel timeout */	f->state = OPENED;	f->retransmits = f->maxconfreqtransmits;	if (f->callbacks->up)	    (*f->callbacks->up)(f);	/* Inform upper layers */	break;    case OPENED:	/* Go down and restart negotiation */	if (f->callbacks->down)	    (*f->callbacks->down)(f);	/* Inform upper layers */	fsm_sconfreq(f, 0);		/* Send initial Configure-Request */	f->state = REQSENT;	break;    }}/* * fsm_rconfnakrej - Receive Configure-Nak or Configure-Reject. */static voidfsm_rconfnakrej(f, code, id, inp, len)    fsm *f;    int code, id;    u_char *inp;    int len;{    int (*proc)();    FSMDEBUG((LOG_INFO, "fsm_rconfnakrej(%s): Rcvd id %d.",              PROTO_NAME(f), id));    if (id != f->reqid)		/* Expected id? */	return;			/* Nope, toss... */    proc = (code == CONFNAK)? f->callbacks->nakci: f->callbacks->rejci;    if( !proc || !proc(f, inp, len) ){	/* Nak/reject is bad - ignore it */	FSMDEBUG((LOG_INFO, "%s: received bad %s (length %d)",		  PROTO_NAME(f), (code==CONFNAK? "Nak": "reject"), len));	return;    }    f->reqid = -1;    switch (f->state) {    case CLOSED:    case STOPPED:	fsm_sdata(f, TERMACK, id, NULL, 0);	break;    case REQSENT:    case ACKSENT:	/* They didn't agree to what we wanted - try another request */	PPP_UNTIMEOUT(fsm_timeout, (caddr_t) f);	/* Cancel timeout */	fsm_sconfreq(f, 0);		/* Send Configure-Request */	break;    case ACKRCVD:	/* Got a Nak/reject when we had already had an Ack?? oh well... */	fsm_sconfreq(f, 0);	f->state = REQSENT;	break;    case OPENED:	/* Go down and restart negotiation */	if (f->callbacks->down)	    (*f->callbacks->down)(f);	/* Inform upper layers */	fsm_sconfreq(f, 0);		/* Send initial Configure-Request */	f->state = REQSENT;	break;    }}/* * fsm_rtermreq - Receive Terminate-Req. */static voidfsm_rtermreq(f, id)    fsm *f;    int id;{    FSMDEBUG((LOG_INFO, "fsm_rtermreq(%s): Rcvd id %d.",              PROTO_NAME(f), id));    switch (f->state) {    case ACKRCVD:    case ACKSENT:	f->state = REQSENT;		/* Start over but keep trying */	break;    case OPENED:	syslog(LOG_INFO, "%s terminated at peer's request", PROTO_NAME(f));	if (f->callbacks->down)	    (*f->callbacks->down)(f);	/* Inform upper layers */	f->retransmits = 0;	f->state = STOPPING;	PPP_TIMEOUT(fsm_timeout, (caddr_t) f, f->timeouttime);	break;    }    fsm_sdata(f, TERMACK, id, NULL, 0);}/* * fsm_rtermack - Receive Terminate-Ack. */static voidfsm_rtermack(f)    fsm *f;{    FSMDEBUG((LOG_INFO, "fsm_rtermack(%s).", PROTO_NAME(f)));    switch (f->state) {    case CLOSING:	f->state = CLOSED;	if( f->callbacks->finished )	    (*f->callbacks->finished)(f);	break;    case STOPPING:	f->state = STOPPED;	if( f->callbacks->finished )	    (*f->callbacks->finished)(f);	break;    case ACKRCVD:	f->state = REQSENT;	break;    case OPENED:	if (f->callbacks->down)	    (*f->callbacks->down)(f);	/* Inform upper layers */	fsm_sconfreq(f, 0);	break;    }}/* * fsm_rcoderej - Receive an Code-Reject. */static voidfsm_rcoderej(f, inp, len)    fsm *f;    u_char *inp;    int len;{    u_char code, id;    FSMDEBUG((LOG_INFO, "fsm_rcoderej(%s).", PROTO_NAME(f)));    if (len < HEADERLEN) {	FSMDEBUG((LOG_INFO, "fsm_rcoderej: Rcvd short Code-Reject packet!"));	return;    }    GETCHAR(code, inp);    GETCHAR(id, inp);    syslog(LOG_WARNING, "%s: Rcvd Code-Reject for code %d, id %d",           PROTO_NAME(f), code, id);    if( f->state == ACKRCVD )	f->state = REQSENT;}/* * fsm_protreject - Peer doesn't speak this protocol. * * Treat this as a catastrophic error (RXJ-). */voidfsm_protreject(f)    fsm *f;{    switch( f->state ){    case CLOSING:	PPP_UNTIMEOUT(fsm_timeout, (caddr_t) f);	/* Cancel timeout */	/* fall through */    case CLOSED:	f->state = CLOSED;	if( f->callbacks->finished )	    (*f->callbacks->finished)(f);	break;    case STOPPING:    case REQSENT:    case ACKRCVD:    case ACKSENT:	PPP_UNTIMEOUT(fsm_timeout, (caddr_t) f);	/* Cancel timeout */	/* fall through */    case STOPPED:	f->state = STOPPED;	if( f->callbacks->finished )	    (*f->callbacks->finished)(f);	break;    case OPENED:	if( f->callbacks->down )	    (*f->callbacks->down)(f);	/* Init restart counter, send Terminate-Request */	f->retransmits = f->maxtermtransmits;	fsm_sdata(f, TERMREQ, f->reqid = ++f->id, NULL, 0);	PPP_TIMEOUT(fsm_timeout, (caddr_t) f, f->timeouttime);	--f->retransmits;	f->state = STOPPING;	break;    default:	FSMDEBUG((LOG_INFO, "%s: Protocol-reject event in state %d!",		  PROTO_NAME(f), f->state));    }}extern struct ppp_softc *ppp_softc[ ];/* * fsm_sconfreq - Send a Configure-Request. */static voidfsm_sconfreq(f, retransmit)    fsm *f;    int retransmit;{    u_char *outp;    int cilen;    register struct ppp_softc *sc = ppp_softc[f->unit];    if( f->state != REQSENT && f->state != ACKRCVD && f->state != ACKSENT ){	/* Not currently negotiating - reset options */	if( f->callbacks->resetci )	    (*f->callbacks->resetci)(f);	f->nakloops = 0;    }    if( !retransmit ){	/* New request - reset retransmission counter, use new ID */	f->retransmits = f->maxconfreqtransmits;	f->reqid = ++f->id;    }    /* Write the string "CLIENT" to the remote peer */    if (((ppp_if[ppp_unit]->lcp_wantoptions.passive) == 1) || 	 (ppp_if[ppp_unit]->lcp_wantoptions.silent == 1))	{	char buf[7];	strncpy(buf,"CLIENT",strlen("CLIENT"));	output(f->unit, buf, strlen("CLIENT"));	taskDelay(sysClkRateGet());	}    /*     * Make up the request packet     */    outp = ppp_if[f->unit]->outpacket_buf + DLLHEADERLEN + HEADERLEN;    if( f->callbacks->cilen && f->callbacks->addci ){	cilen = (*f->callbacks->cilen)(f);	if( cilen > ppp_if[f->unit]->peer_mru - HEADERLEN )	    cilen = ppp_if[f->unit]->peer_mru - HEADERLEN;	if (f->callbacks->addci)	    (*f->callbacks->addci)(f, outp, &cilen);    } else	cilen = 0;    /* send the request to our peer */    fsm_sdata(f, CONFREQ, f->reqid, outp, cilen);    /* start the retransmit timer */    --f->retransmits;    PPP_TIMEOUT(fsm_timeout, (caddr_t) f, f->timeouttime);    FSMDEBUG((LOG_INFO, "%s: sending Configure-Request, id %d",	      PROTO_NAME(f), f->reqid));}/* * fsm_sdata - Send some data. * * Used for all packets sent to our peer by this module. */voidfsm_sdata(f, code, id, data, datalen)    fsm *f;    u_char code, id;    u_char *data;    int datalen;{    u_char *outp;    int outlen;    /* Adjust length to be smaller than MTU */    outp = ppp_if[f->unit]->outpacket_buf;    if (datalen > ppp_if[f->unit]->peer_mru - HEADERLEN)	datalen = ppp_if[f->unit]->peer_mru - HEADERLEN;    if (datalen && data != outp + DLLHEADERLEN + HEADERLEN)	BCOPY((char *)data, (char *)(outp + DLLHEADERLEN + HEADERLEN), datalen);    outlen = datalen + HEADERLEN;    MAKEHEADER(outp, f->protocol);    PUTCHAR(code, outp);    PUTCHAR(id, outp);    PUTSHORT(outlen, outp);    output(f->unit, ppp_if[f->unit]->outpacket_buf, outlen + DLLHEADERLEN);    FSMDEBUG((LOG_INFO, "fsm_sdata(%s): Sent code %d, id %d.",	      PROTO_NAME(f), code, id));}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美日韩精品久久久久| 成人a区在线观看| 婷婷丁香久久五月婷婷| 亚洲综合色网站| 一区二区在线观看免费 | 亚洲小少妇裸体bbw| 最新日韩在线视频| 自拍偷拍亚洲综合| 亚洲欧洲另类国产综合| 亚洲色图制服丝袜| 亚洲综合在线电影| 亚洲一区影音先锋| 亚洲午夜电影网| 亚洲国产中文字幕在线视频综合| 亚洲在线免费播放| 日韩激情一二三区| 狠狠狠色丁香婷婷综合激情| 韩国精品主播一区二区在线观看| 国产呦萝稀缺另类资源| 国产风韵犹存在线视精品| av一区二区三区在线| 色婷婷综合久久久久中文| 欧美系列亚洲系列| 日韩欧美中文字幕公布| 久久精品欧美一区二区三区麻豆| 国产精品成人网| 一级特黄大欧美久久久| 日韩福利视频网| 国产一区二区主播在线| 99视频一区二区| 欧美日韩国产bt| 久久精品免费在线观看| 亚洲精品国产第一综合99久久 | 亚洲一级不卡视频| 免费成人在线网站| 国产精品一区在线| 91丝袜高跟美女视频| 欧美日韩一区二区电影| 久久色视频免费观看| 亚洲图片欧美激情| 青青青爽久久午夜综合久久午夜| 国产精品一线二线三线| 色婷婷综合久久久中文一区二区| 欧美一区二区三区不卡| 国产欧美日韩另类一区| 亚洲国产日韩精品| 国产乱码精品一区二区三区忘忧草| 91小视频在线免费看| 欧美一区中文字幕| 中文字幕综合网| 免费高清视频精品| 日本韩国一区二区| 2020日本不卡一区二区视频| 亚洲欧美日韩精品久久久久| 激情六月婷婷综合| 欧美日韩一区二区在线观看| 国产精品视频线看| 青娱乐精品视频在线| 91在线看国产| 久久亚洲私人国产精品va媚药| 亚洲精品五月天| 国产69精品久久久久777| 7878成人国产在线观看| 亚洲精品中文字幕在线观看| 国产精品影视在线观看| 欧美一区二区三区在线看| 中文字幕亚洲欧美在线不卡| 国内精品视频666| 欧美三区在线视频| 椎名由奈av一区二区三区| 韩国av一区二区| 91精品婷婷国产综合久久竹菊| 综合久久给合久久狠狠狠97色| 韩国一区二区视频| 欧美一区二区三区婷婷月色| 亚洲夂夂婷婷色拍ww47| 91在线一区二区| 中文字幕国产精品一区二区| 另类欧美日韩国产在线| 欧美色爱综合网| 一区二区三区在线看| 成人av电影在线播放| 久久久亚洲精华液精华液精华液| 日韩国产欧美视频| 欧美另类久久久品| 洋洋成人永久网站入口| av网站免费线看精品| 国产午夜精品在线观看| 国产最新精品精品你懂的| 日韩一二三四区| 日韩激情在线观看| 6080国产精品一区二区| 亚洲va韩国va欧美va| 欧美性受xxxx| 亚洲精品日日夜夜| 色综合天天综合给合国产| 国产精品美女一区二区在线观看| 粉嫩av一区二区三区粉嫩| 26uuu成人网一区二区三区| 美腿丝袜亚洲三区| 欧美岛国在线观看| 美女性感视频久久| 精品剧情在线观看| 经典一区二区三区| 2023国产精华国产精品| 国产福利一区二区三区在线视频| 精品国产电影一区二区| 国产一区二区三区香蕉| 久久亚洲二区三区| 国产成a人亚洲精品| 亚洲欧美自拍偷拍色图| 色成年激情久久综合| 亚洲地区一二三色| 欧美一级免费大片| 精品一区二区三区视频在线观看| 日韩精品最新网址| 国产精品66部| 中文字幕日韩一区二区| 91美女精品福利| 亚洲一区在线免费观看| 日韩视频国产视频| 国产激情一区二区三区| 国产精品私人影院| 欧美亚洲一区二区在线| 日本大胆欧美人术艺术动态| 精品噜噜噜噜久久久久久久久试看| 国产精品888| 亚洲精品国产无天堂网2021 | 午夜精品福利一区二区蜜股av | 久久综合久久综合久久| 国产精品中文有码| 自拍偷拍国产精品| 91.成人天堂一区| 国产一区二区三区免费观看| 国产精品无遮挡| 色综合天天狠狠| 三级成人在线视频| 久久精品视频在线看| 色哟哟国产精品| 麻豆精品视频在线观看| 国产精品污网站| 欧美日本在线看| 国产一区二区三区香蕉| 亚洲美女在线国产| 日韩欧美一区电影| proumb性欧美在线观看| 天天做天天摸天天爽国产一区| 精品va天堂亚洲国产| 色久综合一二码| 激情综合一区二区三区| 亚洲精品高清在线| 日韩精品一区二区三区中文不卡| 成人性生交大片免费看在线播放| 激情综合亚洲精品| 亚洲天堂福利av| 精品少妇一区二区三区 | 亚洲色图第一区| 日韩精品一区二| 一本色道综合亚洲| 国产在线播放一区三区四| 亚洲一区二区美女| 日本一区二区三区四区在线视频 | 亚洲一区在线观看视频| 欧美激情在线观看视频免费| 91精品国产综合久久精品麻豆| 成人黄色综合网站| 开心九九激情九九欧美日韩精美视频电影 | 性感美女极品91精品| 国产欧美一区二区精品仙草咪| 5858s免费视频成人| 色激情天天射综合网| 国产一区二区三区电影在线观看 | 一区二区三区在线视频播放| 久久精品视频网| 日韩一级黄色片| 欧美日韩卡一卡二| 日本久久一区二区三区| 国产福利91精品一区二区三区| 蜜桃av一区二区三区电影| 午夜婷婷国产麻豆精品| 亚洲激情一二三区| 综合久久久久久久| 国产精品妹子av| 国产三级精品三级在线专区| 精品福利一二区| 精品国产一区二区在线观看| 在线综合视频播放| 欧美色综合久久| 色哟哟欧美精品| 日本精品一级二级| 色天使色偷偷av一区二区| 成人av动漫在线| 大桥未久av一区二区三区中文| 久久精品av麻豆的观看方式| 蜜桃av噜噜一区二区三区小说| 日本一不卡视频| 美女视频黄久久| 另类小说色综合网站| 六月丁香婷婷久久| 久久99热国产|