aboutsummaryrefslogtreecommitdiff
path: root/crypto/engine/eng_padlock.c
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/engine/eng_padlock.c')
-rw-r--r--crypto/engine/eng_padlock.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/crypto/engine/eng_padlock.c b/crypto/engine/eng_padlock.c
index e1d66eac58ad..1ba9d85db457 100644
--- a/crypto/engine/eng_padlock.c
+++ b/crypto/engine/eng_padlock.c
@@ -126,6 +126,9 @@ void ENGINE_load_padlock (void)
#ifdef _MSC_VER
# include <malloc.h>
# define alloca _alloca
+#elif defined(NETWARE_CLIB) && defined(__GNUC__)
+ void *alloca(size_t);
+# define alloca(s) __builtin_alloca(s)
#else
# include <stdlib.h>
#endif
@@ -436,7 +439,7 @@ static inline void *name(size_t cnt, \
rep_xcrypt "\n" \
" popl %%ebx" \
: "=a"(iv), "=c"(cnt), "=D"(out), "=S"(inp) \
- : "0"(cdata), "1"(cnt), "2"(out), "3"(inp), "m"(*cdata) \
+ : "0"(cdata), "1"(cnt), "2"(out), "3"(inp) \
: "edx", "cc", "memory"); \
return iv; \
}