{
int temp;
- return (pscanf(file, "%d", &temp) == 1) ?
- bprintf("%d", temp / 1000) : NULL;
+ if(pscanf(file, "%d", &temp) != 1) {
+ return NULL;
+ }
+
+ return bprintf("%d", temp / 1000);
}
#elif defined(__OpenBSD__)
#include <errno.h>
#include <sys/sysctl.h>
const char *
- temp(const char *file)
+ temp(const char *unused)
{
int mib[5];
size_t size;
struct sensor temp;
- UNUSED(file); /* no temperature file on OpenBSD */
-
mib[0] = CTL_HW;
mib[1] = HW_SENSORS;
mib[2] = 0; /* cpu0 */
size = sizeof(temp);
if (sysctl(mib, 5, &temp, &size, NULL, 0) < 0) {
- fprintf(stderr, "sysctl 'SENSOR_TEMP': %s\n",
- strerror(errno));
+ warn("sysctl 'SENSOR_TEMP':");
return NULL;
}
/* kelvin to celsius */
- return bprintf("%d", (temp.value - 273150000) / 1000000);
+ return bprintf("%d", (temp.value - 273150000) / 1E6);
}
#endif