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

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

?? conecho.c

?? 聞停開發板視頻程序
?? C
字號:
//--------------------------------------------------------------------------
// IP Stack Console Demonstration Program
//--------------------------------------------------------------------------
// ConEcho.c
//
// Example TCP/UDP sockets program - ECHO
//
// Author: Michael A. Denio
// Copyright 1999 by Texas Instruments Inc.
//-------------------------------------------------------------------------
#include <netmain.h>
#include "console.h"

static void EchoTcp( IPN IPAddr );
static void EchoUdp( IPN IPAddr );
static void OobTest( IPN IPAddr, uint fInline );

//-------------------------------------------------------------------------
// ConCmdEcho()
//
// Function to run TCP/UDP echo tests
//-------------------------------------------------------------------------
void ConCmdEcho( int ntok, char *tok1, char *tok2 )
{
    IPN IPTmp;

    // Check for 'Echo tcp x.x.x.x'
    if( ntok == 2 && !strcmp( tok1, "tcp" ) )
    {
       if( !ConStrToIPN( tok2, &IPTmp ) )
           ConPrintf("Invalid address\n\n");
       else
           EchoTcp( IPTmp );
    }
    // Check for 'Echo udp x.x.x.x'
    else if( ntok == 2 && !strcmp( tok1, "udp" ) )
    {
       if( !ConStrToIPN( tok2, &IPTmp ) )
           ConPrintf("Invalid address\n");
       else
           EchoUdp( IPTmp );
    }
    // Check for 'Echo tcpurg x.x.x.x'
    else if( ntok == 2 && !strcmp( tok1, "tcpurg" ) )
    {
       if( !ConStrToIPN( tok2, &IPTmp ) )
           ConPrintf("Invalid address\n");
       else
       {
           OobTest( IPTmp, 0 );
           OobTest( IPTmp, 1 );
       }
    }
    else if( ntok == 0 )
    {
        ConPrintf("\n[Echo Command]\n");
        ConPrintf("\nRun TCP and UDP packet echo tests. Note that the\n");
        ConPrintf("'tcpurg' test requires a compatible target\n\n");
        ConPrintf("echo tcp x.x.x.x    - Run TCP echo test\n");
        ConPrintf("echo udp x.x.x.x    - Run UDP echo test\n");
        ConPrintf("echo tcpurg x.x.x.x - Run TCP urgent data test\n\n");
    }
    else
        ConPrintf("\nCommand error. Type 'echo' for help\n");
}

