Blame SOURCES/openssl-0.9.8b-aliasing-bug.patch

c4366c
c4366c
This patch fixes a violation of the C aliasing rules that can cause
c4366c
miscompilation with some compiler versions.
c4366c
c4366c
--- openssl-0.9.8b/crypto/dso/dso_dlfcn.c.orig	2006-10-30 18:21:35.000000000 +0100
c4366c
+++ openssl-0.9.8b/crypto/dso/dso_dlfcn.c	2006-10-30 18:21:37.000000000 +0100
c4366c
@@ -237,7 +237,7 @@ static void *dlfcn_bind_var(DSO *dso, co
c4366c
 static DSO_FUNC_TYPE dlfcn_bind_func(DSO *dso, const char *symname)
c4366c
 	{
c4366c
 	void *ptr;
c4366c
-	DSO_FUNC_TYPE sym, *tsym = &sy;;
c4366c
+	DSO_FUNC_TYPE sym;
c4366c
 
c4366c
 	if((dso == NULL) || (symname == NULL))
c4366c
 		{
c4366c
@@ -255,7 +255,7 @@ static DSO_FUNC_TYPE dlfcn_bind_func(DSO
c4366c
 		DSOerr(DSO_F_DLFCN_BIND_FUNC,DSO_R_NULL_HANDLE);
c4366c
 		return(NULL);
c4366c
 		}
c4366c
-	*(void **)(tsym) = dlsym(ptr, symname);
c4366c
+	sym = dlsym(ptr, symname);
c4366c
 	if(sym == NULL)
c4366c
 		{
c4366c
 		DSOerr(DSO_F_DLFCN_BIND_FUNC,DSO_R_SYM_FAILURE);