]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
drm: Check for invalid cursor flags
authorJakob Bornecrantz <jakob@vmware.com>
Thu, 16 Aug 2012 08:29:03 +0000 (08:29 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 2 Oct 2012 17:30:23 +0000 (10:30 -0700)
commit 7c4eaca4162d0b5ad4fb39f974d7ffd71b9daa09 upstream.

Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/drm_crtc.c
include/drm/drm_mode.h

index c79870a75c2ffa426125d17bba4fc736ec3233e9..7e479a42af0b636e3728993bd40ae02b7a49db73 100644 (file)
@@ -1981,7 +1981,7 @@ int drm_mode_cursor_ioctl(struct drm_device *dev,
        if (!drm_core_check_feature(dev, DRIVER_MODESET))
                return -EINVAL;
 
-       if (!req->flags)
+       if (!req->flags || (~DRM_MODE_CURSOR_FLAGS & req->flags))
                return -EINVAL;
 
        mutex_lock(&dev->mode_config.mutex);
index 4a0aae38e1602481ad1f7c0f090e7d4b4532ba6f..9242310b47cdd7dacafe79ec37fc76a25735685f 100644 (file)
@@ -343,8 +343,9 @@ struct drm_mode_mode_cmd {
        struct drm_mode_modeinfo mode;
 };
 
-#define DRM_MODE_CURSOR_BO     (1<<0)
-#define DRM_MODE_CURSOR_MOVE   (1<<1)
+#define DRM_MODE_CURSOR_BO     0x01
+#define DRM_MODE_CURSOR_MOVE   0x02
+#define DRM_MODE_CURSOR_FLAGS  0x03
 
 /*
  * depending on the value in flags different members are used.