//----------------------------------------------------------------------
// EchoTcp()
//
// Test ECHO with a TCP socket
//----------------------------------------------------------------------
static void EchoTcp( IPN IPAddr )
{
    SOCKET  s;
    struct  sockaddr_in sin1;
    int     test,i;
    char    *pBuf = 0;
    struct  timeval timeout;

    ConPrintf("\n== Start TCP Echo Client Test ==\n");

    // Create test socket
    s = socket(AF_INET, SOCK_STREAMNC, IPPROTO_TCP);
    if( s == INVALID_SOCKET )
    {
        ConPrintf("failed socket create (%d)\n",fdError());
        goto leave;
    }

    // Prepare address for connect
    bzero( &sin1, sizeof(struct sockaddr_in) );
    sin1.sin_family      = AF_INET;
    sin1.sin_len         = sizeof( sin1 );
    sin1.sin_addr.s_addr = IPAddr;
    sin1.sin_port        = htons(7);

    // Configure our timeout to be 5 seconds
    timeout.tv_sec  = 5;
    timeout.tv_usec = 0;
    setsockopt( s, SOL_SOCKET, SO_SNDTIMEO, &timeout, sizeof( timeout ) );
    setsockopt( s, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof( timeout ) );

    // Connect socket
    if ( connect( s, (PSA) &sin1, sizeof(sin1) ) < 0 )
    {
        ConPrintf("failed connect (%d)\n",fdError());
        goto leave;
    }

    // Allocate a working buffer
    if( !(pBuf = mmBulkAlloc( 12288 )) )
    {
        ConPrintf("failed temp buffer allocation\n");
        goto leave;
    }

    // Start Test
    for( test=48; test<=12288; test*=2 )
    {
        // Fill buffer with a test pattern
        for(i=0; i<test; i++)
            *(pBuf+i) = (char)i;

        // Send the buffer
        ConPrintf("Sending %d bytes ... ",test);
        if( send( s, pBuf, test, 0 ) < 0 )
        {
            ConPrintf("send failed (%d)\n",fdError());
            break;
        }

        // Clear the test pattern
        mmZeroInit( pBuf, (uint)test );

        // Try and receive the test pattern back
        ConPrintf("receive ... ");
        i = recv( s, pBuf, test, MSG_WAITALL );
        if( i < 0 )
        {
            ConPrintf("recv failed (%d)\n",fdError());
            break;
        }

        // Verify reception size
        if( i != test )
        {
            ConPrintf("received %d (not %d) bytes\n",i,test);
            break;
        }

        // Verify the test pattern
        ConPrintf("verify ... ");
        for(i=0; i<test; i++)
            if( *(pBuf+i) != (char)i )
            {
                ConPrintf("verify failed at byte %d\n",i);
                break;
            }
        if( i==test )
            ConPrintf("passed\n");
    }
leave:
    if( pBuf )
        mmBulkFree( pBuf );
    if( s != INVALID_SOCKET )
        fdClose( s );

    ConPrintf("== End TCP Echo Client Test ==\n\n");
}

//----------------------------------------------------------------------
// EchoUdp()
//
// Test ECHO with a UDP socket
//----------------------------------------------------------------------
#define		PC_ADDR		"10.129.8.69"
#define		PC_PORT		5050
static void EchoUdp( IPN IPAddr )
{
    SOCKET  s;
    struct  sockaddr_in sin1;
    struct  sockaddr_in sin2;
    int     test,i,tmp;
    char    *pBuf = 0;
    struct  timeval timeout;
	int		time_send=0;
	int		num_send = 0;
	int     num_buffer = 60;

    ConPrintf("\n== Start UDP Echo Client Test ==\n");

    // Create test socket
    s = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
    if( s == INVALID_SOCKET )
    {
        ConPrintf("failed socket create (%d)\n",fdError());
        goto leave;
    }

    // We must bind since we won't issue a connect
    bzero( &sin1, sizeof(struct sockaddr_in) );
    if( bind( s, (PSA) &sin1, sizeof(sin1) ) < 0 )
    {
        ConPrintf("failed bind (%d)\n",fdError());
        goto leave;
    }

    // Prepare address for the SendTo
    bzero( &sin1, sizeof(struct sockaddr_in) );
    sin1.sin_family      = AF_INET;
    sin1.sin_len         = sizeof( sin1 );

 //   sin1.sin_addr.s_addr = IPAddr;
 //   sin1.sin_port        = htons(7);

	sin1.sin_addr.s_addr = inet_addr(PC_ADDR);
    sin1.sin_port        = htons(PC_PORT);


    // Configure our timeout to be 5 seconds
    timeout.tv_sec  = 50;
    timeout.tv_usec = 50;
    //setsockopt( s, SOL_SOCKET, SO_SNDTIMEO, &timeout, sizeof( timeout ) );
    //setsockopt( s, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof( timeout ) );

    // Allocate a working buffer
    if( !(pBuf = mmBulkAlloc( 1024 )) )
    {
        ConPrintf("failed temp buffer allocation\n");
        goto leave;
    }
	memset(pBuf, 0, 10);

    // Start Test
	time_send = 0;

    for(i=0; i<num_buffer; i++)
            *(pBuf+i) = (char)(i+65);

    for( test=1; test<=10; test++ )
    {
        // Fill buffer with a test pattern

        // Send the buffer
        if( (num_send = sendto( s, pBuf, num_buffer, 0, &sin1, sizeof(sin1) )) < 0 )
        {
            ConPrintf("send failed (%d)\n",fdError());
            break;
        }
		TaskSleep(0);

		time_send++;
        ConPrintf("Sending %d bytes\n . ",num_send);
        // Clear the test pattern
        //mmZeroInit( pBuf, (uint)test );
    }

/*
        // Try and receive the test pattern back
        ConPrintf("receive . ");
        tmp = sizeof( sin2 );
        if( recvfrom( s, pBuf, test, MSG_WAITALL, &sin2, &tmp ) < 0 )
        {
            ConPrintf("recv failed (%d)\n",fdError());
            break;
        }

        // Verify the test pattern
        ConPrintf("(");
        ConPrintIPN( sin2.sin_addr.s_addr );
        ConPrintf(":%d) verify . ", htons( sin2.sin_port ) );
        for(i=0; i<test; i++)
            if( *(pBuf+i) != (char)i )
            {
                ConPrintf("verify failed at byte %d\n",i);
                break;
            }
        if( i==test )
            ConPrintf("passed\n");
    }
*/
leave:
	
	
     ConPrintf("time_send =  %d \n",time_send);
    if( pBuf )
        mmBulkFree( pBuf );
    if( s != INVALID_SOCKET )
        fdClose( s );

    ConPrintf("== End UDP Echo Client Test ==\n\n");
}

