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

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

?? tcpip.c

?? 基于sam7x256平臺(tái)做的CAN與網(wǎng)口互轉(zhuǎn)接口
?? C
字號(hào):
/* * Copyright (c) 2001-2004 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> * */#include "lwip/opt.h"#include "lwip/sys.h"#include "lwip/memp.h"#include "lwip/pbuf.h"#include "lwip/ip.h"#include "lwip/ip_frag.h"#include "lwip/udp.h"#include "lwip/tcp.h"#include "lwip/tcpip.h"static void (* tcpip_init_done)(void *arg) = NULL;static void *tcpip_init_done_arg;static sys_mbox_t mbox;#if LWIP_TCPstatic int tcpip_tcp_timer_active = 0;static voidtcpip_tcp_timer(void *arg){  (void)arg;  /* call TCP timer handler */  tcp_tmr();  /* timer still needed? */  if (tcp_active_pcbs || tcp_tw_pcbs) {    /* restart timer */    sys_timeout(TCP_TMR_INTERVAL, tcpip_tcp_timer, NULL);  } else {    /* disable timer */    tcpip_tcp_timer_active = 0;  }}#if !NO_SYSvoidtcp_timer_needed(void){  /* timer is off but needed again? */  if (!tcpip_tcp_timer_active && (tcp_active_pcbs || tcp_tw_pcbs)) {    /* enable and start timer */    tcpip_tcp_timer_active = 1;    sys_timeout(TCP_TMR_INTERVAL, tcpip_tcp_timer, NULL);  }}#endif /* !NO_SYS */#endif /* LWIP_TCP */#if IP_REASSEMBLYstatic voidip_timer(void *data){  LWIP_DEBUGF(TCPIP_DEBUG, ("tcpip: ip_reass_tmr()\n"));  ip_reass_tmr();  sys_timeout(1000, ip_timer, NULL);}#endifstatic voidtcpip_thread(void *arg){  struct tcpip_msg *msg;  (void)arg;  ip_init();#if LWIP_UDP    udp_init();#endif#if LWIP_TCP  tcp_init();#endif#if IP_REASSEMBLY  sys_timeout(1000, ip_timer, NULL);#endif  if (tcpip_init_done != NULL) {    tcpip_init_done(tcpip_init_done_arg);  }  while (1) {                          /* MAIN Loop */    sys_mbox_fetch(mbox, (void *)&msg);    switch (msg->type) {    case TCPIP_MSG_API:      LWIP_DEBUGF(TCPIP_DEBUG, ("tcpip_thread: API message %p\n", (void *)msg));      api_msg_input(msg->msg.apimsg);      break;    case TCPIP_MSG_INPUT:      LWIP_DEBUGF(TCPIP_DEBUG, ("tcpip_thread: IP packet %p\n", (void *)msg));      ip_input(msg->msg.inp.p, msg->msg.inp.netif);      break;    case TCPIP_MSG_CALLBACK:      LWIP_DEBUGF(TCPIP_DEBUG, ("tcpip_thread: CALLBACK %p\n", (void *)msg));      msg->msg.cb.f(msg->msg.cb.ctx);      break;    default:      break;    }    memp_free(MEMP_TCPIP_MSG, msg);  }}err_ttcpip_input(struct pbuf *p, struct netif *inp){  struct tcpip_msg *msg;    msg = memp_malloc(MEMP_TCPIP_MSG);  if (msg == NULL) {    pbuf_free(p);        return ERR_MEM;    }    msg->type = TCPIP_MSG_INPUT;  msg->msg.inp.p = p;  msg->msg.inp.netif = inp;  sys_mbox_post(mbox, msg);  return ERR_OK;}err_ttcpip_callback(void (*f)(void *ctx), void *ctx){  struct tcpip_msg *msg;    msg = memp_malloc(MEMP_TCPIP_MSG);  if (msg == NULL) {    return ERR_MEM;    }    msg->type = TCPIP_MSG_CALLBACK;  msg->msg.cb.f = f;  msg->msg.cb.ctx = ctx;  sys_mbox_post(mbox, msg);  return ERR_OK;}voidtcpip_apimsg(struct api_msg *apimsg){  struct tcpip_msg *msg;  msg = memp_malloc(MEMP_TCPIP_MSG);  if (msg == NULL) {    memp_free(MEMP_API_MSG, apimsg);    return;  }  msg->type = TCPIP_MSG_API;  msg->msg.apimsg = apimsg;  sys_mbox_post(mbox, msg);}voidtcpip_init(void (* initfunc)(void *), void *arg){  tcpip_init_done = initfunc;  tcpip_init_done_arg = arg;  mbox = sys_mbox_new();  sys_thread_new(tcpip_thread, NULL, TCPIP_THREAD_PRIO);}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品入口麻豆原神| 成人一二三区视频| 五月婷婷另类国产| a亚洲天堂av| 日韩免费观看2025年上映的电影| 国产精品久久久久久久久晋中 | 国产成人午夜高潮毛片| 99久久免费国产| 日韩三级电影网址| 性做久久久久久久久| 在线一区二区三区四区五区| 国产精品视频一二| 成人a免费在线看| 欧美国产综合一区二区| 国产精品一色哟哟哟| 国产午夜精品在线观看| 国产精品一区二区免费不卡| 欧美不卡一区二区三区四区| 美女在线视频一区| 日韩区在线观看| 国产最新精品免费| 亚洲青青青在线视频| 91麻豆国产在线观看| 亚洲欧美日韩国产综合| 91网页版在线| 久久午夜国产精品| 卡一卡二国产精品| 欧美无人高清视频在线观看| 欧美日韩国产精选| 亚洲成av人影院| 日韩亚洲欧美综合| 日韩午夜三级在线| 精品国产乱码久久久久久蜜臀| 亚洲国产欧美日韩另类综合| 久久九九影视网| 日韩一区欧美一区| 久久久一区二区三区捆绑**| 欧美r级电影在线观看| 欧美一区二区视频观看视频| 欧美人妖巨大在线| 5月丁香婷婷综合| 欧美日韩1234| 国产精品99久久久久久有的能看| 亚洲精品乱码久久久久久黑人| 日韩欧美一区二区久久婷婷| 国产成人av一区二区三区在线观看| 国产精品人妖ts系列视频| av资源网一区| 国产精品一区一区| 午夜精品久久久久| 国产精品成人午夜| 国产色产综合色产在线视频| 欧美精品 日韩| 在线看一区二区| 成人中文字幕电影| 国产在线麻豆精品观看| 蜜桃av一区二区| 天堂成人国产精品一区| 一区二区三区av电影 | 久久久久久久综合色一本| 色综合天天狠狠| 国产精品一区二区你懂的| 国产乱淫av一区二区三区| 丝袜美腿亚洲综合| 国产精品久久久久婷婷二区次| 欧美一卡2卡三卡4卡5免费| 91美女片黄在线观看| 一区二区三区产品免费精品久久75| 久久久久久久综合| 色视频一区二区| 欧美精品一区二区久久久| 琪琪一区二区三区| 蜜桃av一区二区| 亚洲综合一区二区三区| 调教+趴+乳夹+国产+精品| 久久精品国产亚洲高清剧情介绍 | 国产目拍亚洲精品99久久精品| 久久久久久一级片| 亚洲欧美激情小说另类| 日韩激情一二三区| 欧美不卡一区二区三区四区| 成人黄页在线观看| 亚洲精品成人天堂一二三| 欧美精品一区二区三区蜜臀| 国产无人区一区二区三区| 国产精品久久久久久久久久免费看| 国产亚洲欧美日韩在线一区| 欧美激情一区在线观看| 日本一区二区三区久久久久久久久不 | 欧美一卡2卡三卡4卡5免费| 91精品国产综合久久香蕉麻豆| 日韩一区二区麻豆国产| 国产精品久久夜| 日韩影院在线观看| 成人黄色小视频| 欧美一区二区视频在线观看| 亚洲欧美综合另类在线卡通| 久久精品一区二区三区不卡牛牛| 亚洲精选视频免费看| 久久精品国产一区二区| 国产精品一区二区久久精品爱涩 | 一本大道综合伊人精品热热| 91亚洲精华国产精华精华液| 9191精品国产综合久久久久久| 日本不卡一区二区三区高清视频| 久久精品亚洲一区二区三区浴池| 一本一道久久a久久精品| 欧美体内she精高潮| 在线精品视频免费观看| 久久久久久久久久久黄色| 亚洲成人久久影院| av激情亚洲男人天堂| 日韩视频一区二区三区在线播放| 亚洲欧洲色图综合| 国产在线观看一区二区| 久久品道一品道久久精品| 日韩精品国产精品| 91传媒视频在线播放| 亚洲一二三四在线| 欧美一区二区三区公司| 日韩综合小视频| 波多野洁衣一区| 中文字幕在线观看不卡| jizz一区二区| 奇米一区二区三区av| 精品国产凹凸成av人网站| 另类调教123区| 国产无人区一区二区三区| 欧美一区二区免费视频| 欧美一区二区网站| 91精品国产乱码| 欧美精品在线一区二区三区| 美女一区二区在线观看| 久久久久久久精| av网站一区二区三区| 一区二区三区免费看视频| 欧美怡红院视频| 国产xxx精品视频大全| 亚洲人成7777| 日韩一区二区三区在线| 五月天亚洲婷婷| 亚洲国产另类av| 婷婷久久综合九色综合绿巨人| 视频一区中文字幕国产| 欧美日韩在线播放一区| 亚洲午夜精品网| 欧美三区免费完整视频在线观看| 亚洲成人黄色影院| 欧美三级欧美一级| 日日噜噜夜夜狠狠视频欧美人 | 日韩女优制服丝袜电影| 蜜臀av一区二区| 精品久久久久久久久久久院品网| 另类小说欧美激情| 久久久精品国产免大香伊| 成人99免费视频| 亚洲女同一区二区| 欧美视频一区二区在线观看| 午夜伦欧美伦电影理论片| 日韩午夜av电影| 国产69精品久久久久毛片| 亚洲欧美色图小说| 精品视频一区二区不卡| 麻豆成人免费电影| 国产欧美精品一区| 色综合久久天天| 五月激情综合色| 久久婷婷久久一区二区三区| 成人性生交大片免费看视频在线 | 91视频91自| 亚洲一区二区综合| 欧美成人性战久久| 成人av在线网| 亚洲成av人片| 久久精品视频免费| 99re热这里只有精品视频| 视频一区二区欧美| 国产视频亚洲色图| 欧美在线制服丝袜| 国内精品自线一区二区三区视频| 日本一区二区三区在线观看| 欧美在线短视频| 国产盗摄视频一区二区三区| 一二三区精品福利视频| 精品国产三级电影在线观看| 日本乱码高清不卡字幕| 久久精品噜噜噜成人88aⅴ| 中文字幕一区二区在线观看| 在线综合视频播放| 成人午夜视频网站| 日韩avvvv在线播放| 亚洲视频香蕉人妖| 精品国产伦一区二区三区观看体验 | 中文无字幕一区二区三区| 在线观看日韩电影| 顶级嫩模精品视频在线看| 天天做天天摸天天爽国产一区| 国产免费成人在线视频| 91精品国产综合久久精品app | 亚洲国产精品久久久久秋霞影院 |