summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorschwarze <schwarze@openbsd.org>2014-05-07 12:37:04 +0000
committerschwarze <schwarze@openbsd.org>2014-05-07 12:37:04 +0000
commit397f03378fc76a3eb60bfbc4f7c4228abfad225a (patch)
treeca29fe00bd72506593a77f4d54b7f71cdef77099
parentfactor out ikev2_ike_auth() (state machine; used multiple times via callbacks) (diff)
downloadwireguard-openbsd-397f03378fc76a3eb60bfbc4f7c4228abfad225a.tar.xz
wireguard-openbsd-397f03378fc76a3eb60bfbc4f7c4228abfad225a.zip
Remove the undocumented and ineffective -F option (force hard link
to directory). This doesn't reduce functionality but merely results in a better error message when trying to use the option, and it simplifies the code. The -f option first appeared in AT&T Version 7 UNIX (1979), and Keith Bostic renamed it to -F for 4.3BSD-Reno in 1990 because it conflicted with System V and POSIX. Meanwhile, NetBSD, FreeBSD, and DragonFly removed it, too. From Tristan Le Guern <tleguern at bouledef dot eu>. OK guenther@ krw@
-rw-r--r--bin/ln/ln.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/bin/ln/ln.c b/bin/ln/ln.c
index c5c40e7c409..5a6dd9b1ba5 100644
--- a/bin/ln/ln.c
+++ b/bin/ln/ln.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ln.c,v 1.19 2013/03/12 06:00:05 guenther Exp $ */
+/* $OpenBSD: ln.c,v 1.20 2014/05/07 12:37:04 schwarze Exp $ */
/* $NetBSD: ln.c,v 1.10 1995/03/21 09:06:10 cgd Exp $ */
/*
@@ -42,7 +42,6 @@
#include <string.h>
#include <unistd.h>
-int dirflag; /* Undocumented directory flag. */
int fflag; /* Unlink existing files. */
int hflag; /* Check new name for symlink first. */
int Pflag; /* Hard link to symlink. */
@@ -58,11 +57,8 @@ main(int argc, char *argv[])
int ch, exitval;
char *sourcedir;
- while ((ch = getopt(argc, argv, "FfhLnPs")) != -1)
+ while ((ch = getopt(argc, argv, "fhLnPs")) != -1)
switch (ch) {
- case 'F':
- dirflag = 1; /* XXX: deliberately undocumented. */
- break;
case 'f':
fflag = 1;
break;
@@ -126,8 +122,8 @@ linkit(char *target, char *source, int isdir)
warn("%s", target);
return (1);
}
- /* Only symbolic links to directories, unless -F option used. */
- if (!dirflag && S_ISDIR(sb.st_mode)) {
+ /* Only symbolic links to directories. */
+ if (S_ISDIR(sb.st_mode)) {
errno = EISDIR;
warn("%s", target);
return (1);