diff options
author | tjr <tjr@FreeBSD.org> | 2002-05-30 00:57:38 +0000 |
---|---|---|
committer | tjr <tjr@FreeBSD.org> | 2002-05-30 00:57:38 +0000 |
commit | a9256c24d51f9d7af14f2ebde394d7167865060a (patch) | |
tree | 0369f377447f40fe7ef7c2b8f604c82712f821f7 /bin/ln | |
parent | f0cf811c24dd5dc9af410ad7facfd3d0c7280c6a (diff) | |
download | FreeBSD-src-a9256c24d51f9d7af14f2ebde394d7167865060a.zip FreeBSD-src-a9256c24d51f9d7af14f2ebde394d7167865060a.tar.gz |
Reject options, handle "--" end-of-options marker in link(1).
Diffstat (limited to 'bin/ln')
-rw-r--r-- | bin/ln/ln.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/bin/ln/ln.c b/bin/ln/ln.c index edeba76..ccae31d 100644 --- a/bin/ln/ln.c +++ b/bin/ln/ln.c @@ -85,11 +85,14 @@ main(int argc, char *argv[]) else ++p; if (strcmp(p, "link") == 0) { - if (argc == 3) { - linkf = link; - exit(linkit(argv[1], argv[2], 0)); - } else + while (getopt(argc, argv, "") != -1) usage(); + argc -= optind; + argv += optind; + if (argc != 2) + usage(); + linkf = link; + exit(linkit(argv[0], argv[1], 0)); } while ((ch = getopt(argc, argv, "fhinsv")) != -1) |