configgen.cpp

来自「lwip tcp/ip 协议栈 adsp BF533 DSP 移植 用 visu」· C++ 代码 · 共 634 行 · 第 1/2 页

CPP
634
字号
	memset(tbuf,0,sizeof(tbuf));
	GetPrivateProfileString(nw1_sec,"NI1_rxbufsz",NULL,tbuf,sizeof(tbuf),cfg_filename);
	pNwIfce->rx_buf_sz = atoi(tbuf);

	memset(tbuf,0,sizeof(tbuf));
	GetPrivateProfileString(nw1_sec,"NI1_txbufs",NULL,tbuf,sizeof(tbuf),cfg_filename);
	pNwIfce->tx_bufs = atoi(tbuf);

	memset(tbuf,0,sizeof(tbuf));
	GetPrivateProfileString(nw1_sec,"NI1_txbufsz",NULL,tbuf,sizeof(tbuf),cfg_filename);
	pNwIfce->tx_buf_sz = atoi(tbuf);

	memset(tbuf,0,sizeof(tbuf));
	GetPrivateProfileString(nw1_sec,"NI1_macaddr",NULL,tbuf,sizeof(tbuf),cfg_filename);
	tbuf[12] = '\0';
	ConvertTextMacToBinary(tbuf,pNwIfce->mac_addr);

	return true;
}
///////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////
bool StoreConfigHeaderData(char *cfg_filename,ConfigHeaderStruct *cfg_header_struct)
{
	char tbuf[80];

	WritePrivateProfileString(NULL,NULL,NULL,cfg_filename);

	////////////////////////////////////////////////////////////////////
	//
	// Protoclos
	//
	sprintf(tbuf,"%d",cfg_header_struct->proto_all);
	WritePrivateProfileString(protocol_sec,"Protocol_ALL",tbuf,cfg_filename);
	
	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->proto_tcp);
	WritePrivateProfileString(protocol_sec,"Protocol_TCP",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->proto_udp);
	WritePrivateProfileString(protocol_sec,"Protocol_UDP",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->proto_icmp);
	WritePrivateProfileString(protocol_sec,"Protocol_ICMP",tbuf,cfg_filename);
	
	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->proto_dhcp);
	WritePrivateProfileString(protocol_sec,"Protocol_DHCP",tbuf,cfg_filename);

	///////////////////////////////////////////////////////////////
	//
	// Statistics
	//
	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->stats_all);
	WritePrivateProfileString(stats_sec,"Stats_ALL",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->stats_tcp);
	WritePrivateProfileString(stats_sec,"Stats_TCP",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->stats_udp);
	WritePrivateProfileString(stats_sec,"Stats_UDP",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->stats_ip);
	WritePrivateProfileString(stats_sec,"Stats_IP",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->stats_icmp);
	WritePrivateProfileString(stats_sec,"Stats_ICMP",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->stats_link);
	WritePrivateProfileString(stats_sec,"Stats_LINK",tbuf,cfg_filename);

	///////////////////////////////////////////////////////////////////
	//
	// Ip options
	//
	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->ip_forward);
	WritePrivateProfileString(ip_sec,"IP_forward",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->ip_fragmentation);
	WritePrivateProfileString(ip_sec,"IP_fragmentation",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->ip_options);
	WritePrivateProfileString(ip_sec,"IP_options",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->ip_reassembly);
	WritePrivateProfileString(ip_sec,"IP_reassembly",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->multiple_networks);
	WritePrivateProfileString(ip_sec,"IP_multiple_networks",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->num_networks);
	WritePrivateProfileString(ip_sec,"IP_num_networks",tbuf,cfg_filename);

	///////////////////////////////////////////////////////////////////
	//
	// TCP configuration
	//
	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->tcp_mss);
	WritePrivateProfileString(tcp_sec,"TCP_Mss",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->tcp_wndsz);
	WritePrivateProfileString(tcp_sec,"TCP_WndSz",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->no_udp_conn);
	WritePrivateProfileString(tcp_sec,"TCP_NoUdpConn",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->no_tcp_conn);
	WritePrivateProfileString(tcp_sec,"TCP_NoTcpConn",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->no_listen_conn);
	WritePrivateProfileString(tcp_sec,"TCP_NoListenConn",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->arp_tbsz);
	WritePrivateProfileString(tcp_sec,"TCP_ArpTBSz",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->no_sockets);
	WritePrivateProfileString(tcp_sec,"TCP_NoSockets",tbuf,cfg_filename);

	/////////////////////////////////////////////////////////////////////
	//
	// Debug Configuration
	//
	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->debug_all);
	WritePrivateProfileString(debug_sec,"Debug_ALL",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->debug_apilib);
	WritePrivateProfileString(debug_sec,"Debug_APILIB",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->debug_ip);
	WritePrivateProfileString(debug_sec,"Debug_IP",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->debug_mem);
	WritePrivateProfileString(debug_sec,"Debug_MEM",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->debug_memp);
	WritePrivateProfileString(debug_sec,"Debug_MEMP",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->debug_sockets);
	WritePrivateProfileString(debug_sec,"Debug_SOCKETS",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->debug_tcp);
	WritePrivateProfileString(debug_sec,"Debug_TCP",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->debug_udp);
	WritePrivateProfileString(debug_sec,"Debug_UDP",tbuf,cfg_filename);

	//////////////////////////////////////////////////////////////////
	//
	// Tracing functionality
	//
	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->trace_enable);
	WritePrivateProfileString(trace_sec,"TraceEnable",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->tcp_pkt_dump);
	WritePrivateProfileString(trace_sec,"Trace_TCP",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->udp_pkt_dump);
	WritePrivateProfileString(trace_sec,"Trace_UDP",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->ip_pkt_dump);
	WritePrivateProfileString(trace_sec,"Trace_IP",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->arp_pkt_dump);
	WritePrivateProfileString(trace_sec,"Trace_ARP",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->icmp_pkt_dump);
	WritePrivateProfileString(trace_sec,"Trace_ICMP",tbuf,cfg_filename);

	////////////////////////////////////////////////////////////////////
	///		Memory
	//
	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->pool_start_addr);
	WritePrivateProfileString(memory_sec,"Mem_Pool_Start_Addr",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->pool_size);
	WritePrivateProfileString(memory_sec,"Mem_Pool_Size",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->mem_alignment);
	WritePrivateProfileString(memory_sec,"Mem_Alignment",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",cfg_header_struct->ram_size);
	WritePrivateProfileString(memory_sec,"Mem_Ram_Size",tbuf,cfg_filename);

	return true;
}

