Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1297469

[PATCH v2 3/3] device property: avoid allocations of 0 length

From Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Newsgroups linux.kernel
Subject [PATCH v2 3/3] device property: avoid allocations of 0 length
Date 2015-12-23 14:40 +0100
Message-ID <qIRO2-1P2-15@gated-at.bofh.it> (permalink)
References <qIRO1-1P2-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Arrays can not have zero elements by definition of the unified device
properties. If such property comes from outside we should not allow it to pass.
Otherwise memory allocation on 0 length will return non-NULL value, which we
currently don't check.

Prevent memory allocations of 0 length.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 drivers/base/property.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/base/property.c b/drivers/base/property.c
index 6c04d18..7e2061b 100644
--- a/drivers/base/property.c
+++ b/drivers/base/property.c
@@ -653,6 +653,9 @@ int fwnode_property_match_string(struct fwnode_handle *fwnode,
 	if (nval < 0)
 		return nval;
 
+	if (nval == 0)
+		return -ENODATA;
+
 	values = kcalloc(nval, sizeof(*values), GFP_KERNEL);
 	if (!values)
 		return -ENOMEM;
@@ -718,6 +721,9 @@ static int pset_copy_entry(struct property_entry *dst,
 		return -ENOMEM;
 
 	if (src->is_array) {
+		if (!src->length)
+			return -ENODATA;
+
 		if (src->is_string) {
 			nval = src->length / sizeof(const char *);
 			dst->pointer.str = kcalloc(nval, sizeof(const char *),
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v2 0/3] device property: post merge fixes Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2015-12-23 14:40 +0100
  [PATCH v2 1/3] device property: add spaces to PROPERTY_ENTRY_STRING macro Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2015-12-23 14:40 +0100
    Re: [PATCH v2 1/3] device property: add spaces to PROPERTY_ENTRY_STRING macro "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2015-12-28 03:50 +0100
      Re: [PATCH v2 1/3] device property: add spaces to  PROPERTY_ENTRY_STRING macro Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2015-12-28 12:30 +0100
        Re: [PATCH v2 1/3] device property: add spaces to PROPERTY_ENTRY_STRING macro "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2015-12-30 02:20 +0100
          Re: [PATCH v2 1/3] device property: add spaces to  PROPERTY_ENTRY_STRING macro Andrew Morton <akpm@linux-foundation.org> - 2015-12-30 02:30 +0100
            Re: [PATCH v2 1/3] device property: add spaces to PROPERTY_ENTRY_STRING macro "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2015-12-30 02:40 +0100
              Re: [PATCH v2 1/3] device property: add spaces to PROPERTY_ENTRY_STRING  macro Andy Shevchenko <andy.shevchenko@gmail.com> - 2015-12-30 02:50 +0100
              Re: [PATCH v2 1/3] device property: add spaces to  PROPERTY_ENTRY_STRING macro Andrew Morton <akpm@linux-foundation.org> - 2015-12-30 02:50 +0100
                Re: [PATCH v2 1/3] device property: add spaces to PROPERTY_ENTRY_STRING macro "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-01-01 01:30 +0100
          Re: [PATCH v2 1/3] device property: add spaces to PROPERTY_ENTRY_STRING  macro Andy Shevchenko <andy.shevchenko@gmail.com> - 2015-12-30 02:40 +0100
  [PATCH v2 3/3] device property: avoid allocations of 0 length Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2015-12-23 14:40 +0100
  [PATCH v2 2/3] device property: the secondary fwnode needs to depend on the primary Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2015-12-23 14:40 +0100
    Re: [PATCH v2 2/3] device property: the secondary fwnode needs to  depend on the primary Heikki Krogerus <heikki.krogerus@linux.intel.com> - 2015-12-29 09:50 +0100
      Re: [PATCH v2 2/3] device property: the secondary fwnode needs to  depend on the primary Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2015-12-29 12:00 +0100

csiph-web