- convert a few xopen3(,,0) into xopen(,). Also peruse the fact that xopen defaults to 0777 on it's own, so we don't need to xopen3(,,0777).
  Saves a few bytes:
$ size busybox.old busybox                                text    data     bss     dec     hex filename
 839676    8780  243592 1092048  10a9d0 busybox.old
 839660    8780  243592 1092032  10a9c0 busybox
$ make CC=gcc-4.2-HEAD bloatcheck
function                                             old     new   delta
static.vconfig_main                                  281     279      -2
static.rx_main                                      1076    1074      -2
static.mt_main                                       294     292      -2
static.gzip_main                                     753     751      -2
static.mkfs_minix_main                              4034    4030      -4
static.unzip_main                                   1771    1766      -5
static.crontab_main                                 1513    1507      -6
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/7 up/down: 0/-23)             Total: -23 bytes
diff --git a/archival/gzip.c b/archival/gzip.c
index ad2c24d..7c18154 100644
--- a/archival/gzip.c
+++ b/archival/gzip.c
@@ -1206,7 +1206,7 @@
 				inFileNum = STDIN_FILENO;
 				outFileNum = STDOUT_FILENO;
 			} else {
-				inFileNum = xopen3(argv[i], O_RDONLY, 0);
+				inFileNum = xopen(argv[i], O_RDONLY);
 				if (fstat(inFileNum, &statBuf) < 0)
 					bb_perror_msg_and_die("%s", argv[i]);
 				time_stamp = statBuf.st_ctime;
diff --git a/archival/unzip.c b/archival/unzip.c
index 709ebf8..1b80aea 100644
--- a/archival/unzip.c
+++ b/archival/unzip.c
@@ -333,7 +333,7 @@
 			overwrite = o_always;
 		case 'y': /* Open file and fall into unzip */
 			unzip_create_leading_dirs(dst_fn);
-			dst_fd = xopen3(dst_fn, O_WRONLY | O_CREAT | O_TRUNC, 0777);
+			dst_fd = xopen(dst_fn, O_WRONLY | O_CREAT | O_TRUNC);
 		case -1: /* Unzip */
 			if (verbosity == v_normal) {
 				printf("  inflating: %s\n", dst_fn);
diff --git a/miscutils/crontab.c b/miscutils/crontab.c
index a8e650c..1acacc6 100644
--- a/miscutils/crontab.c
+++ b/miscutils/crontab.c
@@ -266,7 +266,7 @@
 	exit(0);
 
     bb_default_error_retval = 0;
-    fd = xopen3(file, O_RDONLY, 0);
+    fd = xopen(file, O_RDONLY);
     buf[0] = 0;
     write(filedes[1], buf, 1);
     while ((n = read(fd, buf, sizeof(buf))) > 0) {
diff --git a/miscutils/mt.c b/miscutils/mt.c
index f562a91..f4a3be7 100644
--- a/miscutils/mt.c
+++ b/miscutils/mt.c
@@ -101,7 +101,7 @@
 			break;
 	}
 
-	fd = xopen3(file, mode, 0);
+	fd = xopen(file, mode);
 
 	switch (code->value) {
 		case MTTELL:
diff --git a/miscutils/rx.c b/miscutils/rx.c
index 91606ec..52a76bf 100644
--- a/miscutils/rx.c
+++ b/miscutils/rx.c
@@ -262,7 +262,7 @@
 			bb_show_usage();
 
 	fn = argv[1];
-	ttyfd = xopen3(CURRENT_TTY, O_RDWR, 0);
+	ttyfd = xopen(CURRENT_TTY, O_RDWR);
 	filefd = xopen3(fn, O_RDWR|O_CREAT|O_TRUNC, 0666);
 
 	if (tcgetattr(ttyfd, &tty) < 0)
diff --git a/networking/vconfig.c b/networking/vconfig.c
index efbb5a1..15a6110 100644
--- a/networking/vconfig.c
+++ b/networking/vconfig.c
@@ -118,7 +118,7 @@
 
 	/* Don't bother closing the filedes.  It will be closed on cleanup. */
 	/* Will die if 802.1q is not present */
-	xopen3(conf_file_name, O_RDONLY, 0);
+	xopen(conf_file_name, O_RDONLY);
 
 	memset(&ifr, 0, sizeof(struct vlan_ioctl_args));
 
diff --git a/util-linux/mkfs_minix.c b/util-linux/mkfs_minix.c
index ed9cb45..b154f4a 100644
--- a/util-linux/mkfs_minix.c
+++ b/util-linux/mkfs_minix.c
@@ -292,7 +292,7 @@
 	int fd;
 	long size;
 
-	fd = xopen3(file, O_RDWR, 0);
+	fd = xopen(file, O_RDWR);
 	if (ioctl(fd, BLKGETSIZE, &size) >= 0) {
 		close(fd);
 		return (size * 512);
@@ -805,7 +805,7 @@
 	tmp += dirsize;
 	*(short *) tmp = 2;
 	strcpy(tmp + 2, ".badblocks");
-	DEV = xopen3(device_name, O_RDWR, 0);
+	DEV = xopen(device_name, O_RDWR);
 	if (fstat(DEV, &statbuf) < 0)
 		bb_error_msg_and_die("unable to stat %s", device_name);
 	if (!S_ISBLK(statbuf.st_mode))