help-smalltalk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Help-smalltalk] patch to sigsev


From: Frederik
Subject: [Help-smalltalk] patch to sigsev
Date: Tue, 6 Feb 2007 22:57:13 +0100

Hi,

Mandriva's gnu smalltalk package, includes the following old patch. I
suppose it is related to some problems caused when using the PaX
kernel patch
( http://pax.grsecurity.net/ ). I'm currently in the process of
updating the gnu small talk package in Mandriva. Do you think this
patch is still useful and correct? If so, is there any interest to add
it upstream?



--- smalltalk-2.1.8/sigsegv/src/heur-ac.h.orig  Fri Jul 16 11:54:44 2004
+++ smalltalk-2.1.8/sigsegv/src/heur-ac.h       Fri Jul 16 12:10:58 2004
@@ -32,8 +32,11 @@
      stack_top = vma.end - 1;
      return 0;
    }
-  else
-    return -1;
+  else {
+    extern void *__libc_stack_end;
+    stack_top = __libc_stack_end;
+    return 0;
+  }
}

#define IS_STACK_OVERFLOW \
--- smalltalk-2.1.8/sigsegv/src/stackvma-linux.c.orig   Fri Dec 19 17:01:08 2003
+++ smalltalk-2.1.8/sigsegv/src/stackvma-linux.c        Fri Jul 16 12:03:31 2004
@@ -42,7 +42,8 @@
        break;
      while (c = getc (fp), c != EOF && c != '\n')
        continue;
-      if (address >= start && address <= end - 1)
+      if (address >= start && address <= end - 1 &&
+         (start != end /* ignore maps hidden by PaX */))
        {
          vma->start = start;
          vma->end = end;


--
Frederik




reply via email to

[Prev in Thread] Current Thread [Next in Thread]