SOURCES (AC-branch): glibc-pax_dl-execstack.patch - updated
kosmo
kosmo at pld-linux.org
Fri Sep 23 13:35:21 CEST 2005
Author: kosmo Date: Fri Sep 23 11:35:21 2005 GMT
Module: SOURCES Tag: AC-branch
---- Log message:
- updated
---- Files affected:
SOURCES:
glibc-pax_dl-execstack.patch (1.1 -> 1.1.4.1)
---- Diffs:
================================================================
Index: SOURCES/glibc-pax_dl-execstack.patch
diff -u SOURCES/glibc-pax_dl-execstack.patch:1.1 SOURCES/glibc-pax_dl-execstack.patch:1.1.4.1
--- SOURCES/glibc-pax_dl-execstack.patch:1.1 Thu Mar 18 16:40:28 2004
+++ SOURCES/glibc-pax_dl-execstack.patch Fri Sep 23 13:35:15 2005
@@ -1,70 +1,39 @@
---- glibc-2.3.3/sysdeps/unix/sysv/linux/dl-execstack.c.orig 2003-12-05 01:26:05.000000000 +0100
-+++ glibc-2.3.3/sysdeps/unix/sysv/linux/dl-execstack.c 2004-03-18 16:09:49.200234840 +0100
-@@ -47,11 +47,17 @@
- PROT_READ|PROT_WRITE|PROT_EXEC|PROT_GROWSDOWN) == 0)
- goto return_success;
- # if __ASSUME_PROT_GROWSUPDOWN == 0
-- if (errno == EINVAL)
-+ if (errno == EINVAL) {
- no_growsdown = true;
-- else
-+ } else {
-+# endif
-+ if (errno == EACCES) /* PAX is enabled */
-+ return 0;
-+ else
-+ return errno;
-+# if __ASSUME_PROT_GROWSUPDOWN == 0
-+ }
- # endif
+diff -urN glibc-2.3.5.orig/sysdeps/unix/sysv/linux/dl-execstack.c glibc-2.3.5/sysdeps/unix/sysv/linux/dl-execstack.c
+--- glibc-2.3.5.orig/sysdeps/unix/sysv/linux/dl-execstack.c 2005-09-23 13:07:35.000000000 +0200
++++ glibc-2.3.5/sysdeps/unix/sysv/linux/dl-execstack.c 2005-09-23 13:31:45.000000000 +0200
+@@ -60,7 +60,10 @@
+ no_growsupdown = true;
+ else
+ # endif
- return errno;
++ if (errno == EACCESS) /* PaX */
++ return 0;
++ else
++ return errno;
}
- # endif
+ #endif
-@@ -73,8 +79,11 @@
- page -= size;
- else
+@@ -86,7 +89,10 @@
{
-- if (errno != ENOMEM) /* Unexpected failure mode. */
-+ if (errno == EACCES) { /* PAX is enabled */
-+ return 0;
-+ } else if (errno != ENOMEM) { /* Unexpected failure mode. */
- return errno;
-+ }
+ /* Unexpected failure mode. */
+ if (errno != ENOMEM && errno != EFAULT)
+- return errno;
++ if (errno == EACCESS) /* PaX */
++ return 0;
++ else
++ return errno;
- if (size == GL(dl_pagesize))
+ if (size == GLRO(dl_pagesize))
/* We just tried to mprotect the top hole page and failed.
-@@ -105,11 +114,17 @@
- PROT_READ|PROT_WRITE|PROT_EXEC|PROT_GROWSUP) == 0)
- goto return_success;
- # if __ASSUME_PROT_GROWSUPDOWN == 0
-- if (errno == EINVAL)
-+ if (errno == EINVAL) {
- no_growsup = true;
-- else
-+ } else {
-+# endif
-+ if (errno == EACCES) /* PAX is enabled */
-+ return 0;
-+ else
-+ return errno;
-+# if __ASSUME_PROT_GROWSUPDOWN == 0
-+ }
- # endif
-- return errno;
- }
- # endif
-
-@@ -130,8 +145,11 @@
- page += size;
- else
+@@ -110,7 +116,10 @@
{
-- if (errno != ENOMEM) /* Unexpected failure mode. */
-+ if (errno == EACCES) { /* PAX is enabled */
-+ return 0;
-+ } else if (errno != ENOMEM) { /* Unexpected failure mode. */
- return errno;
-+ }
+ /* Unexpected failure mode. */
+ if (errno != ENOMEM && errno != EFAULT)
+- return errno;
++ if (errno == EACCESS) /* PaX */
++ return 0;
++ else
++ return errno;
- if (size == GL(dl_pagesize))
+ if (size == GLRO(dl_pagesize))
/* We just tried to mprotect the lowest hole page and failed.
================================================================
---- CVS-web:
http://cvs.pld-linux.org/SOURCES/glibc-pax_dl-execstack.patch?r1=1.1&r2=1.1.4.1&f=u
More information about the pld-cvs-commit
mailing list