当前位置: 首页>>代码示例>>C++>>正文


C++ KConfig::DelName方法代码示例

本文整理汇总了C++中KConfig::DelName方法的典型用法代码示例。如果您正苦于以下问题:C++ KConfig::DelName方法的具体用法?C++ KConfig::DelName怎么用?C++ KConfig::DelName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在KConfig的用法示例。


在下文中一共展示了KConfig::DelName方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: create_http_redirect

		/*
		split(value,'_',0,m_smtp->src_ip);
		split(value,'_',1,m_smtp->smtp_server);
		* /
	}

}
*/
void create_http_redirect(KConfig &m_config,vector<http_redirect> &http_redirects)
{
	const char *value;
	int index=0;
	char dst_model[100];
	char file_model[100];
	char hosts_model[256];
//	int proxy_flag=0;
	char flags[100];
	char *tmp;
	char *host; 
	char *ptr;
	short port=0;
	http_redirect m_http_redirect;
	host_infomation m_hosts;
	while((value=m_config.GetValue("http_redirect",index++))){
		if(strlen(value)<=0)
			break;
		memset(&m_http_redirect.dst,0,sizeof(m_http_redirect.dst));
		m_http_redirect.file_ext=NULL;
		m_http_redirect.file_ext_revers=false;
		m_http_redirect.flag=0;
		m_http_redirect.hosts.clear();

		if(sscanf(value,"%100s%100s%256s%100s",dst_model,file_model,hosts_model,flags)<4){
			fprintf(stderr,"http_redirect value %s is error,right format is: dst_model file_model hosts_model proxy_flag.\n",value);
			m_config.DelName("http_redirect",index-1);
			continue;
		}
	//	printf("dst_model=%s.\n",dst_model);
		if(!AddIPModel(dst_model,m_http_redirect.dst)){
			m_config.DelName("http_redirect",index-1);
			continue;
		}
		if(strcmp(file_model,"*")!=0){
			m_http_redirect.file_ext=strdup(file_model);
		}
		/*
		if(proxy_flag==0)
			m_http_redirect.proxy_flag=false;
		else
			m_http_redirect.proxy_flag=true;
		*/
		if(strstr(flags,"proxy"))
			SET(m_http_redirect.flag,USE_PROXY);
		if(strstr(flags,"log"))
			SET(m_http_redirect.flag,USE_LOG);
		tmp=hosts_model;
//		int i=m_http_redirect.hosts.size();

		while((host=strtok_r(tmp,"|",&ptr))!=NULL){
			tmp=NULL;
			memset(&m_hosts,0,sizeof(m_hosts));
			m_hosts.port=split_host_port(host,':',sizeof(hosts_model));
			m_hosts.ip=ConvertIP(host);
			m_http_redirect.hosts.push_back(m_hosts);			
		}
//	i=m_http_redirect.hosts.size();
		http_redirects.push_back(m_http_redirect);

	}	
	/*
	std::vector<http_redirect>::iterator it;
	for(it=conf.m_http_redirects.begin();it!=conf.m_http_redirects.end();it++){
		printf("dst=%x,mask=%x,dst_port=%d\n",(*it).dst.ip,(*it).dst.mask,(*it).dst.port);
		printf("file_ext=%s\n",(*it).file_ext);
		for(int i=0;i<(*it).hosts.size();i++){
			printf("host=%x,host port=%d\n",(*it).hosts[i].ip,(*it).hosts[i].port);
		}
	}
	*/
}
开发者ID:zhushengwen,项目名称:example-zhushengwen,代码行数:80,代码来源:do_config.cpp


注:本文中的KConfig::DelName方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。