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

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

?? simutil.pc

?? 仿真測試接口程序。根據電總《用戶接入網管理功能與管理接口技術規范》之《與112集中受理系統接口規范》
?? PC
?? 第 1 頁 / 共 2 頁
字號:
/*#define SYBASE_ENV    1 */#include "simu112.h"#include <stdio.h>#include <stdlib.h>#include <string.h>#include <errno.h>#include <malloc.h>#ifdef SYBASE_ENV#include <sybfront.h>#include <sybdb.h>#include <syberror.h>#endifEXEC SQL INCLUDE sqlca;extern void unprocessdata(char *, char *);DEVICEHEAD *device_head;extern COMPRULEDATA comp_rule_data[MAX_SWITCH + 1];extern SOCKETSTRUCT so[MAX_FD];extern char LIC_USERNAME[61];extern int LIC_DRIVERNUMBER;void ReadIniFile(char *szFileName, char *szStringName, char *szStringValue,								 char *szDefaultValue);static char *StringToupper(char *p);int f_is_ts_busy(char *ts_address, int ts_port);	/* 1 - busy   0 - idle */int getCompareDBrows(char *switch_name){	short table_rows;	table_rows = -1;	EXEC SQL WHENEVER SQLERROR GOTO sqlerror;	EXEC SQL SELECT count(*) into:table_rows from CompareTable where Switch =:switch_name;	return (short) table_rows;sqlerror:	fLogInfo("\nSQL ERROR in getCompareDBrows !!");	fLogInfo("\nSQLCODE: %d", sqlca.sqlcode);	fLogInfo("\nERRMSG: %.70s \n", sqlca.sqlerrm.sqlerrmc);	return -1;}int getRouteDBrows(void){	short routeDBrows;	EXEC SQL WHENEVER SQLERROR GOTO sqlerror;	EXEC SQL SELECT count(*) into:routeDBrows from Exchange, Switch	  where Exchange.Switch = Switch.Switch and Switch.TestType = '2';	return (int) routeDBrows;sqlerror:	fLogInfo("\nSQL ERROR in getRouteDBrows !!");	fLogInfo("\nSQLCODE: %d", sqlca.sqlcode);	fLogInfo("\nERRMSG: %.70s \n", sqlca.sqlerrm.sqlerrmc);	return -1;}char switchType(char *switch_string){	COMPRULEDATA *p;	int i;	for (i = 0; i < MAX_SWITCH + 1; i++)	{		p = &comp_rule_data[i];		if (strlen(p->SwitchName) == 0)			break;		if (strcmp(switch_string, p->SwitchName) == 0)			return (char) i;	}	return (char) 0;}/************************************************************* *initialize the route table for deciding the terminal server* *return 0:success                                           * *      -1:failure                                           * *************************************************************//*int setRouteTable(DBPROCESS *dbproc) */int setRouteTable(void){	char s1[11];									/*Exchange.Exchange */	char s2[31];									/*Switch.Address */	char s3[7];										/*Switch.PortNumber */	char s4[2];										/*Switch.TestPortType */	char s5[9];										/*Switch.SwitchPasswd */	char s6[11];									/*Switch.ModemTelePhone */	char s7[11];									/*Switch.SIMSwitchType */	char s8[21];									/*Switch.SIMSwitchIP */	char s9[7];										/*Switch.SIMSwitchPort */	char s10[21];									/*Switch.RtuId */	char s11[2];									/*Switch.UseGrade */	char s12[17];									/*Switch.SwitchUserName */	char s13[2];									/*Switch.MultConnect */	/*RETCODE rc; */	int row, len, rtu_row;	char temp[21];	char old_Address[31];	char old_PortNumber[7];	if ((device_head = malloc(sizeof(DEVICEHEAD))) == NULL)	{		fLogInfo("\nERROR in setRouteTable !!");		fLogInfo("\nERROR when Malloc for device_head.\n");		return -1;	}	if ((device_head->count = getRouteDBrows()) == -1)	{		free(device_head);		return -1;	}	if ((device_head->test_device = malloc(sizeof(TESTDEVICE) * device_head->count)) == NULL)	{		fLogInfo("\nERROR in setRouteTable !!");		fLogInfo("\nERROR when Malloc for device_head->test_device.\n");		free(device_head);		return -2;	}	row = 0;	old_Address[0] = '\0';	old_PortNumber[0] = '\0';	rtu_row = 0;	EXEC SQL DECLARE my_cur1 CURSOR FOR	  SELECT distinct Exchange.Exchange, Switch.Address, Switch.PortNumber, NVL(Switch.TestPortType,' '),	  NVL(Switch.SwitchPasswd,' '), NVL(Switch.ModemTelePhone, '000'), NVL(Switch.SIMSwitchType,' '),	  NVL(Switch.SIMSwitchIP,' '), NVL(Switch.SIMSwitchPort,' '), NVL(Switch.RtuId,' '), NVL(Switch.UseGrade,'0'),	  NVL(Switch.SwitchUserName,' '), NVL(Switch.MultConnect,'0')	  FROM Exchange, Switch	  WHERE Exchange.Switch = Switch.Switch and Switch.TestType = '2'	ORDER BY Switch.Address, Switch.PortNumber;	EXEC SQL OPEN my_cur1;	EXEC SQL WHENEVER NOT FOUND DO break;	EXEC SQL WHENEVER SQLERROR GOTO sqlerror;	/* printf("device_head->count=%d\n",device_head->count); */	/* while (1){ */	while (row < device_head->count)	{		EXEC SQL FETCH my_cur1 INTO:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,:s11,		: s12,:s13;		RemoveWhitespace(s1);		strncpy((device_head->test_device + row)->ExkNumber, (char *) s1, (len = strlen(s1)));		(device_head->test_device + row)->ExkNumber[len] = 0;		RemoveWhitespace((device_head->test_device + row)->ExkNumber);		StringToupper((device_head->test_device + row)->ExkNumber);		RemoveWhitespace(s2);		strncpy((device_head->test_device + row)->TSAddress, (char *) s2, (len = strlen(s2)));		(device_head->test_device + row)->TSAddress[len] = 0;		RemoveWhitespace((device_head->test_device + row)->TSAddress);		RemoveWhitespace(s3);		strncpy((device_head->test_device + row)->TSPortNo, (char *) s3, (len = strlen(s3)));		(device_head->test_device + row)->TSPortNo[len] = 0;		RemoveWhitespace((device_head->test_device + row)->TSPortNo);		RemoveWhitespace(s4);		strncpy(temp, (char *) s4, (len = strlen(s4)));		temp[len] = 0;		(device_head->test_device + row)->TestPortType = temp[0];		RemoveWhitespace(s5);		strncpy((device_head->test_device + row)->PortPassword, (char *) s5, (len = strlen(s5)));		(device_head->test_device + row)->PortPassword[len] = 0;		RemoveWhitespace((device_head->test_device + row)->PortPassword);		RemoveWhitespace(s6);		strncpy((device_head->test_device + row)->DialNumber, (char *) s6, (len = strlen(s6)));		(device_head->test_device + row)->DialNumber[len] = 0;		RemoveWhitespace((device_head->test_device + row)->DialNumber);		RemoveWhitespace(s7);		strncpy(temp, (char *) s7, (len = strlen(s7)));		temp[len] = 0;		RemoveWhitespace(temp);		(device_head->test_device + row)->SwitchType = switchType(temp);		RemoveWhitespace(s8);		strncpy((device_head->test_device + row)->ServerAddress, (char *) s8, (len = strlen(s8)));		(device_head->test_device + row)->ServerAddress[len] = 0;		RemoveWhitespace((device_head->test_device + row)->ServerAddress);		RemoveWhitespace(s9);		strncpy(temp, (char *) s9, (len = strlen(s9)));		temp[len] = 0;		(device_head->test_device + row)->ServerPort = atoi(temp);		RemoveWhitespace(s10);		strncpy((device_head->test_device + row)->RtuId, (char *) s10, (len = strlen(s10)));		(device_head->test_device + row)->RtuId[len] = 0;		RemoveWhitespace(StringToupper((device_head->test_device + row)->RtuId));		if (strcmp(old_Address, (device_head->test_device + row)->TSAddress) != 0				|| strcmp(old_PortNumber, (device_head->test_device + row)->TSPortNo) != 0)		{			rtu_row++;			strcpy(old_Address, (device_head->test_device + row)->TSAddress);			strcpy(old_PortNumber, (device_head->test_device + row)->TSPortNo);		}		/*RemoveWhitespace(s11);		   strncpy(temp,(char *)s11,(len=sizeof(s11)));		   temp[len]=0;		   (device_head->test_device+row)->UseGrade=temp[0]; */		(device_head->test_device + row)->UseGrade = s11[0];		RemoveWhitespace(s12);		strncpy((device_head->test_device + row)->SwitchUserName, (char *) s12, (len = strlen(s12)));		(device_head->test_device + row)->SwitchUserName[len] = 0;		RemoveWhitespace((device_head->test_device + row)->SwitchUserName);		/* RemoveWhitespace(s13); */		strncpy(temp, (char *) s13, (len = strlen(s13)));		temp[len] = 0;		(device_head->test_device + row)->MultConnect = temp[0];		/*		   printf("\n\ns1:%s,ExkNumber:%s\n",s1,(device_head->test_device+row)->ExkNumber);		   printf("s2:%s,TSAddress:%s\n",s2,(device_head->test_device+row)->TSAddress);		   printf("s3:%s,TSPortNo:%s\n",s3,(device_head->test_device+row)->TSPortNo);		   printf("s4:%s,TestPortType:%c\n",s4,(device_head->test_device+row)->TestPortType);		   printf("s5:%s,PortPassword:%s\n",s5,(device_head->test_device+row)->PortPassword);		   printf("s6:%s,DialNumber:%s\n",s6,(device_head->test_device+row)->DialNumber);		   printf("s7:%s,SwitchType:%d\n",s7,(device_head->test_device+row)->SwitchType);		   printf("s8:%s,ServerAddress:%s\n",s8,(device_head->test_device+row)->ServerAddress);		   printf("s9:%s,ServerPort:%d\n",s9,(device_head->test_device+row)->ServerPort);		   printf("s10:%s,RtuId:%s\n",s10,(device_head->test_device+row)->RtuId);		   printf("s11:%s,UseGrade:%c\n",s11,(device_head->test_device+row)->UseGrade);		   printf("s12:%s,SwitchUserName:%s\n",s12,(device_head->test_device+row)->SwitchUserName);		   printf("s13:%s,MultConnect:%c\n",s13,(device_head->test_device+row)->MultConnect);		 */		row++;		/* printf("row=%d,rtu_row=%d,\n",row,rtu_row); */	}	if (row == 0 || rtu_row > LIC_DRIVERNUMBER)	{		free(device_head->test_device);		free(device_head);		fLogInfo("\nERROR in setRouteTable !!");		if (rtu_row > LIC_DRIVERNUMBER)		{			fLogInfo("\nError encountered! Server abort!");			fLogInfo("\nThe routers number is more than Maximum drivers number!");			fLogInfo("\nPlease apply for new license!\n");			return -3;		}		else		{			fLogInfo("\nRouters number is 0!\n");			return -4;		}	}	device_head->count = row;	printf("device_head->count:%d, rtu_row:%d\n", device_head->count, rtu_row);	EXEC SQL CLOSE my_cur1;	return 0;sqlerror:	fLogInfo("\nSQL ERROR in setRouteTable !!");	fLogInfo("\nSQLCODE: %d", sqlca.sqlcode);	fLogInfo("\nERRMSG: %.70s \n", sqlca.sqlerrm.sqlerrmc);	return -5;}int freeRouteTable(){	free(device_head->test_device);	free(device_head);	return 0;}/********************************************************* *comment:                                               * *       select which terminal server can be used to test* *return 0:success   1:can't be found  2:busy            * *********************************************************/int getSIMterm(TESTREQMSG * term_srv,							 char *sim_drv_addr,							 int *sim_drv_port){	int i;	int flag;											/* 0-judged by ExkNumber, 1-judged by address and port, 2-judged by RtuId */	char temp_rtuid[25];	char temp_addr[20];	char temp_port[7];	int found_flag;	flag = 0;	if (term_srv->Tid[0] != '\0')	{		if (strstr(term_srv->Tid, ","))		{			f_split_addr_port(term_srv->Tid, temp_addr, temp_port);			flag = 1;		}		else		{			strcpy(temp_rtuid, term_srv->Tid);			flag = 2;		}	}	/* printf("flag=%d, RtuId=%s, TID=%s \n",flag,temp_rtuid,term_srv->Tid); */	switch (flag)	{	case 0:		found_flag = 0;		for (i = 0; i < device_head->count; i++)		{			if (strcmp(term_srv->ExkNumber, (device_head->test_device + i)->ExkNumber) == 0)			{													/* found */				found_flag = 1;				if ((device_head->test_device + i)->MultConnect != '1' && f_is_ts_busy((device_head->test_device + i)->TSAddress, atoi((device_head->test_device + i)->TSPortNo)))				{					printf("getSIMterm()::MultConnect=%c\n", (device_head->test_device + i)->MultConnect);					continue;							/* if TS is busy, then we finding next */				}				else				{					strcpy(sim_drv_addr, (device_head->test_device + i)->ServerAddress);					*sim_drv_port = (device_head->test_device + i)->ServerPort;					strcpy(term_srv->TSAddress, (device_head->test_device + i)->TSAddress);					strcpy(term_srv->TSPortNo, (device_head->test_device + i)->TSPortNo);					strcpy(term_srv->PortPassword, (device_head->test_device + i)->PortPassword);					strcpy(term_srv->SwitchUserName, (device_head->test_device + i)->SwitchUserName);					strcpy(term_srv->DialNumber, (device_head->test_device + i)->DialNumber);					term_srv->TestPortType = (device_head->test_device + i)->TestPortType;					term_srv->SwitchType = (device_head->test_device + i)->SwitchType;					term_srv->UseGrade = (device_head->test_device + i)->UseGrade;					return (0);						/*have been found */				}			}		}		if (found_flag)			return (2);		break;	case 1:		for (i = 0; i < device_head->count; i++)		{			/*			   printf("temp_addr=%s, temp_port=%s, TSAddress=%s, TSPortNo=%s \n",temp_addr,temp_port,(device_head->test_device+i)->TSAddress,(device_head->test_device+i)->TSPortNo);			 */			if ((strcmp(temp_addr, (device_head->test_device + i)->TSAddress) == 0)			&& (strcmp(temp_port, (device_head->test_device + i)->TSPortNo) == 0))			{				/*success */				strcpy(sim_drv_addr, (device_head->test_device + i)->ServerAddress);				*sim_drv_port = (device_head->test_device + i)->ServerPort;				strcpy(term_srv->TSAddress, (device_head->test_device + i)->TSAddress);				strcpy(term_srv->TSPortNo, (device_head->test_device + i)->TSPortNo);				strcpy(term_srv->PortPassword, (device_head->test_device + i)->PortPassword);				strcpy(term_srv->SwitchUserName, (device_head->test_device + i)->SwitchUserName);				strcpy(term_srv->DialNumber, (device_head->test_device + i)->DialNumber);				term_srv->TestPortType = (device_head->test_device + i)->TestPortType;				term_srv->SwitchType = (device_head->test_device + i)->SwitchType;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久se精品一区二区| 亚洲免费观看高清完整版在线观看熊 | 亚洲婷婷在线视频| 国产麻豆午夜三级精品| 欧美大片顶级少妇| 日韩 欧美一区二区三区| 欧美三级韩国三级日本一级| 亚洲日本电影在线| 91女神在线视频| 国产精品国产成人国产三级| 成人三级在线视频| 中文字幕的久久| 丁香婷婷综合激情五月色| 久久色中文字幕| 国产精品77777竹菊影视小说| 精品1区2区在线观看| bt7086福利一区国产| 国产欧美日韩视频一区二区| 国产二区国产一区在线观看| 久久久久久久久一| 国产成人在线电影| 国产精品久久久久影院亚瑟 | 欧美性受xxxx黑人xyx性爽| 欧美日韩中文另类| 夜夜揉揉日日人人青青一国产精品| 9i在线看片成人免费| 亚洲欧美在线视频| 91在线无精精品入口| 一区二区三区在线不卡| 欧美写真视频网站| 日韩综合一区二区| 日韩欧美激情在线| 国产在线播放一区三区四| 国产视频一区二区在线观看| 成人97人人超碰人人99| 亚洲精品国产一区二区精华液 | 日韩中文字幕不卡| 日韩一区二区视频在线观看| 激情文学综合丁香| 久久精品亚洲乱码伦伦中文 | 狠狠色狠狠色综合系列| 国产欧美日韩在线观看| 99国产精品国产精品久久| 一区二区三区在线视频播放| 欧美一区二区大片| 国产精品18久久久久久vr| 中文字幕一区视频| 99re这里只有精品6| 国产精一品亚洲二区在线视频| 国产一二精品视频| 国产精品白丝jk白祙喷水网站| 强制捆绑调教一区二区| 亚洲综合一二区| 91精品在线观看入口| 国内欧美视频一区二区| 国产精品短视频| 欧美高清视频一二三区 | 欧美色爱综合网| 奇米精品一区二区三区四区| 国产欧美视频一区二区| 精品视频全国免费看| 久久99久久99小草精品免视看| 亚洲国产经典视频| 欧美美女网站色| 国产高清久久久| 国产在线视视频有精品| 亚洲欧美日韩国产综合在线| 欧美一区二区在线播放| 国产99精品视频| 香港成人在线视频| 国产欧美一区二区三区网站| 欧美午夜精品免费| 另类欧美日韩国产在线| 色婷婷激情综合| 日韩一区欧美小说| 欧美一卡在线观看| 成+人+亚洲+综合天堂| 日韩影院免费视频| 国产精品久久久久久亚洲毛片 | 91捆绑美女网站| 麻豆精品一二三| 亚洲精品高清在线| 精品91自产拍在线观看一区| 欧美伊人久久久久久久久影院| 国产综合成人久久大片91| 亚洲在线免费播放| 日本一区二区三级电影在线观看| 欧美精选一区二区| av在线一区二区| 狠狠色综合播放一区二区| 亚洲国产视频直播| 国产精品久久久久久户外露出| 欧美一区二区黄色| 在线观看欧美日本| 高清视频一区二区| 久久精品国产网站| 一区二区日韩电影| 国产精品传媒视频| 精品电影一区二区| 777亚洲妇女| 在线欧美小视频| 从欧美一区二区三区| 久久av中文字幕片| 天堂久久一区二区三区| 亚洲精品国产a| 国产精品久久99| 久久久久久久久蜜桃| 日韩精品一区国产麻豆| 欧美肥大bbwbbw高潮| 色香蕉成人二区免费| gogogo免费视频观看亚洲一| 国产一区二区三区久久久| 另类中文字幕网| 日韩精品三区四区| 午夜视频一区二区三区| 亚洲精品videosex极品| 亚洲欧美中日韩| 国产精品久久久久久久久搜平片 | av成人动漫在线观看| 国产一区二区精品久久91| 久久国产婷婷国产香蕉| 秋霞成人午夜伦在线观看| 天天综合日日夜夜精品| 亚洲高清三级视频| 亚洲国产一区视频| 亚洲午夜在线视频| 亚洲一区二区免费视频| 亚洲精品免费播放| 亚洲精品国产成人久久av盗摄| 17c精品麻豆一区二区免费| 国产精品对白交换视频 | 国产欧美va欧美不卡在线| 2020国产精品久久精品美国| 日韩美女视频在线| 日韩一级片网站| 精品日韩在线观看| 精品国产免费视频| ww久久中文字幕| 久久久久久亚洲综合影院红桃| 26uuu亚洲婷婷狠狠天堂| 精品福利在线导航| 久久精品视频在线看| 国产日韩欧美不卡| 日本一区二区综合亚洲| 中文字幕欧美三区| 国产精品国产三级国产三级人妇| 成人免费一区二区三区在线观看| 中文字幕亚洲区| 亚洲男人的天堂一区二区| 伊人婷婷欧美激情| 亚洲.国产.中文慕字在线| 日日夜夜精品视频天天综合网| 男人的天堂久久精品| 精品亚洲国内自在自线福利| 国产一区啦啦啦在线观看| 国产成人免费视频网站| eeuss鲁片一区二区三区在线观看| 91在线观看视频| 欧美日韩日日摸| 日韩欧美一区二区不卡| 国产午夜精品一区二区三区视频 | 99re热这里只有精品免费视频| 91蜜桃传媒精品久久久一区二区| 国产欧美日韩精品a在线观看| 国产精品青草综合久久久久99| 亚洲欧美色图小说| 日韩极品在线观看| 国产乱码一区二区三区| 91最新地址在线播放| 欧美日韩国产综合久久| 日韩欧美视频在线| 国产精品天天摸av网| 亚洲一区二区av电影| 无吗不卡中文字幕| 国产九色精品成人porny| 成人国产精品视频| 欧美日韩亚州综合| 亚洲精品在线电影| 日韩一区中文字幕| 日韩影视精彩在线| 高清免费成人av| 欧美日韩亚洲综合| 国产日韩av一区| 亚洲一区二区在线视频| 黄色资源网久久资源365| 91影院在线免费观看| 日韩你懂的在线播放| 亚洲视频中文字幕| 美女视频免费一区| 国产欧美日韩精品一区| 国产精品国产三级国产有无不卡 | 国产999精品久久久久久绿帽| 色婷婷国产精品综合在线观看| 欧美一级免费大片| 《视频一区视频二区| 日韩av一区二区在线影视| 成人av网在线| 日韩欧美国产综合| 亚洲精品综合在线| 韩国欧美一区二区|