From a1dc62b0c8efe79f27d048d03daac4764cb7c46c Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sat, 13 Sep 2014 17:28:19 -0700 Subject: [PATCH] greybus: core: verify major/minor number of greybus protocol --- drivers/staging/greybus/core.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/drivers/staging/greybus/core.c b/drivers/staging/greybus/core.c index 1d9efd4..bad40ba 100644 --- a/drivers/staging/greybus/core.c +++ b/drivers/staging/greybus/core.c @@ -385,7 +385,15 @@ struct greybus_device *greybus_new_module(struct device *parent, version_major = manifest->header.version_major; version_minor = manifest->header.version_minor; - // FIXME - check version major/minor here! + /* Validate major/minor number */ + if ((version_major != GREYBUS_VERSION_MAJOR) || + (version_minor != GREYBUS_VERSION_MINOR)) { + dev_err(parent, + "Invalid greybus versions, expected %d.%d, got %d.%d\n", + GREYBUS_VERSION_MAJOR, GREYBUS_VERSION_MINOR, + version_major, version_minor); + goto error; + } size -= sizeof(manifest->header); data += sizeof(manifest->header); -- 2.7.4