Index: gbde.c =================================================================== RCS file: /private/FreeBSD/src/sbin/gbde/gbde.c,v retrieving revision 1.25 diff -u -p -r1.25 gbde.c --- gbde.c 10 Sep 2004 12:16:54 -0000 1.25 +++ gbde.c 3 Feb 2005 10:42:12 -0000 @@ -799,13 +799,13 @@ main(int argc, char **argv) } if (doopen) { - dfd = open(dest, O_RDWR | O_CREAT, 0644); - if (dfd < 0) { + dfd = open(dest, O_RDWR); + if (dfd < 0 && strncmp(dest, _PATH_DEV, strlen(_PATH_DEV))) { if (snprintf(buf, sizeof(buf), "%s%s", _PATH_DEV, dest) >= (ssize_t)sizeof(buf)) errno = ENAMETOOLONG; else - dfd = open(buf, O_RDWR | O_CREAT, 0644); + dfd = open(buf, O_RDWR); } if (dfd < 0) err(1, "%s", dest);