timeout.c

来自「API」· C语言 代码 · 共 62 行

C
62
字号
/*=============================================================
功能: 		
作者:		
王永忠:2001/03/29:规范程序设计
===============================================================*/

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include "mytools.h"

#define	Default_Time	25

/***************************************************************
功能:
从文件TIMEOUT中查找交易或进程对应的超时时间
ENTRY:
	char	*str;	交易或进程名
RETURN:
如果该交易或进程没有对应的超时时间,则返回缺省值25
****************************************************************/
int get_timeout(str)
char	*str;
{
FILE	*fp;
char	*file;
char	type[20], tim[20];
char	buf[80];
int	len, atoi();
int	i, j;

	file = (char *) getfname("WORKDIR", "/etc/TIMEOUT");
	if( (fp=fopen(file,"r")) == NULL) {
		errcall(ERROR, "Open timeout file err!");
		return( Default_Time );
	}
	

	len = strlen(str);
	do {
		if( fgets( buf, 80, fp ) == NULL ) break;
		if( buf[0] == '#' )	continue;

		if( memcmp(buf, str, len) == 0) {
			fclose(fp);	
			for( i= len; i<80; i++ ) { 
				if( buf[i] >= '0' && buf[i] <= '9' ) break;
			}
			for( j=0; j<5; j++ ) {
				if( buf[i+j] < '0' || buf[i+j] > '9' ) break;
				tim[j] = buf[i+j];	
			}
			tim[j] = 0;	
			
			return( atoi( tim ) );
		}
	} while ( !feof(fp) );

	fclose(fp);
	return( Default_Time );		
}

⌨️ 快捷键说明

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