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

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

?? tcp.lst

?? 單片機控制RTL8019AS的程序,C語言編寫,仿真通過.
?? LST
?? 第 1 頁 / 共 3 頁
字號:
 422   3               // Since timestamps are optional and we do not use
 423   3               // them, do not have to send them 
 424   3               // After sending the SYN ACK the client browser will
 425   3               // blast me with 2 messages, an ACK, and a HTTP GET
 426   3               tcp_send(FLG_SYN | FLG_ACK, 28, nr);
 427   3               
C51 COMPILER V7.06   TCP                                                                   10/09/2006 21:51:55 PAGE 8   

 428   3               // My SYN flag increments my sequence number
 429   3               // My sequence number is always updated to point to 
 430   3               // the next byte to be sent.  So the incoming ack
 431   3               // number should equal my sequence number  
 432   3               conxn[nr].my_sequence++;
 433   3            
 434   3               conxn[nr].state = STATE_SYN_RCVD;
 435   3           
 436   3            }
 437   2                      else 
 438   2            {
 439   3               // Sender is out of sync so send reset
 440   3               conxn[nr].ipaddr = 0;
 441   3               tcp_send(FLG_RST, 20, NO_CONNECTION);   
 442   3            } 
 443   2                      break;
 444   2      
 445   2      
 446   2            case STATE_SYN_RCVD:
 447   2            // He may already be sending me data - should process it
 448   2                      conxn[nr].his_sequence += data_len;
 449   2            conxn[nr].his_ack = tcp->ack_number;
 450   2                  
 451   2            if (tcp->flags & FLG_FIN)
 452   2                      {
 453   3                         // His FIN counts as a byte of data
 454   3               conxn[nr].his_sequence++;
 455   3               tcp_send(FLG_ACK, 20, nr);
 456   3               conxn[nr].state = STATE_CLOSE_WAIT;
 457   3      
 458   3                     
 459   3                      // At this point we would normally wait for the application
 460   3               // to close.  For now, send FIN right away.
 461   3               tcp_send(FLG_FIN | FLG_ACK, 20, nr);
 462   3               conxn[nr].my_sequence++;   // For my FIN
 463   3               conxn[nr].state = STATE_LAST_ACK;
 464   3      
 465   3            }
 466   2      
 467   2                      // Make sure he is ACKing my SYN
 468   2                      else if (tcp->ack_number == conxn[nr].my_sequence)
 469   2            {
 470   3               conxn[nr].state = STATE_ESTABLISHED;
 471   3               // If sender sent data ignore it and he will resend
 472   3               // Do not send response because we received no
 473   3               // data... wait for client to send something to me 
 474   3            }
 475   2            break;
 476   2      
 477   2      
 478   2            case STATE_ESTABLISHED:
 479   2            conxn[nr].his_ack = tcp->ack_number;
 480   2                 
 481   2            if (tcp->flags & FLG_FIN)
 482   2                      {
 483   3                         // His FIN counts as a byte of data
 484   3               conxn[nr].his_sequence++;
 485   3               tcp_send(FLG_ACK, 20, nr);
 486   3               conxn[nr].state = STATE_CLOSE_WAIT;
 487   3      
 488   3                     
 489   3                      // At this point we would normally wait for the application
C51 COMPILER V7.06   TCP                                                                   10/09/2006 21:51:55 PAGE 9   

 490   3               // to close.  For now, send FIN immediately.
 491   3               tcp_send(FLG_FIN | FLG_ACK, 20, nr);
 492   3               conxn[nr].my_sequence++;   // For my FIN
 493   3               conxn[nr].state = STATE_LAST_ACK;
 494   3      
 495   3            }
 496   2                      else if (data_len != 0)
 497   2            {
 498   3                              // Received normal TCP segment from sender with data
 499   3              // Send an ACK immediately and pass the data on to
 500   3                              // the application
 501   3                              conxn[nr].his_sequence += data_len;
 502   3               tcp_send(FLG_ACK, 20, nr);             // Send ACK
 503   3                
 504   3                                                                                                      
 505   3                              // Send pointer to start of TCP payload
 506   3                              // http_server increments my sequence number when 
 507   3               // sending so don't worry about it here
 508   3               result = http_server(inbuf, header_len, nr, 0);
 509   3                                                                      
 510   3                              // Start timer to close conxn if no activity
 511   3                              conxn[nr].inactivity = INACTIVITY_TIME;
 512   3                      }
 513   2                 break;
 514   2      
 515   2      
 516   2            case STATE_CLOSE_WAIT:
 517   2            // With this code, should not get here
 518   2            
 519   2            break;
 520   2      
 521   2            
 522   2            case STATE_LAST_ACK:
 523   2            conxn[nr].his_ack = tcp->ack_number;
 524   2                  
 525   2            // If he ACK's my FIN then close
 526   2            if (tcp->ack_number == conxn[nr].my_sequence)
 527   2            {
 528   3               conxn[nr].state = STATE_CLOSED;
 529   3               conxn[nr].ipaddr = 0;  // Free up struct area
 530   3            }
 531   2            break;
 532   2      
 533   2            
 534   2            case STATE_FIN_WAIT_1:
 535   2            // He may still be sending me data - should process it
 536   2                      conxn[nr].his_sequence += data_len;
 537   2            conxn[nr].his_ack = tcp->ack_number;
 538   2                        
 539   2            if (tcp->flags & FLG_FIN)
 540   2            {
 541   3               // His FIN counts as a byte of data
 542   3               conxn[nr].his_sequence++;
 543   3               tcp_send(FLG_ACK, 20, nr);
 544   3               
 545   3               // If he has ACK'd my FIN then we can close connection
 546   3               if (tcp->ack_number == conxn[nr].my_sequence)
 547   3                              {
 548   4                      conxn[nr].state = STATE_TIME_WAIT;
 549   4                     
 550   4                      conxn[nr].state = STATE_CLOSED;
 551   4                      conxn[nr].ipaddr = 0;  // Free up connection
C51 COMPILER V7.06   TCP                                                                   10/09/2006 21:51:55 PAGE 10  

 552   4      
 553   4              }
 554   3                              else
 555   3                              {
 556   4                                      // He has not ACK'd my FIN.  This happens when there is a simultaneous
 557   4                                      // close - I got his FIN but he has not yet ACK'd my FIN
 558   4                                      conxn[nr].state = STATE_CLOSING;
 559   4      
 560   4                              }
 561   3                      }
 562   2            else if (tcp->ack_number == conxn[nr].my_sequence)
 563   2            {
 564   3               // He has ACK'd my FIN but has not sent a FIN yet himself
 565   3               conxn[nr].state = STATE_FIN_WAIT_2;
 566   3      
 567   3            }
 568   2            break;
 569   2      
 570   2            
 571   2            case STATE_FIN_WAIT_2:
 572   2            // He may still be sending me data - should process it
 573   2                      conxn[nr].his_sequence += data_len;
 574   2            conxn[nr].his_ack = tcp->ack_number;
 575   2            
 576   2            if (tcp->flags & FLG_FIN)
 577   2            {
 578   3               conxn[nr].his_sequence++; // For his FIN flag
 579   3               tcp_send(FLG_ACK, 20, nr);
 580   3               conxn[nr].state = STATE_TIME_WAIT;
 581   3               conxn[nr].state = STATE_CLOSED;
 582   3               conxn[nr].ipaddr = 0;  // Free up struct area
 583   3            }
 584   2            break;
 585   2                  
 586   2                  
 587   2            case STATE_TIME_WAIT:
 588   2            // With this code, should not get here
 589   2            break;
 590   2      
 591   2            
 592   2            case STATE_CLOSING:
 593   2            // Simultaneous close has happened. I have received his FIN
 594   2            // but he has not yet ACK'd my FIN.  Waiting for ACK.
 595   2                      // Will not receive data in this state
 596   2                      conxn[nr].his_ack = tcp->ack_number;
 597   2                      
 598   2                      if (tcp->ack_number == conxn[nr].my_sequence)
 599   2            {
 600   3                         conxn[nr].state = STATE_TIME_WAIT;
 601   3               
 602   3               // Do not send any response to his ACK
 603   3               conxn[nr].state = STATE_CLOSED;
 604   3               conxn[nr].ipaddr = 0;  // Free up struct area
 605   3      
 606   3            }
 607   2            break;
 608   2      
 609   2            
 610   2            default:
 611   2            break;
 612   2         }
 613   1         
C51 COMPILER V7.06   TCP                                                                   10/09/2006 21:51:55 PAGE 11  

 614   1       
 615   1         
 616   1      }
 617          
 618          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   3722    ----
   CONSTANT SIZE    =     10    ----
   XDATA SIZE       =    231    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      19
   IDATA SIZE       =      5      25
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩国产精品久久| 中文字幕日韩精品一区| 欧美激情艳妇裸体舞| 国产精品一区二区久激情瑜伽 | 中文字幕一区不卡| 成人精品免费看| 最新热久久免费视频| 91麻豆免费看| 亚洲一级二级在线| 日韩女优av电影| 国产精品中文字幕欧美| 国产精品网站在线播放| 99精品欧美一区| 亚洲国产一区二区a毛片| 欧美疯狂性受xxxxx喷水图片| 免费在线一区观看| 国产亚洲1区2区3区| 91在线免费播放| 天天射综合影视| 精品国产区一区| 99国产精品久久| 婷婷丁香激情综合| 久久久久国产精品免费免费搜索| 99久久久精品免费观看国产蜜| 亚洲综合色婷婷| 欧美精品一区二区三区四区| av在线不卡免费看| 日本在线不卡视频| 国产精品区一区二区三| 717成人午夜免费福利电影| 国产精品白丝av| 亚洲综合网站在线观看| 久久综合九色综合97婷婷女人 | 色噜噜狠狠成人中文综合| 夜夜爽夜夜爽精品视频| 26uuu欧美日本| 色婷婷av一区| 国产大陆a不卡| 亚洲一区在线观看视频| 久久在线免费观看| 欧美日韩国产大片| 成人动漫精品一区二区| 免费欧美在线视频| 亚洲人快播电影网| 欧美一级片在线观看| 99久久免费视频.com| 视频在线观看一区| 18涩涩午夜精品.www| 欧美电影免费观看高清完整版在线 | 亚洲精品成人a在线观看| 欧美不卡一区二区| 欧美在线你懂的| 丁香婷婷深情五月亚洲| 日韩精品午夜视频| 亚洲三级在线观看| 国产欧美精品在线观看| 91麻豆精品国产91久久久更新时间| 风间由美一区二区av101| 六月丁香婷婷久久| 亚洲观看高清完整版在线观看| 国产农村妇女毛片精品久久麻豆| 欧美一级片在线观看| 欧美日韩国产在线观看| 色综合色狠狠综合色| 成人av免费观看| 国产成a人无v码亚洲福利| 日韩电影在线一区二区三区| 亚洲电影激情视频网站| 成人欧美一区二区三区在线播放| 国产女主播在线一区二区| 欧美一区二区三区免费视频| 欧美精品三级在线观看| 欧美在线你懂得| 一本色道久久综合亚洲精品按摩| 成人成人成人在线视频| 成人av片在线观看| 福利一区二区在线观看| 国产不卡视频在线播放| 国产一区在线观看麻豆| 国产成人丝袜美腿| 福利一区在线观看| 福利一区福利二区| 国产黄色91视频| 国产91丝袜在线18| 成人性色生活片免费看爆迷你毛片| 久久99久久99| 国产精一区二区三区| 国产盗摄一区二区| 99精品偷自拍| 色偷偷久久一区二区三区| 色综合天天天天做夜夜夜夜做| 91原创在线视频| 在线观看视频91| 777午夜精品视频在线播放| 欧美电影在线免费观看| 337p日本欧洲亚洲大胆精品| 久久网这里都是精品| 国产精品久久综合| 一区二区久久久久| 日韩中文字幕1| 麻豆成人91精品二区三区| 国产一区二区三区香蕉| 成人深夜福利app| 在线视频国内自拍亚洲视频| 欧美一级久久久| 国产欧美精品一区二区三区四区| 中文字幕一区av| 亚洲在线视频一区| 麻豆成人久久精品二区三区小说| 国产麻豆精品theporn| 99久久免费视频.com| 欧美视频一区二区| 精品日韩一区二区| 国产精品视频观看| 亚洲成人av中文| 精品一区二区三区免费播放| 成人av第一页| 欧美一区二区三区在线看| 亚洲国产精品精华液2区45| 亚洲黄色免费电影| 国产综合色精品一区二区三区| 99久久777色| 精品国产一区二区国模嫣然| 专区另类欧美日韩| 免费人成黄页网站在线一区二区| 成人涩涩免费视频| 欧美精品乱码久久久久久| 国产欧美精品一区aⅴ影院| 亚洲电影一区二区| 国产98色在线|日韩| 制服丝袜亚洲精品中文字幕| 国产精品入口麻豆原神| 蜜桃av一区二区三区电影| 99久久99久久综合| 精品美女在线播放| 午夜精品123| 成人久久视频在线观看| 日韩免费看的电影| 亚洲国产精品综合小说图片区| 国产91综合一区在线观看| 欧美一级在线免费| 亚洲一区二区三区四区的| 成人黄色综合网站| 精品理论电影在线观看 | 国产米奇在线777精品观看| 97久久超碰国产精品电影| 日韩欧美激情在线| 亚洲.国产.中文慕字在线| 色综合 综合色| 欧美经典一区二区| 免费人成黄页网站在线一区二区| 在线免费不卡电影| 亚洲图片另类小说| 国产mv日韩mv欧美| 久久综合网色—综合色88| 免费观看久久久4p| 欧美精品一卡两卡| 亚洲一区免费在线观看| 99re66热这里只有精品3直播 | 久久伊人中文字幕| 日韩av网站免费在线| 欧洲视频一区二区| 亚洲男人的天堂在线aⅴ视频| 国产成人激情av| 久久美女高清视频| 狠狠色综合日日| 精品国产一区二区三区四区四| 午夜精品在线视频一区| 欧美日韩三级在线| 亚洲国产综合视频在线观看| 欧美三级电影在线看| 天堂va蜜桃一区二区三区漫画版 | 91精品国产一区二区三区香蕉| 午夜私人影院久久久久| 欧美三级电影一区| 香港成人在线视频| 日韩一区二区精品在线观看| 奇米精品一区二区三区在线观看| 欧美日韩视频在线第一区 | www.成人网.com| 最新热久久免费视频| 色一情一伦一子一伦一区| 亚洲一区二区三区中文字幕| 欧美色综合久久| 天天爽夜夜爽夜夜爽精品视频| 欧美一区二视频| 久久不见久久见免费视频7| 欧美变态口味重另类| 国产福利一区在线| 亚洲欧美怡红院| 欧美图区在线视频| 蜜臀va亚洲va欧美va天堂| 久久麻豆一区二区| 99久久国产免费看| 午夜精品久久久久久久久久 | 国产免费成人在线视频| 91无套直看片红桃| 亚洲二区视频在线| 国产夜色精品一区二区av| 97se亚洲国产综合自在线不卡|