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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? common.cpp.svn-base

?? sigmadesign smp8623 gui source code ,bingo
?? SVN-BASE
字號:
/* ------------------------------------------------------------------------- * common.cpp - common data * Copyright (C) 2008 Dimitar Atanasov <datanasov@deisytechbg.com> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA * ------------------------------------------------------------------------- */#include "common.h"#include "conf.h"#include <pcrecpp.h>#include <time.h>#define VARNAME(N) #N#define PRINT(N) N,#N#define PRT(N) printf("%s = %d\n", #N, N);#define PRTSTR(N) printf("%s = %s\n", #N, N.c_str());int conf_t::read_conf(){	ConfigFile config( CONF_NAME );	config.readInto(PRINT(using_pms), 1);	config.readInto(PRINT(using_rc), 1);	config.readInto(PRINT(using_cards), 0);	config.readInto(PRINT(using_enddate), 0);	config.readInto(PRINT(using_eraseonlast), 0);	config.readInto(PRINT(using_autocheckin), 0);	// for DB	config.readInto(PRINT(username),string("root"));	config.readInto(PRINT(password), string("password"));	config.readInto(PRINT(database), string("VOD"));	config.readInto(PRINT(hostname), string("192.168.1.199"));	config.readInto(PRINT(db_port), 3305);	// socket connections	// rc_host;	config.readInto(PRINT(rc_host), string("192.168.1.199"));	config.readInto(PRINT(rc_port), 6543);	config.readInto(PRINT(rc_broadcast), string("172.16.255.255"));	config.readInto(PRINT(mng_host), string("192.168.1.199"));	config.readInto(PRINT(mng_port), 6544);	config.readInto(PRINT(php_host), string("192.168.1.199"));	config.readInto(PRINT(php_port), 6546);	config.readInto(PRINT(his_host), string("192.168.1.199"));	config.readInto(PRINT(his_port), 6547);	config.readInto(PRINT(client_host), string("192.168.1.199"));	config.readInto(PRINT(client_port), 6548);	config.readInto(PRINT(pms_host), string("192.168.1.199"));	config.readInto(PRINT(pms_port), 40001);	config.readInto(PRINT(inet_host), string("192.168.1.38"));	config.readInto(PRINT(radio_host), string("192.168.1.199"));	config.readInto(PRINT(radio_port), 6601);	// for alarm server ?	config.readInto(PRINT(s_hostname), string("192.168.1.199"));	config.readInto(PRINT(s_port), 1234);	config.readInto(PRINT(st_port), 7002);	config.readInto(PRINT(st_serv_ip), string("192.168.3.254"));	config.readInto(PRINT(st_serv_N), 0);	config.readInto(PRINT(path), string(""));	config.readInto(PRINT(log_file), string("bms_con.log"));	config.readInto(PRINT(auto_inet), 1);	config.readInto(PRINT(second_interface), 0);	config.readInto(PRINT(pms_host_2), string("192.168.1.199"));	config.readInto(PRINT(pms_port_2), 40002);	string _t;	config.readInto(_t, VARNAME(client_TypeId), string("1"));	 pcrecpp::RE re("(\\d+)(\\|)?");	 pcrecpp::StringPiece input(_t);	 int _n;	 while (re.Consume(&input, &_n)) {		 client_TypeId.push_back(_n);	 }	 config.readInto(_t, VARNAME(guest_TypeId), string("1"));	 input.clear();	 input.set(_t.c_str());	 while (re.Consume(&input, &_n)) {		 guest_TypeId.push_back(_n);	}//	client_TypeId;//	guest_TypeId;	 return 0;}room_status::room_status(int rm) : room(rm), status(0), oldstatus(2), tryprog(0), prog(false){	time_t _t = time(NULL);	lastchange = lastping = _t;	int rtn;	if((rtn = pthread_mutex_init(&(lock),NULL)) != 0) {		logger(FATAL,"pthread_mutex_init %s",strerror(rtn));	}	 if((rtn = pthread_cond_init(&(queue_not_empty),NULL)) != 0) {	    logger(FATAL,"pthread_cond_init %s",strerror(rtn));	 }}void server_accept(void* msg){	msg_t* _msg = static_cast<msg_t*> (msg);	time_t lastcheck;	int cfd = _msg->sd;	string ip = _msg->ip;	void (*message_loop)(void*) = _msg->message_loop;	void (context_t::*save_handle)(std::string&, int) = _msg->save_handle;	void (context_t::*del_handle)(std::string&) = _msg->del_handle;	if(save_handle)	{		(ctxt.*save_handle)(ip, cfd);	}	if(_msg)	{		delete _msg;		_msg = NULL;	}	lastcheck = time(NULL);	do{		pollfd pfd;		pfd.fd = cfd;		pfd.events = POLLIN;		time_t now = time(NULL);		if(difftime(now,lastcheck) > 3600)			break;		int ready = poll(&pfd, 1, 2000);		if(ready != -1)		{			if((pfd.revents & POLLHUP) == POLLHUP)			{				logger(INFO, "Connection from %s closed\n", ip.c_str());				break;			}			if((pfd.revents & POLLIN) == POLLIN)			{				char buffer[TCP_MSG_LENGTH];				ssize_t received = recv(cfd, buffer, TCP_MSG_LENGTH, 0);				if(received > 0)				{					lastcheck = time(NULL);					buffer[received] = '\0';					msg_t* new_msg = new msg_t(buffer);					new_msg->ip = ip;					new_msg->sd = cfd;					logger(RECV, "msg %s from ip: %s length: %d\n", buffer, ip.c_str(), received);					ctxt.pool_tcp->tpool_add_work(message_loop, new_msg);				}				else				{					logger(INFO, "Connection from %s closed\n", ip.c_str());					break;				}			}		}		else		{			break;		}	} while (ctxt.shutdown != 1);	if(del_handle)	{		(ctxt.*del_handle)(ip);	}	if(_msg)	{		delete _msg;		_msg = NULL;	}	shutdown(cfd, SHUT_RDWR);	close(cfd);}void* server( int& sock, int port, std::string& ip,					 void (*message_loop)(void*),					 void (*accept_loop)(void*),					 void (context_t::*save_handle)(std::string&, int),					 void (context_t::*del_handle)(std::string&)){    sigset_t mask;    sigfillset(&mask); /* Mask all allowed signals */    pthread_sigmask(SIG_BLOCK, &mask, NULL);	sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);	if(sock == -1){		logger(ERROR, "Can't create socket for server: %s\n", strerror(errno));		ctxt.shutdown = 1;		return NULL;	}	int reuse = 1;	setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &reuse, sizeof(int));	struct sockaddr_in isa;	isa.sin_family = AF_INET;	isa.sin_port = htons(port);	inet_aton(ip.c_str(), &isa.sin_addr);	try{		if(bind(sock, (struct sockaddr*)&isa, sizeof isa) == -1){			throw errno;		}		if(listen(sock, 1) == -1){			throw errno;		}		logger(INFO, "Successfully started server %s:%d\n", ip.c_str(), port);		do{			pollfd pfd;			pfd.fd = sock;			pfd.events = POLLIN;			int ready = poll(&pfd, 1, 2000);			if(ready != -1)			{				if(pfd.revents == POLLIN){					sockaddr_in client;					socklen_t clientlen = sizeof(client);					int cfd = accept(sock, (sockaddr *)&client, &clientlen);					msg_t * msg = new msg_t("\0");					msg->ip = inet_ntoa(client.sin_addr);					msg->sd = cfd;					msg->message_loop = message_loop;					msg->save_handle = save_handle;					msg->del_handle = del_handle;					logger(INFO, "Accept connection from %s\n", msg->ip.c_str(), port);					ctxt.pool_tcp->tpool_add_work(accept_loop, msg);				}				continue;			}			else			{				throw errno;			}		} while (ctxt.shutdown != 1);	} catch(int& n)	{		logger(FATAL, "Error in server on IP address %s:%d: %s\n", ip.c_str(), port, strerror(n));		ctxt.shutdown = 1;	}	shutdown(sock, SHUT_RDWR);	close(sock);	logger(INFO, "Closing server\n");	return NULL;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
制服.丝袜.亚洲.中文.综合| 成人一区二区三区| 欧美日本韩国一区| 亚洲影视在线观看| 欧美二区乱c少妇| 日韩高清在线观看| 欧美大胆一级视频| 国产精品一区二区在线观看不卡 | 精品久久免费看| 激情小说欧美图片| 国产欧美精品国产国产专区| av电影天堂一区二区在线观看| 亚洲老妇xxxxxx| 欧美精品亚洲一区二区在线播放| 欧美a一区二区| 国产性天天综合网| 在线欧美日韩国产| 蜜臀va亚洲va欧美va天堂| 国产亚洲欧洲997久久综合| 99久久婷婷国产精品综合| 亚洲成a人在线观看| 26uuu成人网一区二区三区| eeuss鲁片一区二区三区在线看| 亚洲最大色网站| 精品成人一区二区三区| 91女神在线视频| 久久精品国产99久久6| 中文字幕一区二区三区av| 欧美久久久久久久久中文字幕| 国产一区二区三区综合| 樱桃国产成人精品视频| 精品三级av在线| 日本电影欧美片| 国产一区二区三区四| 亚洲精品国产a久久久久久| 欧美成人欧美edvon| 99在线热播精品免费| 美女视频黄久久| 亚洲精品视频自拍| 久久亚洲精品小早川怜子| 欧洲一区二区三区在线| 激情亚洲综合在线| 亚洲va天堂va国产va久| |精品福利一区二区三区| 欧美一级爆毛片| 欧美性色aⅴ视频一区日韩精品| 国产成人高清在线| 免费在线观看视频一区| 一区二区三区色| 国产精品天美传媒沈樵| 日韩欧美的一区| 欧美日韩国产一区| 色综合色综合色综合| 国产精品一区不卡| 美女精品自拍一二三四| 亚洲一区欧美一区| 亚洲人成亚洲人成在线观看图片| 久久免费国产精品| 精品日韩在线一区| 欧美一个色资源| 欧美日韩激情一区| 欧美亚洲综合另类| 色综合网站在线| www.一区二区| 从欧美一区二区三区| 韩国成人福利片在线播放| 日日欢夜夜爽一区| 亚洲一区二区在线播放相泽| 最新日韩在线视频| 一区二区中文视频| 综合久久给合久久狠狠狠97色| 国产拍揄自揄精品视频麻豆| 精品美女一区二区| 91精品麻豆日日躁夜夜躁| 国产亚洲综合性久久久影院| 日韩一区二区中文字幕| 日韩天堂在线观看| 欧美一区二区三区在线观看视频| 欧美日韩精品一区二区三区蜜桃| 欧美在线三级电影| 欧美日韩国产小视频| 欧美理论电影在线| 亚瑟在线精品视频| 国产精品一二三四五| 91久久国产综合久久| 韩国av一区二区三区在线观看| 日韩国产欧美一区二区三区| 日韩av一区二区三区| 日韩免费一区二区三区在线播放| 欧美一级欧美一级在线播放| 91精品久久久久久蜜臀| 日韩午夜在线影院| 久久综合久久鬼色| 中文字幕免费不卡| 亚洲精品视频免费观看| 亚洲午夜电影在线观看| 青草国产精品久久久久久| 国产主播一区二区| 成人激情视频网站| 欧美亚洲动漫精品| 日韩欧美在线网站| 国产精品久线观看视频| 亚洲精品欧美综合四区| 免费成人性网站| 高清国产一区二区| 在线观看日韩av先锋影音电影院| 欧美日韩精品一二三区| www国产精品av| 亚洲男人天堂一区| 蜜桃视频一区二区| thepron国产精品| 欧美日韩激情在线| 久久久噜噜噜久噜久久综合| 中文字幕视频一区二区三区久| 亚洲一区二区精品视频| 国产一区二区三区高清播放| 99久久免费精品高清特色大片| 欧美高清视频一二三区| 中文字幕 久热精品 视频在线| 亚洲午夜久久久久久久久电影院 | 一区二区成人在线| 久久av中文字幕片| 色天使久久综合网天天| 精品毛片乱码1区2区3区| 亚洲美女淫视频| 国产精品影音先锋| 欧美日韩激情在线| 国产精品狼人久久影院观看方式| 首页亚洲欧美制服丝腿| 99久久国产综合精品麻豆| 日韩一级完整毛片| 一级精品视频在线观看宜春院| 国产一区二区视频在线| 欧美高清dvd| 亚洲日本电影在线| 国产成人高清在线| 日韩天堂在线观看| 亚洲成人av福利| 色哟哟亚洲精品| 国产精品三级视频| 精品午夜久久福利影院| 欧美夫妻性生活| 一区二区三区日韩欧美精品| 国产 日韩 欧美大片| 精品日韩在线一区| 男女性色大片免费观看一区二区 | 亚洲精品在线电影| 日韩国产一二三区| 欧美亚州韩日在线看免费版国语版| 久久精品男人的天堂| 久国产精品韩国三级视频| 欧美伦理电影网| 亚洲狠狠爱一区二区三区| 91香蕉视频污在线| 国产精品国产三级国产专播品爱网 | 色妞www精品视频| 日本一区二区成人| 国产91精品一区二区麻豆亚洲| 欧美成人精品福利| 激情综合五月天| 欧美xxx久久| 另类欧美日韩国产在线| 日韩精品综合一本久道在线视频| 日韩精品福利网| 欧美精品 国产精品| 日韩精彩视频在线观看| 在线不卡的av| 日韩国产精品久久久| 欧美一级欧美三级在线观看| 免费av网站大全久久| 欧美一区二区三区啪啪| 日韩成人精品在线| 欧美tickling网站挠脚心| 久久精品国产**网站演员| 日韩欧美第一区| 黄一区二区三区| 国产农村妇女精品| 成人a区在线观看| 亚洲视频在线观看一区| 91九色最新地址| 日韩电影在线免费| 日本一区二区三级电影在线观看| 成人晚上爱看视频| 亚洲天堂av老司机| 欧美日韩精品欧美日韩精品一综合| 天堂va蜜桃一区二区三区漫画版| 制服丝袜亚洲色图| 精彩视频一区二区| 国产精品免费免费| 欧美亚洲一区三区| 久久av中文字幕片| 国产精品国产自产拍高清av | 久久影音资源网| 9l国产精品久久久久麻豆| 一区二区三区四区中文字幕| 欧美精品自拍偷拍| 国产尤物一区二区在线| 亚洲色图视频网| 日韩视频在线你懂得| 丰满白嫩尤物一区二区|