Commit 913416b7 authored by Alan Coopersmith's avatar Alan Coopersmith Committed by Keith Packard

Solaris: delete undocumented, unuseful -protect0 flag

Solaris already makes the page at address 0 inaccessible by default to
catch NULL pointer bugs, we don't need a double secret undocumented flag
to try to make our own hacky attempt at it.

As a bonus, deleting this code removes gcc warning of:

sun_init.c: In function 'xf86OpenConsole':
sun_init.c:103:17: warning: declaration of 'fd' shadows a previous local [-Wshadow]
             int fd = -1;
                 ^
sun_init.c:89:9: warning: shadowed declaration is here [-Wshadow]
     int fd;
         ^
Signed-off-by: Alan Coopersmith's avatarAlan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Mark Kettenis's avatarMark Kettenis <kettenis@openbsd.org>
Signed-off-by: Keith Packard's avatarKeith Packard <keithp@keithp.com>
parent 7b784df5
......@@ -46,7 +46,6 @@
#define SOL_CONSOLE_DEV "/dev/console"
static Bool KeepTty = FALSE;
static Bool Protect0 = FALSE;
static Bool UseConsole = FALSE;
#ifdef HAS_USL_VTS
......@@ -97,27 +96,6 @@ xf86OpenConsole(void)
if (geteuid() != 0)
FatalError("xf86OpenConsole: Server must be suid root\n");
/* Protect page 0 to help find NULL dereferencing */
/* mprotect() doesn't seem to work */
if (Protect0) {
int fd = -1;
if ((fd = open("/dev/zero", O_RDONLY, 0)) < 0) {
xf86Msg(X_WARNING,
"xf86OpenConsole: cannot open /dev/zero (%s)\n",
strerror(errno));
}
else {
if (mmap(0, 0x1000, PROT_NONE,
MAP_FIXED | MAP_SHARED, fd, 0) == MAP_FAILED)
xf86Msg(X_WARNING,
"xf86OpenConsole: failed to protect page 0 (%s)\n",
strerror(errno));
close(fd);
}
}
#ifdef HAS_USL_VTS
/*
......@@ -370,15 +348,6 @@ xf86ProcessArgument(int argc, char **argv, int i)
return 1;
}
/*
* Undocumented flag to protect page 0 from read/write to help catch NULL
* pointer dereferences. This is purely a debugging flag.
*/
if (!strcmp(argv[i], "-protect0")) {
Protect0 = TRUE;
return 1;
}
/*
* Use /dev/console as the console device.
*/
......
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