From 9a715b69413161d59d34a789f702ed228bcf58ce Mon Sep 17 00:00:00 2001 From: "Todd C. Miller" Date: Mon, 2 Oct 2023 10:31:55 -0600 Subject: [PATCH] Fix compatibility with older versions of (new) awk. Do not rely on awk supporting "-f -" to read the program from stdin. Avoid using POSIX character classes in regular expressions. --- plugins/sudoers/mkdefaults | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plugins/sudoers/mkdefaults b/plugins/sudoers/mkdefaults index 77c7df936..89ddfb94e 100755 --- a/plugins/sudoers/mkdefaults +++ b/plugins/sudoers/mkdefaults @@ -25,7 +25,7 @@ if [ $# -eq 0 ]; then set -- def_data.in fi -${AWK-awk} -f - -v outfile=$OUTFILE "$@" <<'EOF' +${AWK-awk} -v outfile=$OUTFILE ' BEGIN { tuple_values[0] = "never" tuple_keys["never"] = 0 @@ -49,8 +49,8 @@ BEGIN { } { sub(/#.*/, "", $0) - if (/^[[:blank:]]*$/) next - if (/^[[:alpha:]]/) { + if (/^[ \t]*$/) next + if (/^[a-zA-Z]/) { # Store previous record and begin new one if (var) records[count++] = sprintf("%s\n%s\n%s\n%s\n%s\n", var, type, desc, values, callback) @@ -160,4 +160,4 @@ function print_record(rec, recnum) { } print " }, {" > cfile } -EOF +' "$@"