diff -Nurp dhcpcd-2.0.3.orig/src/arp.c dhcpcd-2.0.3/src/arp.c --- src/arp.c 2006-03-10 17:56:28.000000000 +0000 +++ src/arp.c 2006-03-18 03:15:59.450965000 +0000 @@ -27,6 +27,7 @@ #include #include #include +#include #include "client.h" typedef struct arpMessage @@ -191,7 +192,7 @@ int arpRelease() /* sends UNARP message if ( sendto(dhcpSocket,&ArpMsgSend,len,0, &addr,sizeof(struct sockaddr)) == -1 ) { - syslog(LOG_ERR,"arpRelease: sendto: %m\n"); + syslog(LOG_ERR,"arpRelease: sendto: %s\n",strerror(errno)); return -1; } return 0; @@ -227,7 +228,7 @@ int arpInform() if ( sendto(dhcpSocket,&ArpMsgSend,len,0, &addr,sizeof(struct sockaddr)) == -1 ) { - syslog(LOG_ERR,"arpInform: sendto: %m\n"); + syslog(LOG_ERR,"arpInform: sendto: %s\n",strerror(errno)); return -1; } return 0; diff -Nurp dhcpcd-2.0.3.orig/src/client.c dhcpcd-2.0.3/src/client.c --- src/client.c 2006-03-10 17:56:28.000000000 +0000 +++ src/client.c 2006-03-18 04:00:06.650965000 +0000 @@ -521,7 +521,7 @@ UdpIpMsgRecv.ethhdr.ether_shost[5]); void classIDsetup() { struct utsname sname; - if ( uname(&sname) ) syslog(LOG_ERR,"classIDsetup: uname: %m\n"); + if ( uname(&sname) ) syslog(LOG_ERR,"classIDsetup: uname: %s\n",strerror(errno)); DhcpIface.class_len=snprintf(DhcpIface.class_id,CLASS_ID_MAX_LEN, "%s %s %s",sname.sysname,sname.release,sname.machine); } @@ -713,7 +713,7 @@ void (*buildUdpIpMsg)(unsigned); if ( sendto(dhcpSocket,&UdpIpMsgSend,len,0, &addr,sizeof(struct sockaddr)) == -1 ) { - syslog(LOG_ERR,"sendto: %m\n"); + syslog(LOG_ERR,"sendto: %s\n",strerror(errno)); return -1; } gettimeofday(&begin, NULL); @@ -730,7 +730,7 @@ void (*buildUdpIpMsg)(unsigned); (struct sockaddr *)&addr,&addrLength); if ( len == -1 ) { - syslog(LOG_ERR,"recvfrom: %m\n"); + syslog(LOG_ERR,"recvfrom: %s\n",strerror(errno)); return -1; } if ( TokenRingIf ) @@ -847,13 +847,13 @@ void *dhcpStart() (flags = fcntl(dhcpSocket, F_GETFL, 0)) == -1 || fcntl(dhcpSocket, F_SETFL, flags | O_NONBLOCK) == -1) { - syslog(LOG_ERR,"dhcpStart: socket: %m\n"); + syslog(LOG_ERR,"dhcpStart: socket: %s\n",strerror(errno)); exit(1); } if ( ioctl(dhcpSocket,SIOCGIFHWADDR,&ifr) ) { - syslog(LOG_ERR,"dhcpStart: ioctl SIOCGIFHWADDR: %m\n"); + syslog(LOG_ERR,"dhcpStart: ioctl SIOCGIFHWADDR: %s\n",strerror(errno)); exit(1); } if ( ifr.ifr_hwaddr.sa_family != ARPHRD_ETHER && ifr.ifr_hwaddr.sa_family != ARPHRD_IEEE802_TR ) @@ -869,19 +869,19 @@ void *dhcpStart() } if ( setsockopt(dhcpSocket,SOL_SOCKET,SO_BROADCAST,&o,sizeof(o)) == -1 ) { - syslog(LOG_ERR,"dhcpStart: setsockopt: %m\n"); + syslog(LOG_ERR,"dhcpStart: setsockopt: %s\n",strerror(errno)); exit(1); } if ( ioctl(dhcpSocket,SIOCGIFFLAGS,&ifr) ) { - syslog(LOG_ERR,"dhcpStart: ioctl SIOCGIFFLAGS: %m\n"); + syslog(LOG_ERR,"dhcpStart: ioctl SIOCGIFFLAGS: %s\n",strerror(errno)); exit(1); } saved_if_flags = ifr.ifr_flags; ifr.ifr_flags = saved_if_flags | IFF_UP | IFF_BROADCAST | IFF_NOTRAILERS | IFF_RUNNING; if ( ioctl(dhcpSocket,SIOCSIFFLAGS,&ifr) ) { - syslog(LOG_ERR,"dhcpStart: ioctl SIOCSIFFLAGS: %m\n"); + syslog(LOG_ERR,"dhcpStart: ioctl SIOCSIFFLAGS: %s\n",strerror(errno)); exit(1); } memset(&sap,0,sizeof(sap)); @@ -896,7 +896,7 @@ void *dhcpStart() ClientHwAddr[3],ClientHwAddr[4],ClientHwAddr[5]); if ( ioctl(dhcpSocket,SIOCGIFHWADDR,&ifr) ) { - syslog(LOG_ERR,"dhcpStart: ioctl SIOCGIFHWADDR: %m\n"); + syslog(LOG_ERR,"dhcpStart: ioctl SIOCGIFHWADDR: %s\n",strerror(errno)); exit(1); } if ( ifr.ifr_hwaddr.sa_family != ARPHRD_ETHER && ifr.ifr_hwaddr.sa_family != ARPHRD_IEEE802_TR ) @@ -906,13 +906,13 @@ void *dhcpStart() } if ( setsockopt(dhcpSocket,SOL_SOCKET,SO_BROADCAST,&o,sizeof(o)) == -1 ) { - syslog(LOG_ERR,"dhcpStart: setsockopt: %m\n"); + syslog(LOG_ERR,"dhcpStart: setsockopt: %s\n",strerror(errno)); exit(1); } ifr.ifr_flags = saved_if_flags | IFF_UP | IFF_BROADCAST | IFF_NOTRAILERS | IFF_RUNNING; if ( ioctl(dhcpSocket,SIOCSIFFLAGS,&ifr) ) { - syslog(LOG_ERR,"dhcpStart: ioctl SIOCSIFFLAGS: %m\n"); + syslog(LOG_ERR,"dhcpStart: ioctl SIOCSIFFLAGS: %s\n",strerror(errno)); exit(1); } memset(&sap,0,sizeof(sap)); @@ -924,7 +924,7 @@ void *dhcpStart() sap.spkt_family = AF_PACKET; #endif if ( bind(dhcpSocket,(void*)&sap,sizeof(struct sockaddr)) == -1 ) - syslog(LOG_ERR,"dhcpStart: bind: %m\n"); + syslog(LOG_ERR,"dhcpStart: bind: %s\n",strerror(errno)); memcpy(ClientHwAddr,ifr.ifr_hwaddr.sa_data,ETH_ALEN); if ( DebugFlag ) @@ -948,25 +948,25 @@ void *dhcpStart() udpFooSocket = socket(AF_INET,SOCK_DGRAM,0); if (udpFooSocket == -1) { - syslog(LOG_ERR,"dhcpStart: socket: %m\n"); + syslog(LOG_ERR,"dhcpStart: socket: %s\n",strerror(errno)); exit(1); } if ( setsockopt(udpFooSocket,SOL_SOCKET,SO_BROADCAST,&o,sizeof(o)) ) - syslog(LOG_ERR,"dhcpStart: setsockopt: %m\n"); + syslog(LOG_ERR,"dhcpStart: setsockopt: %s\n",strerror(errno)); memset(&clientAddr.sin_addr,0,sizeof(&clientAddr.sin_addr)); clientAddr.sin_family = AF_INET; clientAddr.sin_port = htons(DHCP_CLIENT_PORT); if ( bind(udpFooSocket,(struct sockaddr *)&clientAddr,sizeof(clientAddr)) ) { if ( errno != EADDRINUSE ) - syslog(LOG_ERR,"dhcpStart: bind: %m\n"); + syslog(LOG_ERR,"dhcpStart: bind: %s\n",strerror(errno)); close(udpFooSocket); udpFooSocket = -1; } else if ( fcntl(udpFooSocket,F_SETFL,O_NONBLOCK) == -1 ) { - syslog(LOG_ERR,"dhcpStart: fcntl: %m\n"); + syslog(LOG_ERR,"dhcpStart: fcntl: %s\n",strerror(errno)); exit(1); } @@ -1261,7 +1261,7 @@ void *dhcpRelease() if ( sendto(dhcpSocket,&UdpIpMsgSend,sizeof(struct packed_ether_header)+ sizeof(udpiphdr)+sizeof(dhcpMessage),0, &addr,sizeof(struct sockaddr)) == -1 ) - syslog(LOG_ERR,"dhcpRelease: sendto: %m\n"); + syslog(LOG_ERR,"dhcpRelease: sendto: %s\n",strerror(errno)); arpRelease(); /* clear ARP cache entries for client IP addr */ if ( SetHostName ) { @@ -1296,13 +1296,13 @@ void *dhcpStop() p->sin_addr.s_addr = 0; #ifndef OLD_LINUX_VERSION if ( ioctl(dhcpSocket,SIOCSIFADDR,&ifr) == -1 ) - syslog(LOG_ERR,"dhcpStop: ioctl SIOCSIFADDR: %m\n"); + syslog(LOG_ERR,"dhcpStop: ioctl SIOCSIFADDR: %s\n",strerror(errno)); #endif if (DownIfaceOnStop) { ifr.ifr_flags = saved_if_flags & ~IFF_UP; if ( (IfName_len==IfNameExt_len) && ioctl(dhcpSocket,SIOCSIFFLAGS,&ifr) ) - syslog(LOG_ERR,"dhcpStop: ioctl SIOCSIFFLAGS: %m\n"); + syslog(LOG_ERR,"dhcpStop: ioctl SIOCSIFFLAGS: %s\n",strerror(errno)); } tsc: close(dhcpSocket); @@ -1333,7 +1333,7 @@ void *dhcpDecline() if ( sendto(dhcpSocket,&UdpIpMsgSend,sizeof(struct packed_ether_header)+ sizeof(udpiphdr)+sizeof(dhcpMessage),0, &addr,sizeof(struct sockaddr)) == -1 ) - syslog(LOG_ERR,"dhcpDecline: sendto: %m\n"); + syslog(LOG_ERR,"dhcpDecline: sendto: %s\n",strerror(errno)); return &dhcpInit; } #endif diff -Nurp dhcpcd-2.0.3.orig/src/dhcpcd.c dhcpcd-2.0.3/src/dhcpcd.c --- src/dhcpcd.c 2006-03-10 17:56:28.000000000 +0000 +++ src/dhcpcd.c 2006-03-18 04:01:03.000000000 +0000 @@ -431,12 +431,12 @@ usage: print_version(); signalSetup(); if ( mkdir(ConfigDir,S_IRUSR|S_IWUSR|S_IXUSR|S_IRGRP|S_IXGRP|S_IROTH|S_IXOTH) && errno != EEXIST ) { - syslog(LOG_ERR,"mkdir(\"%s\",0): %m\n",ConfigDir); + syslog(LOG_ERR,"mkdir(\"%s\",0): %s\n",ConfigDir,strerror(errno)); exit(1); } if ( mkdir(etcDir,S_IRUSR|S_IWUSR|S_IXUSR|S_IRGRP|S_IXGRP|S_IROTH|S_IXOTH) && errno != EEXIST ) { - syslog(LOG_ERR,"mkdir(\"%s\",0): %m\n", etcDir); + syslog(LOG_ERR,"mkdir(\"%s\",0): %s\n",etcDir,strerror(errno)); exit(1); } snprintf(resolv_file, sizeof(resolv_file), RESOLV_FILE, etcDir); diff -Nurp dhcpcd-2.0.3.orig/src/dhcpconfig.c dhcpcd-2.0.3/src/dhcpconfig.c --- src/dhcpconfig.c 2006-03-18 02:59:22.000000000 +0000 +++ src/dhcpconfig.c 2006-03-18 03:18:23.890965000 +0000 @@ -131,8 +131,8 @@ char *prm; argc[3]=NULL; argc[4]=NULL; if ( execve(exec_on_change,argc,ProgramEnviron) && errno != ENOENT ) - syslog(LOG_ERR,"error executing \"%s %s %s\": %m\n", - exec_on_change,hostinfo_file,prm); + syslog(LOG_ERR,"error executing \"%s %s %s\": %s\n", + exec_on_change,hostinfo_file,prm,strerror(errno)); exit(0); } } @@ -226,14 +226,14 @@ if ( ioctl(dhcpSocket,SIOCADDRT,&rtent) rtent.rt_flags = RTF_UP|RTF_GATEWAY|(Window ? RTF_WINDOW : 0); if ( ioctl(dhcpSocket,SIOCADDRT,&rtent) == -1 ) { - syslog(LOG_ERR,"dhcpConfig: ioctl SIOCADDRT: %m\n"); + syslog(LOG_ERR,"dhcpConfig: ioctl SIOCADDRT: %s\n",strerror(errno)); return -1; } } } else { - syslog(LOG_ERR,"dhcpConfig: ioctl SIOCADDRT: %m\n"); + syslog(LOG_ERR,"dhcpConfig: ioctl SIOCADDRT: %s\n",strerror(errno)); return -1; } } @@ -276,7 +276,7 @@ int dhcpConfig() p->sin_addr.s_addr = DhcpIface.ciaddr; if ( ioctl(dhcpSocket,SIOCSIFADDR,&ifr) == -1 ) /* setting IP address */ { - syslog(LOG_ERR,"dhcpConfig: ioctl SIOCSIFADDR: %m\n"); + syslog(LOG_ERR,"dhcpConfig: ioctl SIOCSIFADDR: %s\n",strerror(errno)); return -1; } memcpy(&p->sin_addr.s_addr,DhcpOptions.val[subnetMask],4); @@ -285,13 +285,13 @@ int dhcpConfig() p->sin_addr.s_addr = 0xffffffff; /* try 255.255.255.255 */ if ( ioctl(dhcpSocket,SIOCSIFNETMASK,&ifr) == -1 ) { - syslog(LOG_ERR,"dhcpConfig: ioctl SIOCSIFNETMASK: %m\n"); + syslog(LOG_ERR,"dhcpConfig: ioctl SIOCSIFNETMASK: %s\n",strerror(errno)); return -1; } } memcpy(&p->sin_addr.s_addr,DhcpOptions.val[broadcastAddr],4); if ( ioctl(dhcpSocket,SIOCSIFBRDADDR,&ifr) == -1 ) /* setting broadcast address */ - syslog(LOG_ERR,"dhcpConfig: ioctl SIOCSIFBRDADDR: %m\n"); + syslog(LOG_ERR,"dhcpConfig: ioctl SIOCSIFBRDADDR: %s\n",strerror(errno)); /* * setting local route @@ -313,7 +313,7 @@ int dhcpConfig() rtent.rt_metric = 1; rtent.rt_flags = RTF_UP; if ( ioctl(dhcpSocket,SIOCDELRT,&rtent) ) - syslog(LOG_ERR,"dhcpConfig: ioctl SIOCDELRT: %m\n"); + syslog(LOG_ERR,"dhcpConfig: ioctl SIOCDELRT: %s\n",strerror(errno)); #endif memset(&rtent,0,sizeof(struct rtentry)); @@ -331,7 +331,7 @@ int dhcpConfig() rtent.rt_metric = RouteMetric; rtent.rt_flags = RTF_UP; if ( ioctl(dhcpSocket,SIOCADDRT,&rtent) ) - syslog(LOG_ERR,"dhcpConfig: ioctl SIOCADDRT: %m\n"); + syslog(LOG_ERR,"dhcpConfig: ioctl SIOCADDRT: %s\n",strerror(errno)); for (i=0;i @@ -458,7 +458,7 @@ int dhcpConfig() if (prefix) free(prefix); } else - syslog(LOG_ERR,"dhcpConfig: fopen: %m\n"); + syslog(LOG_ERR,"dhcpConfig: fopen: %s\n",strerror(errno)); } if ( ReplNTPConf && DhcpOptions.len[ntpServers]>=4 ) { @@ -493,7 +493,7 @@ int dhcpConfig() fclose(f); } else - syslog(LOG_ERR,"dhcpConfig: fopen: %m\n"); + syslog(LOG_ERR,"dhcpConfig: fopen: %s\n",strerror(errno)); } if ( SetHostName ) { @@ -602,7 +602,7 @@ tsc: if ( i == -1 || write(i,(char *)&DhcpIface,sizeof(dhcpInterface)) == -1 || close(i) == -1 ) - syslog(LOG_ERR,"dhcpConfig: open/write/close: %m\n"); + syslog(LOG_ERR,"dhcpConfig: open/write/close: %s\n",strerror(errno)); snprintf(hostinfo_file,sizeof(hostinfo_file),DHCP_HOSTINFO,ConfigDir,IfNameExt); snprintf(hostinfo_file_old,sizeof(hostinfo_file_old),""DHCP_HOSTINFO".old",ConfigDir,IfNameExt); rename(hostinfo_file,hostinfo_file_old); @@ -786,7 +786,7 @@ FQDNHOSTNAME='%s'\n", have_info = 1; } else - syslog(LOG_ERR,"dhcpConfig: fopen: %m\n"); + syslog(LOG_ERR,"dhcpConfig: fopen: %s\n",strerror(errno)); #if 0 if ( Cfilename ) if ( fork() == 0 ) @@ -795,8 +795,8 @@ FQDNHOSTNAME='%s'\n", argc[0]=Cfilename; argc[1]=NULL; if ( execve(Cfilename,argc,ProgramEnviron) ) - syslog(LOG_ERR,"error executing \"%s\": %m\n", - Cfilename); + syslog(LOG_ERR,"error executing \"%s\": %s\n", + Cfilename,strerror(errno)); exit(0); } #endif diff -Nurp dhcpcd-2.0.3.orig/src/signals.c dhcpcd-2.0.3/src/signals.c --- src/signals.c 2006-03-10 17:56:28.000000000 +0000 +++ src/signals.c 2006-03-18 03:14:16.040965000 +0000 @@ -30,6 +30,8 @@ #include #include #include +#include +#include #include "pathnames.h" #include "client.h" @@ -45,7 +47,7 @@ void killPid(sig) int sig; { FILE *fp; - pid_t pid; + unsigned int pid; char pidfile[64]; snprintf(pidfile,sizeof(pidfile),PID_FILE_PATH,IfNameExt); fp=fopen(pidfile,"r"); @@ -69,7 +71,7 @@ void writePidFile(pid_t pid) fp=fopen(pidfile,"w"); if ( fp == NULL ) { - syslog(LOG_ERR,"writePidFile: fopen: %m\n"); + syslog(LOG_ERR,"writePidFile: fopen: %s\n",strerror(errno)); exit(1); } fprintf(fp,"%u\n",pid); diff -Nurp dhcpcd-2.0.3.orig/src/udpipgen.c dhcpcd-2.0.3/src/udpipgen.c --- src/udpipgen.c 2006-03-10 17:56:28.000000000 +0000 +++ src/udpipgen.c 2006-03-18 03:12:39.340965000 +0000 @@ -50,10 +50,7 @@ int len; return ~sum; } /*****************************************************************************/ -void udpipgen(udpip,saddr,daddr,sport,dport,msglen) -udpiphdr *udpip; -unsigned int saddr,daddr; -unsigned short sport,dport,msglen; +void udpipgen(udpiphdr *udpip,unsigned int saddr,unsigned int daddr,unsigned short sport,unsigned short dport,unsigned short msglen) { /* Use local copy because udpip->ip is not aligned. */ struct ip ip_local;