Vodz, last_patch_88
diff --git a/networking/udhcp/dumpleases.c b/networking/udhcp/dumpleases.c
index 014f73f..4c6107c 100644
--- a/networking/udhcp/dumpleases.c
+++ b/networking/udhcp/dumpleases.c
@@ -1,79 +1,55 @@
 #include <fcntl.h>
 #include <string.h>
 #include <stdlib.h>
-#include <stdio.h>
 #include <sys/wait.h>
-#include <sys/stat.h>
 #include <arpa/inet.h>
 #include <netdb.h>
 #include <netinet/in.h>
 #include <stdio.h>
-#include <sys/types.h>
 #include <sys/socket.h>
 #include <unistd.h>
-#include <syslog.h>
-#include <signal.h>
-#include <errno.h>
 #include <getopt.h>
 #include <time.h>
 
-#include "libbb_udhcp.h"
+#include "leases.h"
+#include "busybox.h"
 
 #define REMAINING 0
 #define ABSOLUTE 1
 
-struct lease_t {
-	unsigned char chaddr[16];
-	u_int32_t yiaddr;
-	u_int32_t expires;
-};
-
-#ifdef IN_BUSYBOX
 int dumpleases_main(int argc, char *argv[])
-#else
-int main(int argc, char *argv[])
-#endif
 {
 	FILE *fp;
 	int i, c, mode = REMAINING;
 	long expires;
-	char file[255] = "/var/lib/misc/udhcpd.leases";
-	struct lease_t lease;
+	const char *file = leases_file;
+	struct dhcpOfferedAddr lease;
 	struct in_addr addr;
 	
-	static struct option options[] = {
+	static const struct option options[] = {
 		{"absolute", 0, 0, 'a'},
 		{"remaining", 0, 0, 'r'},
 		{"file", 1, 0, 'f'},
-		{"help", 0, 0, 'h'},
 		{0, 0, 0, 0}
 	};
 
 	while (1) {
 		int option_index = 0;
-		c = getopt_long(argc, argv, "arf:h", options, &option_index);
+		c = getopt_long(argc, argv, "arf:", options, &option_index);
 		if (c == -1) break;
 		
 		switch (c) {
 		case 'a': mode = ABSOLUTE; break;
 		case 'r': mode = REMAINING; break;
 		case 'f':
-			strncpy(file, optarg, 255);
-			file[254] = '\0';
+			file =  optarg;
 			break;
-		case 'h':
-			printf("Usage: dumpleases -f <file> -[r|a]\n\n");
-			printf("  -f, --file=FILENAME             Leases file to load\n");
-			printf("  -r, --remaining                 Interepret lease times as time remaing\n");
-			printf("  -a, --absolute                  Interepret lease times as expire time\n");
-			break;
+		default:
+			bb_show_usage();
 		}
 	}
 			
-	if (!(fp = fopen(file, "r"))) {
-		perror("could not open input file");
-		return 0;
-	}
+	fp = bb_xfopen(file, "r");
 
 	printf("Mac Address       IP-Address      Expires %s\n", mode == REMAINING ? "in" : "at");  
 	/*     "00:00:00:00:00:00 255.255.255.255 Wed Jun 30 21:49:08 1993" */