git: d8fd55143870 - main - bintrans: disable argument permutation for qp and base64
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 20 Apr 2025 18:08:24 UTC
The branch main has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=d8fd551438706b3766da23e72ef077945ba43cd3 commit d8fd551438706b3766da23e72ef077945ba43cd3 Author: Kyle Evans <kevans@FreeBSD.org> AuthorDate: 2025-04-20 18:08:09 +0000 Commit: Kyle Evans <kevans@FreeBSD.org> CommitDate: 2025-04-20 18:08:18 +0000 bintrans: disable argument permutation for qp and base64 Err on the side of caution and revert to the BSD-style getopt(3) behavior for argument processing, as it's harder to go back and it's not clear that this was strictly intentional. This is the difference between allowing `base64 /COPYRIGHT -w 80` and forcing `base64 -w 80 /COPYRIGHT`. Reviewed by: emaste, pstef MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D48483 --- usr.bin/bintrans/bintrans.c | 2 +- usr.bin/bintrans/qp.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/usr.bin/bintrans/bintrans.c b/usr.bin/bintrans/bintrans.c index c4b443a9009b..e5e9ac17d524 100644 --- a/usr.bin/bintrans/bintrans.c +++ b/usr.bin/bintrans/bintrans.c @@ -139,7 +139,7 @@ base64_encode_or_decode(int argc, char *argv[]) {NULL, no_argument, NULL, 0} }; - while ((ch = getopt_long(argc, argv, "diw:", opts, NULL)) != -1) + while ((ch = getopt_long(argc, argv, "+diw:", opts, NULL)) != -1) switch (ch) { case 'd': decode = true; diff --git a/usr.bin/bintrans/qp.c b/usr.bin/bintrans/qp.c index 862db437f4e0..a989b17e7162 100644 --- a/usr.bin/bintrans/qp.c +++ b/usr.bin/bintrans/qp.c @@ -181,7 +181,7 @@ main_quotedprintable(int argc, char *argv[]) {NULL, no_argument, NULL, 0} }; - while ((ch = getopt_long(argc, argv, "do:ru", opts, NULL)) != -1) { + while ((ch = getopt_long(argc, argv, "+do:ru", opts, NULL)) != -1) { switch(ch) { case 'o': fpo = fopen(optarg, "w");