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

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

?? bank_svr.sqc

?? 轉發(fā)交易接口
?? SQC
?? 第 1 頁 / 共 2 頁
字號:
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <sql.h>#include <sqlenv.h>#include <sqlda.h>#include <sqlca.h>#include <sqlutil.h>#include <db2ApiDf.h>#include <ctype.h>#include <sys/types.h>#include <sys/socket.h>#include <sys/uio.h>#include <sys/file.h>#include <sys/ioctl.h>#include <sys/errno.h>#include <sys/wait.h>#include <netinet/in.h>#include <sys/select.h>#include <sys/signal.h>#include <netdb.h>#include <math.h>#include <sys/stat.h>#include <time.h>#include <fcntl.h>#include <unistd.h>#include "public.h"#include "dbpub.h"#include "bankpack.h"char localip[21];int localport;int TimeOut;EXEC SQL BEGIN DECLARE SECTION;    char dbAlias[15];    char user[128 + 1];    char pswd[15];EXEC SQL END DECLARE SECTION;void	sig_child();void	sig_Terminate();void kccx(int rcvSocket, REQHEAD *reqpack);main(){	char tmpstr[128], msg[256];	int	listenSocket;	int 	ret , fromlen, forkint;	struct	sockaddr_in from, server;    	struct timeval timeout;	if (ReadConfg("DATABASE", "DBALIAS", dbAlias, "acidb") < 0)	{		debugLog(__FILE__, __LINE__, "讀[DATABASE]DBALIAS fail");		exit( -1);    	}    	if (ReadConfg("DATABASE", "USER", user, "acidbo") < 0)    	{		debugLog(__FILE__, __LINE__, "讀[DATABASE]USER fail");        	exit( -1);    	}    	if (ReadConfg("DATABASE", "PASSWD", pswd, "") < 0)    	{		debugLog(__FILE__, __LINE__, "讀[DATABASE]PASSWD fail");        	exit( -1);    	}    	if (ReadConfg("BANK_SVR", "LOCALIP", localip, "127.0.0.1") < 0)    	{		debugLog(__FILE__, __LINE__, "讀[BANK_SVR]LOCALIP fail");        	exit( -1);    	}    	memset(tmpstr, 0x00, sizeof(tmpstr));    	if (ReadConfg("BANK_SVR", "LOCALPORT", tmpstr, "8001") < 0)    	{		debugLog(__FILE__, __LINE__, "讀[BANK_SVR]LOCALPORT fail");        	exit( -1);    	}    	localport = atoi(tmpstr);    	memset(tmpstr, 0x00, sizeof(tmpstr));    	if (ReadConfg("BANK_SVR", "TIMEOUT", tmpstr, "60") < 0)    	{		debugLog(__FILE__, __LINE__, "讀[BANK_SVR]TIMEOUT fail");        	exit( -1);    	}    	TimeOut = atoi(tmpstr);	signal( SIGCLD, sig_child );	signal( SIGCLD, SIG_IGN );	signal( SIGINT, sig_Terminate );	signal( SIGQUIT, sig_Terminate );	signal( SIGPIPE, sig_Terminate );	signal( SIGTERM, sig_Terminate );	signal( SIGUSR1, sig_Terminate );	listenSocket = socket( AF_INET, SOCK_STREAM, 0 );	if( listenSocket < 0 )	{		debugLog(__FILE__, __LINE__, "create listen socket fail.");		exit( 1 );	}	server.sin_family = AF_INET;	server.sin_addr.s_addr = htonl(INADDR_ANY);	server.sin_port = htons( localport );	if (bind( listenSocket, (struct sockaddr *)&server, sizeof(server)) < 0)	{		debugLog(__FILE__, __LINE__, "listen socket bind fail.");		exit( 1 );	}	listen( listenSocket, 5 );	debugLog(__FILE__, __LINE__, "bank_svr listen is running" );	for(;;)	{		int 	rcvSocket;		fromlen = sizeof(server);	rcvSocket = accept( listenSocket, (struct sockaddr *)&from,(unsigned long*)&fromlen );		if( rcvSocket < 0 )		{			debugLog(__FILE__, __LINE__, "Accept fail.");			sleep(10000);			continue;		}		if( ( forkint = fork() ) < 0 )		{			debugLog(__FILE__, __LINE__, "fork child process fail.");			sleep(10000);			close(rcvSocket);			continue;		}		else if ( forkint == 0) 		{			char packlen[9];			char jydm[7];			int rcvlen, rlen, bodylen;			fd_set fdr;			REQHEAD reqpack;			close( listenSocket );            		FD_ZERO(&fdr);            		FD_SET(rcvSocket, &fdr);            		timeout.tv_sec = TimeOut;            		timeout.tv_usec = 0;			            		rcvlen = select(rcvSocket + 1, &fdr, (fd_set *)0, (fd_set *)0, &timeout);             		if (rcvlen <= 0)            		{              		  	debugLog(__FILE__, __LINE__, "Receive timeout select = %-d", rcvlen);              		  	close(rcvSocket);                		exit(0);            		}            		rcvlen = read(rcvSocket, packlen, PACKLENLEN);            		if (rcvlen != PACKLENLEN)            		{                		debugLog(__FILE__, __LINE__, "receive pack len error len = %-d", rcvlen);                		close(rcvSocket);                		exit(0);            		}            		memset(&reqpack, 0x00, sizeof(REQHEAD));            		rcvlen = read(rcvSocket, &reqpack, atoi(packlen));            		if (rcvlen < sizeof(REQHEAD) - 2048)              		{                		debugLog(__FILE__, __LINE__, "receive pack error len = %-d", rcvlen);                		close(rcvSocket);                		exit(0);            		}            		rcvlen = sizeof(REQHEAD) - 2048;             		memcpy(jydm, reqpack.TIAFECODE, 6);            		            		if (memcmp(reqpack.TIAFECODE, "900000", 6) == 0)            		{				debugLog(__FILE__, __LINE__, "發(fā)卡機庫存查詢receive bank req jydm = %s bodylen = %-d", jydm, rcvlen);				kccx(rcvSocket, &reqpack);            		}            		else				debugLog(__FILE__, __LINE__, "receive unsupport pack");			close(rcvSocket);			exit(0);		}		else		{			close( rcvSocket );		}	}}void kccx(int rcvSocket, REQHEAD *reqpack){	ANS_HEAD anspack;  	struct sqlca sqlca;  	char errorMsg[1024], snddata[4097];  	int sndlen;	int retcode;	memset(snddata, 0x20, sizeof(snddata) - 1);	snddata[sizeof(snddata) - 1] = 0x00;	EXEC SQL BEGIN DECLARE SECTION;		char termno[8]; /*自助機具號X(7)*/  		long Records;  		char lsh[32];		char pc[32];     /*裝/清卡編號(批次號)X(15)*/		char jgh[32];    /*機構號X(7)*/		char gyh[32];    /*當前加卡柜員X(07)*/		char jkks[32];     /*初始卡數(shù)	9(8)*/		char yeks[32];     /*剩余卡數(shù)	9(8)*/		char hsks[32];     /*回收卡數(shù)	9(8)*/		char ffks[32];     /*成功發(fā)卡	9(8)*/		char kyks[32];     /*可疑卡數(shù)	9(8)*/  		char tmpstr[36];	EXEC SQL END DECLARE SECTION;	memset(termno, 0x00, sizeof(termno));	memcpy(termno, reqpack->TIATRDATA, 7);	Alltrim(termno);	memset(pc, 0x00, sizeof(pc));	memcpy(pc, reqpack->TIATRDATA + 7, 15);	Alltrim(pc);	  	EXEC SQL SELECT sbdm   	 INTO :tmpstr   	 FROM jqxxzt   	 WHERE id = :termno;  	if (sqlca.sqlcode == 100)                             	{                                                          	retcode = 1000;         	strcpy(snddata, "無該發(fā)卡機設備");  	        debugLog(__FILE__, __LINE__, "庫存查詢,無該發(fā)卡機設備termno = %s", termno);        	SendToBank(rcvSocket, retcode, strlen(snddata), snddata);        	return;  	}  	else if (sqlca.sqlcode != 0)     	{                SqlInfoGet(errorMsg, &sqlca);  	        debugLog(__FILE__, __LINE__, "select sql false SQLCODE = [%-d]%s\n", sqlca.sqlcode, errorMsg);        	retcode = abs(sqlca.sqlcode)%10000;         	strcpy(snddata, errorMsg);        	SendToBank(rcvSocket, retcode, strlen(snddata), snddata);  	        return;  	}  	  	if(pc[0] == 0x00)    	{  		EXEC SQL SELECT count(*)   	 	 INTO :Records   	 	 FROM dr_jqxxmx   	 	 WHERE Iss21 = :termno;   	}   	else  	{  		EXEC SQL SELECT count(*)   	 	 INTO :Records   	 	 FROM dr_jqxxmx   	 	 WHERE Iss21 = :termno and Iss3 = :pc;   	}   	if (sqlca.sqlcode != 0)     	{                SqlInfoGet(errorMsg, &sqlca);  	        debugLog(__FILE__, __LINE__, "select sql false SQLCODE = [%-d]%s\n", sqlca.sqlcode, errorMsg);        	retcode = abs(sqlca.sqlcode)%10000; 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91久久线看在观草草青青| 岛国av在线一区| 日本一区二区不卡视频| 欧美午夜在线观看| 一区二区三区色| 久久久精品免费观看| 在线影院国内精品| 国产美女精品一区二区三区| 亚洲成av人片观看| 亚洲国产精品高清| 69堂精品视频| 欧美日韩久久一区二区| 国产馆精品极品| 亚洲成人精品在线观看| 亚洲欧美日韩电影| 久久综合久久鬼色中文字| 色老头久久综合| 蜜桃精品视频在线| 一片黄亚洲嫩模| 2023国产一二三区日本精品2022| 欧美日韩三级视频| 成人av影视在线观看| 国产综合一区二区| 午夜精品123| 亚洲女厕所小便bbb| 国产精品久久国产精麻豆99网站| 欧美一二三区在线| 欧美在线啊v一区| 色婷婷一区二区| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 欧美国产精品v| 久久综合九色综合欧美亚洲| 国产日产精品1区| 日韩一区二区精品葵司在线| 欧美区一区二区三区| 91麻豆swag| 99视频精品在线| 99国产精品久久久久久久久久久 | 成人aa视频在线观看| 亚洲一区二区三区小说| 亚洲在线视频免费观看| 又紧又大又爽精品一区二区| 国产精品免费视频观看| 综合婷婷亚洲小说| 国产精品成人一区二区艾草| 国产日韩欧美不卡| 亚洲欧美综合在线精品| 亚洲品质自拍视频| 亚洲人成网站在线| 亚洲啪啪综合av一区二区三区| 国产精品国产三级国产普通话99| 国产亚洲一区二区在线观看| 欧美老肥妇做.爰bbww| 7777精品伊人久久久大香线蕉 | 一区二区三区欧美激情| 亚洲乱码国产乱码精品精小说 | 亚洲国产精品高清| 国产精品国产三级国产三级人妇| 亚洲精品少妇30p| 亚洲一区二区三区国产| 亚洲地区一二三色| 激情偷乱视频一区二区三区| 韩国精品主播一区二区在线观看 | 亚洲精品视频一区| 一区二区三区在线视频免费观看| 亚洲欧美自拍偷拍色图| 亚洲欧美色综合| 亚洲三级在线观看| 首页综合国产亚洲丝袜| 日本美女一区二区三区| 日韩 欧美一区二区三区| 蜜臀久久99精品久久久久宅男| 日韩成人一级大片| 国产一区激情在线| 色偷偷久久一区二区三区| 欧美在线视频不卡| 欧美成人综合网站| 亚洲精品视频免费看| 婷婷综合另类小说色区| 精久久久久久久久久久| 91香蕉视频黄| 欧美美女一区二区三区| 26uuu色噜噜精品一区二区| 精品国产亚洲一区二区三区在线观看| 国产精品免费av| 偷窥国产亚洲免费视频| 国产麻豆精品theporn| 欧美亚洲一区二区在线观看| 日韩欧美成人一区| 亚洲欧洲99久久| 久久99精品久久久| 91麻豆.com| 欧美大片在线观看| 亚洲精选视频免费看| 蜜桃91丨九色丨蝌蚪91桃色| 丰满少妇久久久久久久| 在线亚洲人成电影网站色www| 精品剧情v国产在线观看在线| 最新高清无码专区| 青青草国产成人99久久| 色综合欧美在线| 精品久久久久久综合日本欧美| 亚洲人成网站影音先锋播放| 国精产品一区一区三区mba桃花| 欧洲av一区二区嗯嗯嗯啊| 久久免费电影网| 国产精品女人毛片| 激情都市一区二区| 欧美综合一区二区| 欧美激情资源网| 精品中文字幕一区二区| 欧美综合在线视频| 欧美国产欧美综合| 精品影视av免费| 欧美日韩不卡一区二区| 国产精品久久久久久户外露出| 国产精品亚洲专一区二区三区| 日本高清视频一区二区| 国产清纯在线一区二区www| 一区二区日韩电影| thepron国产精品| 久久夜色精品国产噜噜av| 一区二区在线观看免费视频播放| 成人黄色小视频| 久久一区二区视频| 免费观看一级特黄欧美大片| 欧美日韩亚州综合| 亚洲精品国产无套在线观| 国产成人av电影在线观看| 日本成人超碰在线观看| 欧美午夜寂寞影院| 亚洲天堂a在线| 国产aⅴ精品一区二区三区色成熟| 日韩欧美国产精品| 亚瑟在线精品视频| 成人免费观看视频| 国产精品国模大尺度视频| 国产一区欧美一区| 精品久久免费看| 国产一区二区三区免费播放| 日韩美女视频一区二区在线观看| 亚洲成a人片在线不卡一二三区 | 久久国产精品第一页| 欧美久久久久久久久| 亚洲午夜精品在线| 在线视频欧美区| 日韩精品成人一区二区三区| 欧美剧在线免费观看网站| 亚洲gay无套男同| 在线观看日韩av先锋影音电影院| 一区二区在线免费观看| 在线观看亚洲a| 亚洲精品国产一区二区三区四区在线 | 91视频在线看| 亚洲精品久久久蜜桃| 欧美日本一道本在线视频| 久久电影网电视剧免费观看| 26uuuu精品一区二区| www.66久久| 日韩在线一区二区三区| 久久久综合精品| 日本精品免费观看高清观看| 日本aⅴ亚洲精品中文乱码| 国产亚洲视频系列| 色成年激情久久综合| 日韩主播视频在线| 国产亚洲精品资源在线26u| 91捆绑美女网站| 另类成人小视频在线| 国产精品美女久久久久久2018 | 日韩女优av电影| av色综合久久天堂av综合| 亚洲高清中文字幕| 久久婷婷成人综合色| 欧洲另类一二三四区| 国产一本一道久久香蕉| 亚洲一区二区三区激情| 国产丝袜在线精品| 欧美日韩国产高清一区二区三区| 国产精品456| 天堂av在线一区| 欧美激情中文不卡| 欧美一区二区在线观看| 99国产精品久久久久久久久久久| 日本一道高清亚洲日美韩| 综合色天天鬼久久鬼色| 欧美变态凌虐bdsm| 欧美日韩一级二级三级| 大尺度一区二区| 久久精品国产网站| 亚洲综合精品自拍| 国产精品乱码人人做人人爱 | 亚洲美女免费在线| 久久综合狠狠综合| 在线不卡中文字幕播放| 91原创在线视频| 韩国欧美国产1区| 天天综合日日夜夜精品| 亚洲免费av高清| 欧美激情在线观看视频免费|