On Wed, 6 Jul 2005, Tom Lane wrote:

> Hm, so it seems that libssl or libcrypto isn't getting loaded in
> properly.  What does ldd (or local equivalent) say about pgcrypto.so's
> dependencies?  Are these libraries properly mentioned on the command
> line when pgcrypto.so is linked?
> 

Actually looks like a compile time problem:

gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -fno-strict-aliasing -g 
-fpic -DPIC  -DRAND_OPENSSL -I. -I../../src/include -I/usr/pkg/include  -c 
-o openssl.o openssl.c
openssl.c: In function `ossl_des3_init':
openssl.c:403: warning: implicit declaration of function `DES_set_key'
openssl.c: In function `ossl_des3_ecb_encrypt':
openssl.c:426: warning: implicit declaration of function 
`DES_ecb3_encrypt'
openssl.c: In function `ossl_des3_cbc_encrypt':
openssl.c:451: warning: implicit declaration of function 
`DES_ede3_cbc_encrypt'

<openssl/des.h> has entries for des_set_key (and lowercase versions of
others), but not DES_set_key.  Adjusting the code to use the lowercase
versions results in compile warnings, but the regression tests pass
(except for rijndael which fails with 'ERROR:  Cannot use "aes": No such
cipher algorithm'.  I've got OpenSSL 0.9.6g 9 Aug 2002, is that just too
old?

Kris Jurka

gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -fno-strict-aliasing 
-g -fpic -DPIC  -DRAND_OPENSSL -I. -I../../src/include -I/usr/pkg/include 
 -c -o openssl.o openssl.c
openssl.c: In function `ossl_des3_init':
openssl.c:403: warning: passing arg 2 of `des_set_key' from incompatible 
pointer type
openssl.c:404: warning: passing arg 2 of `des_set_key' from incompatible 
pointer type
openssl.c:405: warning: passing arg 2 of `des_set_key' from incompatible 
pointer type
openssl.c: In function `ossl_des3_ecb_encrypt':
openssl.c:427: warning: passing arg 1 of `des_ecb3_encrypt' from 
incompatible pointer type
openssl.c:427: warning: passing arg 2 of `des_ecb3_encrypt' from 
incompatible pointer type
openssl.c:427: warning: passing arg 3 of `des_ecb3_encrypt' from 
incompatible pointer type
openssl.c:427: warning: passing arg 4 of `des_ecb3_encrypt' from 
incompatible pointer type
openssl.c:427: warning: passing arg 5 of `des_ecb3_encrypt' from 
incompatible pointer type
openssl.c: In function `ossl_des3_ecb_decrypt':
openssl.c:441: warning: passing arg 1 of `des_ecb3_encrypt' from 
incompatible pointer type
openssl.c:441: warning: passing arg 2 of `des_ecb3_encrypt' from 
incompatible pointer type
openssl.c:441: warning: passing arg 3 of `des_ecb3_encrypt' from 
incompatible pointer type
openssl.c:441: warning: passing arg 4 of `des_ecb3_encrypt' from 
incompatible pointer type
openssl.c:441: warning: passing arg 5 of `des_ecb3_encrypt' from 
incompatible pointer type
openssl.c: In function `ossl_des3_cbc_encrypt':
openssl.c:453: warning: passing arg 4 of `des_ede3_cbc_encrypt' from 
incompatible pointer type
openssl.c:453: warning: passing arg 5 of `des_ede3_cbc_encrypt' from 
incompatible pointer type
openssl.c:453: warning: passing arg 6 of `des_ede3_cbc_encrypt' from 
incompatible pointer type
openssl.c: In function `ossl_des3_cbc_decrypt':
openssl.c:465: warning: passing arg 4 of `des_ede3_cbc_encrypt' from 
incompatible pointer type
openssl.c:465: warning: passing arg 5 of `des_ede3_cbc_encrypt' from 
incompatible pointer type
openssl.c:465: warning: passing arg 6 of `des_ede3_cbc_encrypt' from 
incompatible pointer type
,

---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster

Reply via email to