1
diff -Naur hddtemp-0.3-beta14_orig/src/daemon.c hddtemp-0.3-beta14/src/daemon.c
2
--- hddtemp-0.3-beta14_orig/src/daemon.c 2005-06-04 04:22:35.000000000 +0200
3
+++ hddtemp-0.3-beta14/src/daemon.c 2005-11-16 14:37:50.000000000 +0100
7
#include <sys/socket.h>
13
struct addrinfo* all_ai;
14
struct addrinfo hints;
15
struct addrinfo* resp;
16
+ struct sockaddr_un addr;
21
/* Count max number of sockets we might open. */
22
for (sks_serv_num = 0, resp = all_ai ; resp ; resp = resp->ai_next)
25
+ /* extra num for unix socket */
28
sks_serv = malloc(sizeof(int) * sks_serv_num);
36
+ bzero((char*) &addr, sizeof(addr));
37
+ addr.sun_family = AF_UNIX;
38
+ strncpy(addr.sun_path, UNIX_ADDR, sizeof addr.sun_path - 1);
39
+ addr.sun_path[sizeof addr.sun_path - 1] = '\0';
41
+ (void) unlink(addr.sun_path);
43
+ if ((sks_serv[sks_serv_num] = socket(PF_UNIX, SOCK_STREAM, 0)) == -1 ||
44
+ bind(sks_serv[sks_serv_num], (struct sockaddr *) &addr,
45
+ sizeof(addr.sun_family) + strlen(addr.sun_path)) ||
46
+ listen(sks_serv[sks_serv_num],5))
49
+ for (sks_serv_num-- ; sks_serv_num > 0 ; sks_serv_num--)
50
+ close(sks_serv[sks_serv_num]);
56
+ chmod(addr.sun_path, 0666);
61
void daemon_update(struct disk *ldisks, int nocache) {
64
for (i = 0 ; i < sks_serv_num; i++)
67
+ (void) unlink(UNIX_ADDR);
70
void daemon_send_msg(struct disk *ldisks, int cfd) {
72
if (syslog_interval > 0)
76
diff -Naur hddtemp-0.3-beta14_orig/src/hddtemp.h hddtemp-0.3-beta14/src/hddtemp.h
77
--- hddtemp-0.3-beta14_orig/src/hddtemp.h 2005-08-31 11:08:18.000000000 +0200
78
+++ hddtemp-0.3-beta14/src/hddtemp.h 2005-11-16 14:24:27.000000000 +0100
80
#define MAX_ERRORMSG_SIZE 128
81
#define DEFAULT_ATTRIBUTE_ID 194
83
+#define UNIX_ADDR "/var/run/hddtemp.sock"
85
#define F_to_C(val) (int)(((double)(val)-32.0)/1.8)
86
#define C_to_F(val) (int)(((double)(val)*(double)1.8) + (double)32.0)
b'\\ No newline at end of file'