--- a/toys/pending/arp.c	2016-05-04 11:51:35.000000000 +0530
+++ b/toys/pending/arp.c	2016-05-04 11:53:53.000000000 +0530
@@ -8,7 +8,7 @@
 
 config ARP
   bool "arp"
-  default n
+  default y
   help
     Usage: arp 
     [-vn] [-H HWTYPE] [-i IF] -a [HOSTNAME]
@@ -42,7 +42,6 @@
     char *interface;
     
     int sockfd;
-    char *device;
 )
 
 struct arpreq req; //Global request structure 
@@ -149,7 +148,7 @@
       } else argv++; 
     } else if (j > 4 && !strcmp(*argv, "dev")) {
       if (!*++argv) error_exit("NULL dev");
-      TT.device = *argv;
+      TT.interface = *argv;
     } else if (j > 4) error_exit("invalid arg");
   }
   *i = flag;
@@ -175,7 +174,7 @@
   flags = ATF_PERM | ATF_COM;
   if (toys.optargs[2]) check_flags(&flags, (toys.optargs+2));
   req.arp_flags = flags;
-  xstrncpy(req.arp_dev, TT.device, sizeof(req.arp_dev));
+  xstrncpy(req.arp_dev, TT.interface, sizeof(req.arp_dev));
   xioctl(TT.sockfd, SIOCSARP, &req);
   
   if (toys.optflags & FLAG_v) xprintf("Entry set for %s\n", toys.optargs[0]);
@@ -204,7 +203,7 @@
   flags = ATF_PERM;
   if (toys.optargs[1]) check_flags(&flags, (toys.optargs+1));
   req.arp_flags = flags;
-  xstrncpy(req.arp_dev, TT.device, sizeof(req.arp_dev));
+  xstrncpy(req.arp_dev, TT.interface, sizeof(req.arp_dev));
   xioctl(TT.sockfd, SIOCDARP, &req);
   
   if (toys.optflags & FLAG_v) xprintf("Delete entry for  %s\n", toys.optargs[0]);
@@ -217,7 +216,7 @@
   char ip[128], hw_addr[128], mask[12], dev[128], *host_ip = NULL, *buf;
   int h_type, type, flag, i, fd, entries = 0, disp = 0;
 
-  TT.device = "";
+  if(!TT.interface) TT.interface = "";
   memset(&sa, 0, sizeof(sa));
   memset(&req, 0, sizeof(req));
   TT.sockfd = xsocket(AF_INET, SOCK_STREAM, 0);
