51Testing软件测试论坛

标题: lrs_hex_string_to_int无法转换缓冲区数据至整形 [打印本页]

作者: yl32114717    时间: 2012-2-20 11:32
标题: lrs_hex_string_to_int无法转换缓冲区数据至整形
部分脚本如下:
lrs_send("socket0", "buf8", LrsLastArg);

lrs_receive("socket0", "buf9", LrsLastArg);

bufPort=lrs_get_received_buffer("socket0",20,2,NULL);//获取缓冲区端口号

lrs_hex_string_to_int(bufPort,2,&i); //转换端口号为整数

itoa(i,testasc,10);     //转换端口号为字符串
       
outPortno=sortPort(testasc);

lr_save_int(outPortno,"PortNo");//保存端口号为参数

lrs_create_socket("socket1", "TCP", "LocalHost=0", "RemoteHost=Gate:<PortNo>", LrsLastArg);
主要是实现:
从服务端获取端口号,参数化端口号后进行连接
返回端口号buf
recv  buf9 24
        "\x02\xdb\x00\x00\x10\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00"
        "\x00\x17"
        "'"
        "\x00\x00"
端口号为\x17"'"两位,通过以下函数获取端口号并转换至临时变量i
bufPort=lrs_get_received_buffer("socket0",20,2,NULL);//获取缓冲区端口号

lrs_hex_string_to_int(bufPort,2,&i); //转换端口号为整数
转换i为字符串itoa(i,testasc,10);     //转换端口号为字符串
由于获取的端口号为16位进制的并且从高位到低位排序的顾使用以下方法进行转换
调用方法outPortno=sortPort(testasc);
sortport()方法如下:
int sortPort(char *strPortno_in[5])
{
        char str1[4]="";
        char strPortno_out[4]="";
        char tmp1[2]="",tmp2[2]="";
        int intPortno_out=0;
        itoa(atoi(strPortno_in),str1,16);
        strncpy(tmp2,str1+2,2);
        tmp2[2]='\0';
        strcat(strPortno_out,tmp2);
        strncpy(tmp1,str1,2);
        tmp1[2]='\0';
        strcat(strPortno_out,tmp1);
        strPortno_out[4]='\0';
        intPortno_out=zh(strPortno_out);
        return intPortno_out;
}

//16进制转化为10进制
int zh(char s[])
{
    int i,m,temp=0,n;
    m=strlen(s);//十六进制是按字符串传进来的,所以要获得他的长度
    for(i=0;i<m;i++)
    {
        if(s>='A'&&s<='F')//十六进制还要判断他是不是在A-F或者a-f之间a=10。。
         n=s-'A'+10;
        else if(s>='a'&&s<='f')
         n=s-'a'+10;
         else n=s-'0';
        temp=temp*16+n;
    }
    return temp;
}
问题:
运行都没问题,但是在运行场景至一段时间后系统会报以下错误
lrs_hex_string_to_int无法转换缓冲区数据,错误代码9013
在网上找了下有人说可能是ip限制的问题,故使用了ip欺诈从新运行场景
但问题依然存在。
求:
求高人给予解答啊!小弟谢过先了!在线等
作者: yl32114717    时间: 2012-2-20 12:47
无人知道么?
作者: yl32114717    时间: 2012-2-20 14:25
有高人解答么描述的不够详细还是怎么的
作者: yl32114717    时间: 2012-2-20 17:38
哎,牛人来啊!!
作者: yl32114717    时间: 2012-2-21 09:13
今天继续等,等到牛人为止




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2