Commit 3e992d15 authored by Andres Salomon's avatar Andres Salomon Committed by james toy

In drm_version, actually check the results from function calls so that

we're not potentially passing garbage back to userspace.
Signed-off-by: default avatarAndres Salomon <dilinger@collabora.co.uk>
Cc: Dave Airlie <airlied@linux.ie>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent d17788ec
......@@ -403,15 +403,21 @@ static int drm_version(struct drm_device *dev, void *data,
struct drm_file *file_priv)
{
struct drm_version *version = data;
int err;
version->version_major = dev->driver->major;
version->version_minor = dev->driver->minor;
version->version_patchlevel = dev->driver->patchlevel;
drm_copy_field(version->name, &version->name_len, dev->driver->name);
drm_copy_field(version->date, &version->date_len, dev->driver->date);
drm_copy_field(version->desc, &version->desc_len, dev->driver->desc);
return 0;
err = drm_copy_field(version->name, &version->name_len,
dev->driver->name);
if (!err)
err = drm_copy_field(version->date, &version->date_len,
dev->driver->date);
if (!err)
err = drm_copy_field(version->desc, &version->desc_len,
dev->driver->desc);
return err;
}
/**
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment