OSDN Git Service

ver_linux: Do not check for ver_linux pattern in version function
authorAlexander Kapshuk <alexander.kapshuk@gmail.com>
Thu, 31 May 2018 19:22:47 +0000 (22:22 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 7 Jul 2018 15:44:52 +0000 (17:44 +0200)
Checking whether output of commands matches the ver_linux pattern in
the version function is original shell implementation legacy code. When
the original implementation failed to locate a particular utility,
it generated error output along the lines of:

ver_linux:line number: command not found.

The awk implementation, does not contain the name of the script within the
body of the error message returned by the subshell when a given utility
fails to be located. The error message returned is along the lines of:

sh: name of utility: command not found

Safeguarding against the ver_linux pattern being found in the output
being parsed may thus be safely omitted.

Signed-off-by: Alexander Kapshuk <alexander.kapshuk@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
scripts/ver_linux

index e1dc041..a6c728d 100755 (executable)
@@ -70,7 +70,7 @@ BEGIN {
 function version(cmd,    ver) {
        cmd = cmd " 2>&1"
        while (cmd | getline > 0) {
-               if (!/ver_linux/ && match($0, /[0-9]+([.]?[0-9]+)+/)) {
+               if (match($0, /[0-9]+([.]?[0-9]+)+/)) {
                        ver = substr($0, RSTART, RLENGTH)
                        break
                }