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
This commit is contained in:
Kyle Evans 2025-04-20 13:08:09 -05:00
parent 1b3748977f
commit d8fd551438
2 changed files with 2 additions and 2 deletions

View file

@ -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;

View file

@ -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");