aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/base/firmware_class.c
diff options
context:
space:
mode:
authorKees Cook <keescook@chromium.org>2014-09-18 14:25:37 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-09-24 02:26:58 -0400
commit471b095dfe0d693a8d624cbc716d1ee4d74eb437 (patch)
tree567180943a6b52e6029a30b6799520a341a990bb /drivers/base/firmware_class.c
parent41575335ed026339e07f265ede3a21e995bee8e6 (diff)
firmware_class: make sure fw requests contain a name
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> Cc: stable@vger.kernel.org Tested-by: Sasha Levin <sasha.levin@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/base/firmware_class.c')
-rw-r--r--drivers/base/firmware_class.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
index bf424305f3dc..3d785ebb48d3 100644
--- a/drivers/base/firmware_class.c
+++ b/drivers/base/firmware_class.c
@@ -1105,6 +1105,9 @@ _request_firmware(const struct firmware **firmware_p, const char *name,
1105 if (!firmware_p) 1105 if (!firmware_p)
1106 return -EINVAL; 1106 return -EINVAL;
1107 1107
1108 if (!name || name[0] == '\0')
1109 return -EINVAL;
1110
1108 ret = _request_firmware_prepare(&fw, name, device); 1111 ret = _request_firmware_prepare(&fw, name, device);
1109 if (ret <= 0) /* error or already assigned */ 1112 if (ret <= 0) /* error or already assigned */
1110 goto out; 1113 goto out;