diff options
author | Thomas Hellstrom <thomas-at-tungstengraphics-dot-com> | 2006-12-19 23:23:17 +0100 |
---|---|---|
committer | Thomas Hellstrom <thomas-at-tungstengraphics-dot-com> | 2006-12-19 23:23:17 +0100 |
commit | 72b5d1507a7e9c18fc0141c13819ea01c0813924 (patch) | |
tree | 71b23b8199d1fb3ead995746171ada6d2663be28 | |
parent | 81251bf78f06dc26e26c3edb09639850371fe540 (diff) |
Security fix. Zero pages before they are handed to user space.
Shared memory areas were not cleared when they are allocated and
handed to user space. Sensitive information may leak.
-rw-r--r-- | linux-core/drm_bufs.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/linux-core/drm_bufs.c b/linux-core/drm_bufs.c index d6ebc8d1..ef110c28 100644 --- a/linux-core/drm_bufs.c +++ b/linux-core/drm_bufs.c @@ -202,6 +202,7 @@ static int drm_addmap_core(drm_device_t * dev, unsigned int offset, drm_free(map, sizeof(*map), DRM_MEM_MAPS); return -ENOMEM; } + memset(map->handle, 0, map->size); map->offset = (unsigned long)map->handle; if (map->flags & _DRM_CONTAINS_LOCK) { /* Prevent a 2nd X Server from creating a 2nd lock */ |