//----------------------------------------------------------------------
// OobTest()
//
// Test receiving OOB data with a TCP socket
//----------------------------------------------------------------------
static void OobTest( IPN IPAddr, uint fInline )
{
    SOCKET  s;
    struct  sockaddr_in sin1;
    int     test,i;
    char    buf[48];
    struct  timeval timeout;

    ConPrintf("\n== Start OOB Test ==\n");

    // Create the test socket
    s = socket(AF_INET, SOCK_STREAMNC, IPPROTO_TCP);
    if( s == INVALID_SOCKET )
    {
        ConPrintf("failed socket create (%d)\n",fdError());
        goto leave;
    }

    // Prepare the address for connecting
    bzero( &sin1, sizeof(struct sockaddr_in) );
    sin1.sin_family      = AF_INET;
    sin1.sin_len         = sizeof( sin1 );
    sin1.sin_addr.s_addr = IPAddr;
    sin1.sin_port        = htons(999);

    // Configure our timeout to be 5 seconds
    timeout.tv_sec  = 5;
    timeout.tv_usec = 0;
    setsockopt( s, SOL_SOCKET, SO_SNDTIMEO, &timeout, sizeof( timeout ) );
    setsockopt( s, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof( timeout ) );

    // Connect the socket
    if ( connect( s, (PSA) &sin1, sizeof(sin1) ) < 0 )
    {
        ConPrintf("failed connect (%d)\n",fdError());
        goto leave;
    }

    //
    // Sending a single byte to *OUR* ehco server will trigger the OOB
    // test. This test will fail if connected to a generic echo server
    //
    if( !fInline )
        ConPrintf("\nConnected in NORMAL mode\n");
    else
    {
        ConPrintf("\nConnected in INLINE mode\n");

        // Setup socket for "inline" OOB data
        i = 1;
        if( setsockopt( s, SOL_SOCKET, SO_OOBINLINE,
                        (char * )&i, sizeof(i) ) < 0 )
        {
            ConPrintf("failed setsockopt (%d)\n",fdError());
            goto leave;
        }
    }

    // We need to sleep for a bit to make sure all the packets get here
    TaskSleep( 2*1000 );

    // Call receive without the OOB flag
    //  This should return all the data bytes up to the OOB mark.

    if( (test = recv( s, buf, sizeof(buf), 0 )) < 0 )
        ConPrintf("failed read 1 (%d)\n",fdError());
    else
    {
        ConPrintf("Received %d normal bytes ( ",test);
        for( i=0; i<test; i++ )
            ConPrintf("%d ",*(buf+i));
        ConPrintf(")\n");
    }

    // Call receive with the OOB flag
    //  This should return a single OOB data byte in NORMAL
    //  mode, and an error in INLINE mode
    if( (test=recv( s, buf, sizeof(buf), MSG_OOB )) < 0 )
    {
        if( !fInline )
            ConPrintf("failed read 2 (%d)\n",fdError());
    }
    else
    {
        if( fInline )
            ConPrintf("read 2 passed - should have failed\n");
        ConPrintf("Received %d OOB byte(s) (%d)\n",test,*buf);
    }

    // Call receive without the OOB flag
    //     This should return remainder of the data in the buffer

    if( (test = recv( s, buf, sizeof(buf), 0 )) < 0 )
        ConPrintf("failed read 3 (%d)\n",fdError());
    else
    {
        ConPrintf("Received %d normal bytes ( ",test);
        for( i=0; i<test; i++ )
            ConPrintf("%d ",*(buf+i));
        ConPrintf(")\n");
    }

leave:
    if( s != INVALID_SOCKET )
        fdClose( s );

    ConPrintf("\n== End OOB Test ==\n\n");
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美另类在线| 在线播放91灌醉迷j高跟美女| 亚洲超丰满肉感bbw| 久久久高清一区二区三区| 欧美亚洲免费在线一区| 成人激情av网| 国产一区二区女| 丝袜诱惑亚洲看片| 最新不卡av在线| 久久久久88色偷偷免费| 日韩写真欧美这视频| 欧美特级限制片免费在线观看| 国产成人aaa| 裸体一区二区三区| 日韩国产精品久久久久久亚洲| 亚洲少妇30p| 亚洲欧洲一区二区三区| 国产亚洲一区二区三区在线观看| 欧美一级淫片007| 欧美日韩aaaaa| 欧美日韩亚洲另类| 日本道色综合久久| 色综合久久久久综合| av电影一区二区| 成a人片国产精品| 国产91精品在线观看| 国产一区二区精品久久99 | 天堂av在线一区| 亚洲一线二线三线久久久| 亚洲精品免费在线| 亚洲精品免费一二三区| 亚洲人亚洲人成电影网站色| 国产精品国产自产拍高清av| 国产精品天美传媒沈樵| 欧美激情一区二区三区蜜桃视频| 欧美高清在线一区| 国产精品乱码人人做人人爱| 日本一区二区三区四区在线视频| 欧美国产在线观看| 国产精品另类一区| 中文字幕一区二区不卡| 亚洲精品成人精品456| 亚洲精品免费在线播放| 亚洲国产日日夜夜| 三级一区在线视频先锋| 青青国产91久久久久久| 久久er99热精品一区二区| 激情综合一区二区三区| 国产乱人伦偷精品视频免下载| 国产在线精品一区二区夜色| 国产美女精品人人做人人爽 | 蜜臀久久久99精品久久久久久| 日韩电影在线免费看| 久久精品国产网站| 东方aⅴ免费观看久久av| 不卡一区中文字幕| 欧美亚洲综合网| 欧美一级欧美三级在线观看| www成人在线观看| 亚洲欧美综合另类在线卡通| 一区二区三区精密机械公司| 秋霞电影一区二区| 风间由美一区二区av101| 91老师片黄在线观看| 欧美另类久久久品| 久久婷婷综合激情| 国产精品不卡视频| 丝袜美腿亚洲综合| 国产做a爰片久久毛片| av不卡免费电影| 69久久99精品久久久久婷婷| 久久亚洲一区二区三区四区| 亚洲乱码国产乱码精品精98午夜| 视频一区二区中文字幕| 国产二区国产一区在线观看| 日本二三区不卡| 欧美大片一区二区| 亚洲色图.com| 久久99国产精品久久99| 91玉足脚交白嫩脚丫在线播放| 欧美一级电影网站| 亚洲免费在线播放| 国内精品写真在线观看| 欧美日韩中文另类| 欧美极品美女视频| 奇米影视一区二区三区| 91在线无精精品入口| 日韩丝袜情趣美女图片| 亚洲摸摸操操av| 国产精品一二一区| 欧美一级xxx| 亚洲最快最全在线视频| 国产福利一区二区三区在线视频| 欧美日韩不卡视频| 亚洲欧美自拍偷拍色图| 久久91精品久久久久久秒播| 欧美性感一区二区三区| 欧美国产日韩一二三区| 老司机精品视频线观看86 | 欧洲一区二区三区在线| 久久久精品黄色| 日日噜噜夜夜狠狠视频欧美人| 97久久超碰国产精品| 久久免费美女视频| 日本不卡中文字幕| 欧美日韩精品高清| 一区二区三区在线观看欧美| 国产成人h网站| 久久久久久久久久久黄色| 日本sm残虐另类| 欧美视频一区二区三区四区 | 欧美日韩免费一区二区三区 | 972aa.com艺术欧美| 国产日本欧洲亚洲| 激情伊人五月天久久综合| 欧美日韩中文字幕一区二区| 亚洲精品久久久久久国产精华液| 国产+成+人+亚洲欧洲自线| 精品国产髙清在线看国产毛片| 日本最新不卡在线| 欧美区一区二区三区| 亚洲永久免费av| 欧美亚洲综合另类| 亚洲激情图片qvod| 91极品美女在线| 亚洲精品免费在线观看| 日本国产一区二区| 亚洲免费观看高清| 欧美主播一区二区三区美女| 一区二区三区不卡在线观看| 色婷婷激情综合| 亚洲二区视频在线| 欧美日韩国产首页| 日韩黄色片在线观看| 欧美区一区二区三区| 免费观看30秒视频久久| 欧美成人一区二区三区片免费| 美女在线视频一区| 欧美精品一区二区精品网| 国内精品国产成人| 欧美国产成人在线| 91丨九色丨国产丨porny| 亚洲桃色在线一区| 91成人在线精品| 日韩在线卡一卡二| 日韩欧美一区在线| 国产精品伊人色| 亚洲视频在线一区二区| 欧美伊人久久大香线蕉综合69| 午夜激情一区二区| 欧美v日韩v国产v| 成人免费视频一区| 亚洲综合免费观看高清完整版| 欧美日韩久久久| 狠狠色丁香婷婷综合| 欧美激情艳妇裸体舞| 色婷婷精品久久二区二区蜜臀av | 国产黄色成人av| 亚洲视频一区二区在线| 欧美日韩精品一区二区三区 | 色综合久久99| 日韩电影在线观看网站| 国产午夜精品理论片a级大结局 | 国产成人午夜99999| 中文字幕一区二区三区av| 欧洲精品一区二区| 日本不卡不码高清免费观看| 国产夜色精品一区二区av| 色国产综合视频| 性感美女久久精品| 国产偷国产偷精品高清尤物| 91首页免费视频| 亚洲成av人影院| 亚洲国产精品成人综合 | 色视频成人在线观看免| 亚洲成av人片一区二区三区 | 另类专区欧美蜜桃臀第一页| 中文字幕成人av| 欧美精品自拍偷拍动漫精品| 国产精品一区二区黑丝| 亚洲综合免费观看高清完整版在线 | 亚洲天堂成人网| 日韩欧美成人一区二区| 色哟哟日韩精品| 国产成+人+日韩+欧美+亚洲| 亚洲一区二区欧美日韩| 国产三级三级三级精品8ⅰ区| 在线精品视频一区二区| 国产成人精品亚洲午夜麻豆| 亚洲成人激情自拍| 国产精品区一区二区三| 日韩免费在线观看| 色噜噜久久综合| 成人综合在线观看| 看片网站欧美日韩| 亚洲图片欧美一区| 1000精品久久久久久久久| 久久久久久麻豆| 日韩欧美一区二区在线视频| 欧美日韩一区国产|