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

📄 temp.c

📁 watchdog source watchdog source
💻 C
字号:
/* $Header: /cvsroot/watchdog/watchdog/src/temp.c,v 1.2 2006/07/31 09:39:23 meskes Exp $ */#ifdef HAVE_CONFIG_H#include "config.h"#endif#include <errno.h>#include <unistd.h>#include "extern.h"#include "watch_err.h"#if USE_SYSLOG#include <syslog.h>#endifint check_temp(void){    unsigned char temperature;#if USE_SYSLOG    int templevel1 = maxtemp * 9 / 10, have1 = FALSE;    int templevel2 = maxtemp * 95 / 100, have2 = FALSE;    int templevel3 = maxtemp * 98 / 100, have3 = FALSE;#endif				/* USE_SYSLOG */    /* is the temperature device open? */    if (temp == -1)	return (ENOERR);    /* read the line (there is only one) */    if (read(temp, &temperature, sizeof(temperature)) < 0) {	int err = errno;#if USE_SYSLOG	syslog(LOG_ERR, "read %s gave errno = %d = '%m'", err, tempname);#else				/* USE_SYSLOG */	perror(progname);#endif				/* USE_SYSLOG */	if (softboot)	    return (err);	return (ENOERR);    }#if USE_SYSLOG    if (verbose && logtick && ticker == 1)	syslog(LOG_INFO, "current temperature is %d", temperature);    if (temperature > templevel3) {	if (!have3) {	    /* once we reach level3, issue a warning */	    syslog(LOG_WARNING, "temperature increases %d", templevel3);	    have1 = have2 = have3 = TRUE;	}    } else {	have3 = FALSE;	if (temperature > templevel2) {	    if (!have2) {		/* once we reach level2, issue a warning */		syslog(LOG_WARNING, "temperature increases %d", templevel2);		have1 = have2 = TRUE;	    }	} else {	    have2 = have3 = FALSE;	    if (temperature > templevel1) {		if (!have1) {		    /* once we reach level1, issue a warning */		    syslog(LOG_WARNING, "temperature increases %d", templevel1);		    have1 = TRUE;		}	    }	}    }#endif				/* USE_SYSLOG */    if (temperature >= maxtemp) {#if USE_SYSLOG	syslog(LOG_ERR, "it is too hot inside (temperature = %d)", temperature);#else				/* USE_SYSLOG */	fprintf(stderr, "%s: it is too hot inside (temperature = %d\n", progname, temperature);#endif				/* USE_SYSLOG */	return (ETOOHOT);    }    return (ENOERR);}

⌨️ 快捷键说明

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