Blame SOURCES/ElectricFence-2.0.5-longjmp.patch

15f68b
--- ElectricFence-2.0.5/eftest.c.ewt	Tue Jun  2 09:25:10 1998
15f68b
+++ ElectricFence-2.0.5/eftest.c	Tue Jun  2 09:24:58 1998
15f68b
@@ -24,7 +24,7 @@
15f68b
 extern int	EF_PROTECT_BELOW;
15f68b
 extern int	EF_ALIGNMENT;
15f68b
 
15f68b
-static jmp_buf	env;
15f68b
+static sigjmp_buf	env;
15f68b
 
15f68b
 /*
15f68b
  * There is still too little standardization of the arguments and return
15f68b
@@ -40,13 +40,13 @@
15f68b
 )
15f68b
  {
15f68b
 	signal(PAGE_PROTECTION_VIOLATED_SIGNAL, SIG_DFL);
15f68b
-	longjmp(env, 1);
15f68b
+	siglongjmp(env, 1);
15f68b
 }
15f68b
 
15f68b
 static int
15f68b
 gotSegmentationFault(int (*test)(void))
15f68b
 {
15f68b
-	if ( setjmp(env) == 0 ) {
15f68b
+	if ( sigsetjmp(env, 1) == 0 ) {
15f68b
 		int			status;
15f68b
 
15f68b
 		signal(PAGE_PROTECTION_VIOLATED_SIGNAL