Basic specfile taken from F10
[iproute2.git] / misc / arpd.c
index 85b2a1c..71cd082 100644 (file)
@@ -42,7 +42,7 @@ int resolve_hosts;
 DB     *dbase;
 char   *dbname = "/var/lib/arpd/arpd.db";
 
-int    ifnum;  
+int    ifnum;
 int    *ifvec;
 char   **ifnames;
 
@@ -53,7 +53,7 @@ struct dbkey
 };
 
 #define IS_NEG(x)      (((__u8*)(x))[0] == 0xFF)
-#define NEG_TIME(x)    (((x)[2]<<24)|((x)[3]<<16)|((x)[4]<<8)|(x)[5]) 
+#define NEG_TIME(x)    (((x)[2]<<24)|((x)[3]<<16)|((x)[4]<<8)|(x)[5])
 #define NEG_AGE(x)     ((__u32)time(NULL) - NEG_TIME((__u8*)x))
 #define NEG_VALID(x)   (NEG_AGE(x) < negative_timeout)
 #define NEG_CNT(x)     (((__u8*)(x))[1])
@@ -180,7 +180,7 @@ int send_probe(int ifindex, __u32 addr)
 {
        struct ifreq ifr;
        struct sockaddr_in dst;
-       int len;
+       socklen_t len;
        unsigned char buf[256];
        struct arphdr *ah = (struct arphdr*)buf;
        unsigned char *p = (unsigned char *)(ah+1);
@@ -228,8 +228,7 @@ int send_probe(int ifindex, __u32 addr)
        memcpy(p, &addr, 4);
        p+=4;
 
-       len = sendto(pset[0].fd, buf, p-buf, 0, (struct sockaddr*)&sll, sizeof(sll));
-       if (len < 0)
+       if (sendto(pset[0].fd, buf, p-buf, 0, (struct sockaddr*)&sll, sizeof(sll)) < 0)
                return -1;
        stats.probes_sent++;
        return 0;
@@ -480,13 +479,14 @@ void get_arp_pkt(void)
 {
        unsigned char buf[1024];
        struct sockaddr_ll sll;
-       int sll_len = sizeof(sll);
+       socklen_t sll_len = sizeof(sll);
        struct arphdr *a = (struct arphdr*)buf;
        struct dbkey key;
        DBT dbkey, dbdat;
        int n;
 
-       n = recvfrom(pset[0].fd, buf, sizeof(buf), MSG_DONTWAIT, (struct sockaddr*)&sll, &sll_len);
+       n = recvfrom(pset[0].fd, buf, sizeof(buf), MSG_DONTWAIT,
+                    (struct sockaddr*)&sll, &sll_len);
        if (n < 0) {
                if (errno != EINTR && errno != EAGAIN)
                        syslog(LOG_ERR, "recvfrom: %m");
@@ -510,7 +510,7 @@ void get_arp_pkt(void)
        key.iface = sll.sll_ifindex;
        memcpy(&key.addr, (char*)(a+1) + a->ar_hln, 4);
 
-       /* DAD message, ignore. */ 
+       /* DAD message, ignore. */
        if (key.addr == 0)
                return;
 
@@ -538,7 +538,7 @@ void catch_signal(int sig, void (*handler)(int))
        sa.sa_handler = handler;
 #ifdef SA_INTERRUPT
        sa.sa_flags = SA_INTERRUPT;
-#endif 
+#endif
        sigaction(sig, &sa, NULL);
 }
 
@@ -708,6 +708,7 @@ int main(int argc, char **argv)
                                fprintf(stderr, "Invalid IP address: \"%s\"\n", ipbuf);
                                goto do_abort;
                        }
+
                        dbdat.data = hexstring_a2n(macbuf, b1, 6);
                        if (dbdat.data == NULL)
                                goto do_abort;
@@ -727,10 +728,10 @@ int main(int argc, char **argv)
                DBT dbkey, dbdat;
                printf("%-8s %-15s %s\n", "#Ifindex", "IP", "MAC");
                while (dbase->seq(dbase, &dbkey, &dbdat, R_NEXT) == 0) {
-                       struct dbkey *key = dbkey.data; 
+                       struct dbkey *key = dbkey.data;
                        if (handle_if(key->iface)) {
                                if (!IS_NEG(dbdat.data)) {
-                                       __u8 b1[18];
+                                       char b1[18];
                                        printf("%-8d %-15s %s\n",
                                               key->iface,
                                               inet_ntoa(*(struct in_addr*)&key->addr),