⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 all_ok.c

📁 操作系统SunOS 4.1.3版本的源码
💻 C
字号:
/*      @(#)all_ok.c 1.1 92/07/30 SMI                              *//* * Copyright (c) 1988 by Sun Microsystems, Inc. */#include "install.h"char *sprintf();inteverything_is_ok(sys,host_info,disk_info,software_info,client_info)struct system_info *sys;int *host_info, *disk_info, *software_info, *client_info;{	/*	 * Check data files create by get_host_info	 */	host_ok(sys, host_info);	/* 	 * Check data files create by get_disk_info	 */	disk_ok(sys, disk_info);	/* 	 * Check data files create by get_software_info	 */	software_ok(software_info );	/* 	 * Check data files create by get_client_info	 */	client_ok(sys, client_info);	return(0);}host_ok(sys, host_info)struct system_info *sys;int *host_info;{	if ((strlen(sys->hostname) && !STR_EQ(sys->hostname,"noname")) &&	    strlen(sys->op) &&	    strlen(sys->type) && 	    strlen(sys->arch) && 	    (STR_EQ(sys->yp_type,"none") || !STR_EQ(sys->domainname,"noname")))		*host_info = 1;	else		*host_info = 0;}disk_ok(sys, disk_info)struct system_info *sys;int *disk_info;{	char root_disk[10];	char filename[MAXPATHLEN];	(void) strncpy(root_disk, sys->root, 3);	root_disk[3] = '\0';	(void) sprintf(filename,"%sdisk_info.%s",INSTALL_DIR,root_disk);	if (access(filename,0) == 0)		*disk_info = 1;	else		*disk_info = 0;}software_ok(software_info)int *software_info;{	FILE *archlist;	char arch[25], path[MINSIZE], kvmpath[MINSIZE];	char filename[MAXPATHLEN];	char buf[BUFSIZ];	*software_info = 0;	/* initial assumption */	(void) sprintf(filename,"%sarchlist",INSTALL_DIR);	if((archlist = fopen(filename,"r")) != NULL) {		while (fgets(buf, sizeof(buf) , archlist) != NULL) {			(void) sscanf(buf,"arch=%s execpath=%s kvmpath=%s",				arch,path,kvmpath);			if ( !strlen(arch) ) break;			(void) sprintf(filename,"%sextractlist.%s",			    INSTALL_DIR,arch);			if (access(filename,0) == 0)				*software_info = 1;		}		(void) fclose(archlist);	}}client_ok(sys, client_info)struct system_info *sys;int *client_info;{	FILE *archlist, *clientlist;	char arch[25], path[MINSIZE], client[MINSIZE], kvmpath[MINSIZE];	char filename[MAXPATHLEN];	char buf[BUFSIZ];	*client_info = 0;	(void) sprintf(filename,"%sarchlist",INSTALL_DIR);	if((archlist = fopen(filename,"r")) == NULL) {		return;	}	while (fgets(buf, sizeof(buf), archlist) != NULL) {		(void) sscanf(buf,"arch=%s execpath=%s kvmpath=%s",			arch,path,kvmpath);		if (!strlen(arch))			break;		if(strcmp(sys->type,"server"))			break;		/*		 * Check for data files created by get_client_info		 */		(void) sprintf(filename,"%sclientlist.%s",INSTALL_DIR,arch);		if((clientlist = fopen(filename,"r")) == NULL)			continue;		while(fgets(buf,sizeof(buf),clientlist) != NULL) {			sscanf(buf,"%s",client);			(void) sprintf(filename,"%s%s.%s",INSTALL_DIR,				client,arch);			if(access(filename,0) == 0)				*client_info = 1;		}		(void) fclose(clientlist);	}	(void) fclose(archlist);}

⌨️ 快捷键说明

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