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

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

?? uip.lst

?? c51版本的uip(一個(gè)超小型的TCPIP棧,支持tcpudparpicmp.
?? LST
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
                      conn = &uip_conns[c];
                      
                      conn->tcpstateflags = SYN_SENT | UIP_OUTSTANDING;
                      
                      conn->snd_nxt[0] = conn->ack_nxt[0] = iss[0];
                      conn->snd_nxt[1] = conn->ack_nxt[1] = iss[1];
                      conn->snd_nxt[2] = conn->ack_nxt[2] = iss[2];
                      conn->snd_nxt[3] = conn->ack_nxt[3] = iss[3];
                      
                      if(++conn->ack_nxt[3] == 0) {
                              if(++conn->ack_nxt[2] == 0) {
                                      if(++conn->ack_nxt[1] == 0) {
                                              ++conn->ack_nxt[0];
                                      }
                              }
                      }
                      
                      conn->nrtx = 0;
                      conn->timer = 1; /* Send the SYN next time around. */
                      conn->lport = htons(lastport);
                      conn->rport = htons(rport);
                      conn->ripaddr[0] = ripaddr[0];
                      conn->ripaddr[1] = ripaddr[1];
                      
                      return conn;
              }
              #endif /* UIP_ACTIVE_OPEN */
 238          /*-----------------------------------------------------------------------------------*/
 239          void
 240          uip_listen(u16_t port)
 241          {
C51 COMPILER V7.08   UIP                                                                   12/26/2003 07:27:14 PAGE 5   

 242   1              for(c = 0; c < UIP_LISTENPORTS; ++c) {
 243   2                      if(uip_listenports[c] == 0) {
 244   3                              uip_listenports[c] = htons(port);
 245   3                              break;
 246   3                      }
 247   2              }
 248   1      }
 249          /*-----------------------------------------------------------------------------------*/
 250          void
 251          uip_process(u8_t flag)
 252          {
 253   1              uip_appdata = &uip_buf[40 + UIP_LLH_LEN];
 254   1          
 255   1              /* Check if we were invoked because of the perodic timer fireing. */
 256   1              if(flag == UIP_TIMER) 
 257   1              {
 258   2                      /* Increase the initial sequence number. */
 259   2                      if(++iss[3] == 0) 
 260   2                      {
 261   3                              if(++iss[2] == 0) 
 262   3                              {
 263   4                                      if(++iss[1] == 0) 
 264   4                                      {
 265   5                                              ++iss[0];
 266   5                                      }
 267   4                              }
 268   3                      }    
 269   2                      uip_len = 0;
 270   2                      if(uip_conn->tcpstateflags == TIME_WAIT ||
 271   2                              uip_conn->tcpstateflags == FIN_WAIT_2) 
 272   2                      {
 273   3                              ++(uip_conn->timer);
 274   3                              if(uip_conn->timer == UIP_TIME_WAIT_TIMEOUT) 
 275   3                              {
 276   4                                      uip_conn->tcpstateflags = CLOSED;
 277   4                              }
 278   3                      } else if(uip_conn->tcpstateflags != CLOSED) 
 279   2                      {
 280   3                              /* If the connection has outstanding data, we increase the
 281   3                              connection's timer and see if it has reached the RTO value
 282   3                              in which case we retransmit. */
 283   3                              if(uip_conn->tcpstateflags & UIP_OUTSTANDING) 
 284   3                              {
 285   4                                      --(uip_conn->timer);
 286   4                                      if(uip_conn->timer == 0) 
 287   4                                      {
 288   5                                              if(uip_conn->nrtx == UIP_MAXRTX) 
 289   5                                              {
 290   6                                                      uip_conn->tcpstateflags = CLOSED;
 291   6                                                      
 292   6                                                      /* We call UIP_APPCALL() with uip_flags set to
 293   6                                                      UIP_TIMEDOUT to inform the application that the
 294   6                                                      connection has timed out. */
 295   6                                                      uip_flags = UIP_TIMEDOUT;
 296   6                                                      UIP_APPCALL();
 297   6                                                      
 298   6                                                      /* We also send a reset packet to the remote host. */
 299   6                                                      BUF->flags = TCP_RST | TCP_ACK;
 300   6                                                      goto tcp_send_nodata;
 301   6                                              }
 302   5                                              
 303   5                                              /* Exponential backoff. */
C51 COMPILER V7.08   UIP                                                                   12/26/2003 07:27:14 PAGE 6   

 304   5                                              uip_conn->timer = UIP_RTO << (uip_conn->nrtx > 4? 4: uip_conn->nrtx);
 305   5                                              
 306   5                                              ++(uip_conn->nrtx);
 307   5                                              
 308   5                                              /* Ok, so we need to retransmit. We do this differently
 309   5                                              depending on which state we are in. In ESTABLISHED, we
 310   5                                              call upon the application so that it may prepare the
 311   5                                              data for the retransmit. In SYN_RCVD, we resend the
 312   5                                              SYNACK that we sent earlier and in LAST_ACK we have to
 313   5                                              retransmit our FINACK. */
 314   5                                              UIP_STAT(++uip_stat.tcp.rexmit);
 315   5                                              switch(uip_conn->tcpstateflags & TS_MASK) 
 316   5                                              {
 317   6                                              case SYN_RCVD:
 318   6                                              /* In the SYN_RCVD state, we should retransmit our
 319   6                                                      SYNACK. */
 320   6                                                      goto tcp_send_synack;
 321   6                                                      
 322   6      #if UIP_ACTIVE_OPEN
                                                      case SYN_SENT:
                                                              /* In the SYN_SENT state, we retransmit out SYN. */
                                                              BUF->flags = 0;
                                                              goto tcp_send_syn;
              #endif /* UIP_ACTIVE_OPEN */
 328   6                                                      
 329   6                                              case ESTABLISHED:
 330   6                                              /* In the ESTABLISHED state, we call upon the application
 331   6                                              to do the actual retransmit after which we jump into
 332   6                                              the code for sending out the packet (the apprexmit
 333   6                                                      label). */
 334   6                                                      uip_len = 0;
 335   6                                                      uip_flags = UIP_REXMIT;
 336   6                                                      UIP_APPCALL();
 337   6                                                      goto apprexmit;
 338   6                                                      
 339   6                                              case FIN_WAIT_1:
 340   6                                              case CLOSING:
 341   6                                              case LAST_ACK:
 342   6                                                      /* In all these states we should retransmit a FINACK. */
 343   6                                                      goto tcp_send_finack;
 344   6                                                      
 345   6                                              }
 346   5                                      }
 347   4                              } else if((uip_conn->tcpstateflags & TS_MASK) == ESTABLISHED) 
 348   3                              {
 349   4                              /* If there was no need for a retransmission, we poll the
 350   4                                      application for new data. */
 351   4                                      uip_len = 0;
 352   4                                      uip_flags = UIP_POLL;
 353   4                                      UIP_APPCALL();
 354   4                                      goto appsend;
 355   4                              }
 356   3                      }   
 357   2                      goto drop;
 358   2              }
 359   1              
 360   1              /* This is where the input processing starts. */
 361   1              UIP_STAT(++uip_stat.ip.recv);
 362   1              
 363   1              /* Check validity of the IP header. */  
 364   1              if(BUF->vhl != 0x45)  { /* IP version and header length. */
 365   2                      UIP_STAT(++uip_stat.ip.drop);
C51 COMPILER V7.08   UIP                                                                   12/26/2003 07:27:14 PAGE 7   

 366   2                      UIP_STAT(++uip_stat.ip.vhlerr);
 367   2                      UIP_LOG("ip: invalid version or header length.");
 368   2                      goto drop;
 369   2              }
 370   1              
 371   1              /* Check the size of the packet. If the size reported to us in
 372   1              uip_len doesn't match the size reported in the IP header, there
 373   1              has been a transmission error and we drop the packet. */
 374   1              
 375   1      #if UIP_BUFSIZE > 255
 376   1      
 377   1              if(BUF->len[0] != (uip_len >> 8)) {
 378   2                      UIP_STAT(++uip_stat.ip.drop);
 379   2                      UIP_STAT(++uip_stat.ip.hblenerr);
 380   2                      UIP_LOG("ip: invalid length, high byte.");
 381   2                      /* IP length, high byte. */
 382   2                      goto drop;
 383   2              }
 384   1              if(BUF->len[1] != (uip_len & 0xff)) {
 385   2                      UIP_STAT(++uip_stat.ip.drop);
 386   2                      UIP_STAT(++uip_stat.ip.lblenerr);
 387   2                      UIP_LOG("ip: invalid length, low byte.");
 388   2                      /* IP length, low byte. */
 389   2                      goto drop;
 390   2              }
 391   1      #else
                      if(BUF->len[0] != 0) {        /* IP length, high byte. */
                              UIP_STAT(++uip_stat.ip.drop);
                              UIP_STAT(++uip_stat.ip.hblenerr);
                              UIP_LOG("ip: invalid length, high byte.");
                              goto drop;
                      } 
                      if(BUF->len[1] != uip_len) {  /* IP length, low byte. */
                              UIP_STAT(++uip_stat.ip.drop);
                              UIP_STAT(++uip_stat.ip.lblenerr);
                              UIP_LOG("ip: invalid length, low byte.");
                              goto drop;
                      } 
              #endif /* UIP_BUFSIZE > 255 */  
 405   1              
 406   1              if(BUF->ipoffset[0] & 0x3f) { /* We don't allow IP fragments. */
 407   2                      UIP_STAT(++uip_stat.ip.drop);
 408   2                      UIP_STAT(++uip_stat.ip.fragerr);
 409   2                      UIP_LOG("ip: fragment dropped.");    
 410   2                      goto drop;
 411   2              }
 412   1              
 413   1              /* Check if the packet is destined for our IP address. */
 414   1              if(BUF->destipaddr[0] != htons(((u16_t)UIP_IPADDR0 << 8) | UIP_IPADDR1)) {
 415   2                      UIP_STAT(++uip_stat.ip.drop);
 416   2                      UIP_LOG("ip: packet not for us.");        
 417   2                      goto drop;
 418   2              }
 419   1              if(BUF->destipaddr[1] != htons(((u16_t)UIP_IPADDR2 << 8) | UIP_IPADDR3)) {
 420   2                      UIP_STAT(++uip_stat.ip.drop);
 421   2                      UIP_LOG("ip: packet not for us.");        
 422   2                      goto drop;
 423   2              }
 424   1              
 425   1              if(uip_ipchksum() != 0xffff) { /* Compute and check the IP header
 426   2                                          checksum. */
 427   2                      UIP_STAT(++uip_stat.ip.drop);
C51 COMPILER V7.08   UIP                                                                   12/26/2003 07:27:14 PAGE 8   

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产91久久久久久一区二区 | 99热99精品| 中文字幕久久午夜不卡| 99国产一区二区三精品乱码| 亚洲视频一区在线| 欧美三级中文字幕在线观看| 激情五月激情综合网| 亚洲欧美在线视频观看| 日韩一区二区免费电影| 99久久精品国产毛片| 久久99最新地址| 一区二区三区中文免费| 亚洲欧洲国产专区| 亚洲精品一线二线三线| 欧美日韩另类一区| 国产揄拍国内精品对白| 午夜欧美视频在线观看| 亚洲夂夂婷婷色拍ww47| 久久久久久久性| 日韩女优毛片在线| 日韩精品一区在线| 制服丝袜一区二区三区| 欧美亚洲免费在线一区| 91麻豆国产福利在线观看| 韩国av一区二区三区| 国产美女精品在线| 国产精品一区专区| 成人在线一区二区三区| 国产一区二区91| 成人黄色网址在线观看| 国产精品 欧美精品| 狠狠色丁香久久婷婷综合_中| 午夜伦理一区二区| 久久精品国产免费| 成人性生交大片免费看视频在线| 国产精品亚洲专一区二区三区| 久久99九九99精品| 高清国产一区二区| 色偷偷成人一区二区三区91| 欧美日韩一区不卡| 欧美刺激午夜性久久久久久久| 日韩亚洲欧美高清| 国产蜜臀av在线一区二区三区| 亚洲免费观看高清完整版在线| 亚洲免费在线看| 夜夜嗨av一区二区三区四季av| 蜜臀久久99精品久久久久久9 | 国产精品高潮呻吟久久| 一区二区三区国产| 国产成人啪免费观看软件| 欧美一区二区啪啪| 中文字幕一区在线观看视频| 亚洲va国产天堂va久久en| 国产伦精品一区二区三区免费| 欧美视频第二页| 国产精品国产三级国产普通话99| 日韩av中文在线观看| 99re热视频这里只精品| 久久久久免费观看| 日韩极品在线观看| 色综合av在线| 亚洲视频一区二区免费在线观看| 激情六月婷婷综合| 精品免费日韩av| 日本少妇一区二区| 日韩一级黄色片| 日韩va亚洲va欧美va久久| 欧美主播一区二区三区| 亚洲人亚洲人成电影网站色| 成人av在线一区二区三区| 国产亚洲欧美中文| 91在线视频观看| 亚洲精品一二三| 欧美老女人在线| 男女男精品网站| 久久久久国产精品厨房| 国产成人高清视频| 亚洲成a人在线观看| 日韩三级免费观看| 成人综合日日夜夜| 亚洲成人www| 久久久99精品久久| 91福利视频网站| 国产精品一区二区三区乱码| 欧美激情在线看| 欧美一级免费观看| 国产精品伊人色| 午夜精品一区二区三区电影天堂 | 欧美日韩视频在线一区二区| 免费人成在线不卡| 亚洲日本在线a| 精品国产精品网麻豆系列| 91农村精品一区二区在线| 亚洲成人精品在线观看| 亚洲国产精品成人久久综合一区| 99久久久精品| 国产毛片精品国产一区二区三区| 亚洲欧美视频一区| 国产精品久久777777| 国产亚洲精品资源在线26u| 欧美人动与zoxxxx乱| 99re视频这里只有精品| 国产精品自产自拍| 日本亚洲一区二区| 午夜国产精品一区| 一区二区三区中文字幕电影| 久久亚洲春色中文字幕久久久| 欧美电影在线免费观看| 欧美丝袜自拍制服另类| 欧美亚洲综合另类| 99久久国产综合精品女不卡| 国产九九视频一区二区三区| 奇米色一区二区| 美腿丝袜亚洲色图| 国产真实乱对白精彩久久| 国产在线观看一区二区| 国产精品一区免费在线观看| 精品在线播放免费| 国产a级毛片一区| 99久久er热在这里只有精品15| 成人精品视频一区| 91麻豆蜜桃一区二区三区| 91麻豆视频网站| 日韩视频一区二区| 国产欧美一区二区精品婷婷| 国产精品久久一级| 亚洲444eee在线观看| 丁香网亚洲国际| 欧美久久久久中文字幕| 日韩三级视频在线看| 国产精品白丝在线| 毛片基地黄久久久久久天堂| 丁香激情综合五月| 日韩一区二区在线看| 最新欧美精品一区二区三区| 日韩不卡一区二区三区| 大胆亚洲人体视频| 91精品国产麻豆国产自产在线| 国产精品久久夜| 国产露脸91国语对白| 欧美肥大bbwbbw高潮| 亚洲精品国产a| www.亚洲精品| 久久久精品人体av艺术| 久久99久久久久久久久久久| 91麻豆免费看| 亚洲欧美日韩一区| 99麻豆久久久国产精品免费优播| 精品国产免费一区二区三区四区 | 国产一区二区视频在线| 欧美成人女星排名| 免费黄网站欧美| 久久久久久亚洲综合| 国内精品自线一区二区三区视频| 欧美高清精品3d| 全国精品久久少妇| 精品国产一区二区三区av性色| 免费高清视频精品| 久久人人97超碰com| 国产成人aaa| 亚洲免费高清视频在线| 欧美日韩电影在线| 国产精品一二三四| 国产精品你懂的在线| 91在线精品一区二区| 亚洲国产美女搞黄色| 欧美一区二区在线观看| 久久电影网站中文字幕| 国产欧美一区视频| 欧美喷水一区二区| 成人午夜电影久久影院| 一区二区三区蜜桃| 国产亚洲综合色| 欧美日韩日日骚| 国产91精品精华液一区二区三区| 亚洲精品成人天堂一二三| 日韩免费一区二区三区在线播放| 福利一区福利二区| 午夜精品久久久久久久99水蜜桃| 国产日韩av一区| 欧美成人a∨高清免费观看| 99re成人精品视频| 国产精品白丝av| 蜜臀a∨国产成人精品| 一区二区三区欧美| 中文字幕一区二区三区在线观看| 日韩一区二区三区视频在线| 日本道免费精品一区二区三区| 奇米色一区二区| 裸体在线国模精品偷拍| 视频一区中文字幕| 亚洲高清免费一级二级三级| 亚洲精品五月天| 亚洲欧美另类图片小说| 国产精品毛片无遮挡高清| 国产亚洲成年网址在线观看| 欧美一区二区国产| xfplay精品久久| 中文字幕+乱码+中文字幕一区| 国产三级精品三级|