cpupower: Fix segfault due to incorrect getopt_long arugments
authorJosh Boyer <jwboyer@redhat.com>
Fri, 11 Oct 2013 12:45:51 +0000 (08:45 -0400)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 17 Dec 2013 19:29:30 +0000 (11:29 -0800)
commitf447ef4a56dee4b68a91460bcdfe06b5011085f2
tree01b54396e34ee5896b677f1907a4e357efd72768
parent319e2e3f63c348a9b66db4667efa73178e18b17d
cpupower: Fix segfault due to incorrect getopt_long arugments

If a user calls 'cpupower set --perf-bias 15', the process will end with
a SIGSEGV in libc because cpupower-set passes a NULL optarg to the atoi
call.  This is because the getopt_long structure currently has all of
the options as having an optional_argument when they really have a
required argument.  We change the structure to use required_argument to
match the short options and it resolves the issue.

This fixes https://bugzilla.redhat.com/show_bug.cgi?id=1000439

Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Cc: Thomas Renninger <trenn@suse.de>
Cc: stable@vger.kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
tools/power/cpupower/utils/cpupower-set.c