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);
|