bool StoreConfigSourceData(char *cfg_filename,ConfigSourceStruct *cfg_source_struct)
{
	network_ifce *pNwIfce;
	char tbuf[80];

	pNwIfce = &cfg_source_struct->nw_ifces[0];

	if(!pNwIfce) return false;

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",pNwIfce->use_dhcp);
	WritePrivateProfileString(nw0_sec,"NI0_usedhcp",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",pNwIfce->rx_bufs);
	WritePrivateProfileString(nw0_sec,"NI0_rxbufs",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",pNwIfce->rx_buf_sz);
	WritePrivateProfileString(nw0_sec,"NI0_rxbufsz",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",pNwIfce->tx_bufs);
	WritePrivateProfileString(nw0_sec,"NI0_txbufs",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",pNwIfce->tx_buf_sz);
	WritePrivateProfileString(nw0_sec,"NI0_txbufsz",tbuf,cfg_filename);

	ConvertBinaryMacToText(pNwIfce->mac_addr,tbuf);
	tbuf[12] = '\0';
	WritePrivateProfileString(nw0_sec,"NI0_macaddr",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%x",pNwIfce->ip_addr);
	WritePrivateProfileString(nw0_sec,"NI0_ipaddr",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%x",pNwIfce->subnet_mask);
	WritePrivateProfileString(nw0_sec,"NI0_subnetmask",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%x",pNwIfce->default_gateway);
	WritePrivateProfileString(nw0_sec,"NI0_gateway",tbuf,cfg_filename);

	////////////// Network Interface 1

	pNwIfce = &cfg_source_struct->nw_ifces[1];

	if(!pNwIfce) return false;

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",pNwIfce->use_dhcp);
	WritePrivateProfileString(nw1_sec,"NI1_usedhcp",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",pNwIfce->rx_bufs);
	WritePrivateProfileString(nw1_sec,"NI1_rxbufs",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",pNwIfce->rx_buf_sz);
	WritePrivateProfileString(nw1_sec,"NI1_rxbufsz",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",pNwIfce->tx_bufs);
	WritePrivateProfileString(nw1_sec,"NI1_txbufs",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%d",pNwIfce->tx_buf_sz);
	WritePrivateProfileString(nw1_sec,"NI1_txbufsz",tbuf,cfg_filename);

	ConvertBinaryMacToText(pNwIfce->mac_addr,tbuf);
	tbuf[12] = '\0';
	WritePrivateProfileString(nw1_sec,"NI1_macaddr",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%x",pNwIfce->ip_addr);
	WritePrivateProfileString(nw1_sec,"NI1_ipaddr",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%x",pNwIfce->subnet_mask);
	WritePrivateProfileString(nw1_sec,"NI1_subnetmask",tbuf,cfg_filename);

	memset(tbuf,0,sizeof(tbuf));
	sprintf(tbuf,"%x",pNwIfce->default_gateway);
	WritePrivateProfileString(nw1_sec,"NI1_gateway",tbuf,cfg_filename);

	return true;
}


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?