📄 prread.c
字号:
/****************************************************************
* *
* IBM CONFIDENTIAL *
* *
* FILE NAME = udf_s1033.c *
* COMPONENT NAME = udf_s1033 *
* PRODUCT NAME = Captial Airport Infomation Managment *
* System *
* STATUS = PRODUCTION VERSION *
* FUMCTIONAL DESCRIPTION= Read network config file *
* OPERATING SYSTEM= AIX UNIX V3.1 *
* *
* CHANGE ACTIVITY *
* DATE PRGMR. VERSION PTM# DESCRIPTION *
* ========================================================== *
****************************************************************/
#include <stdio.h>
#include <string.h>
#include "prread.h"
extern char udp_send_port[51]; /* define in udp_send.c */
extern char udp_bind_port[51]; /* define in udp_send.c */
extern char nets[50][51]; /* define in udp_send.c */
extern int totalnet; /* define in udp_send.c */
void c_strupr(char *str);
/****************************************************************
FUMCTION DESCRIPTION: Convert lowercase letters in string
str to uppercase
PATAMETERS:
INPUT PATAMENTERS
str : pointer to string to be converted
RETURN CODES : void
FUNCTIONS CALLED: readprofile()
***************************************************************/
void c_strupr(char *str)
{
int i;
int len;
len = strlen(str);
for (i = 0; i < len; i++)
{
if ((*str <= 'z') && (*str >='a'))
*str = (*str + ('A'-'a'));
str++;
}
}
/****************************************************************
FUMCTION DESCRIPTION: read net config file from
readprofile()
PATAMETERS:
INPUT PATAMENTERS
filename : network config file name
RETURN CODES
1 : success
-1 : fail
FUNCTIONS CALLED: ReadNetCfgFile()
***************************************************************/
short readprofile(char * filename)
{
char portname[51];
char portnumber[51];
char sectionname[51];
char netname[51];
char netaddress[51];
char line[129];
int i;
FILE * fn;
if ((fn=fopen(filename,"r"))==NULL)
return -1;
udp_send_port[0]='\0';
udp_bind_port[0]='\0';
while (feof(fn)==0)
{
if (fscanf(fn,"[%[^]]]\n",sectionname)<1)
{
fgets(line,128,fn);
continue;
}
c_strupr(sectionname);
if (strncmp(sectionname,"PORT",4)==0)
{
if (fscanf(fn,"%[^=]=%s\n",portname,portnumber)<0)
return -1;
c_strupr(portname);
if (strncmp(portname, "UDP_SEND_PORT",13)==0)
strcpy(udp_send_port,portnumber);
else if (strncmp(portname, "UDP_BIND_PORT",13)==0)
strcpy(udp_bind_port,portnumber);
else
return -1;
if (fscanf(fn,"%[^=]=%s\n",portname,portnumber)<2)
return -1;
c_strupr(portname);
if (strncmp(portname, "UDP_SEND_PORT",13)==0)
strcpy(udp_send_port,portnumber);
else if (strncmp(portname, "UDP_BIND_PORT",13)==0)
strcpy(udp_bind_port,portnumber);
else
return -1;
if (strlen(udp_send_port)<1 || strlen(udp_bind_port)<1)
return -1;
/*printf("%s %s",udp_send_port,udp_bind_port);*/
break;
}
continue;
}
i = 0;
fseek(fn,0,0);
while (feof(fn)==0)
{
if (fscanf(fn,"\n[%[^]]]",sectionname)!=1)
{
fgets(line,128,fn);
continue;
}
c_strupr(sectionname);
if (strncmp(sectionname,"NET",3)==0)
{
while (fscanf(fn,"\n%[^=]=%s",netname,netaddress)==2)
{
if(netname[0]=='[')
break;
strcpy(nets[i],netaddress);
/* printf("%s",nets[i]);*/
i++;
totalnet=i;
if (i>=50)
return -1;
}
if (strlen(nets[0])<1)
return -1;
break;
}
continue;
}
fclose(fn);
return 1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -