]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
firmware_class: make sure fw requests contain a name
authorKees Cook <keescook@chromium.org>
Thu, 18 Sep 2014 18:25:37 +0000 (11:25 -0700)
committerJiri Slaby <jslaby@suse.cz>
Fri, 31 Oct 2014 14:11:13 +0000 (15:11 +0100)
commit 471b095dfe0d693a8d624cbc716d1ee4d74eb437 upstream.

An empty firmware request name will trigger warnings when building
device names. Make sure this is caught earlier and rejected.

The warning was visible via the test_firmware.ko module interface:

echo -ne "\x00" > /sys/devices/virtual/misc/test_firmware/trigger_request

Reported-by: Sasha Levin <sasha.levin@oracle.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Tested-by: Sasha Levin <sasha.levin@oracle.com>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
drivers/base/firmware_class.c

index 701212ba38b7fc8fb1568e44a5d0c789a4ed73fa..ec85b816fd5ac9b88ab3d61a806c0473bb890d02 100644 (file)
@@ -1063,6 +1063,9 @@ _request_firmware(const struct firmware **firmware_p, const char *name,
        if (!firmware_p)
                return -EINVAL;
 
+       if (!name || name[0] == '\0')
+               return -EINVAL;
+
        ret = _request_firmware_prepare(&fw, name, device);
        if (ret <= 0) /* error or already assigned */
                goto out;