On Sun, 15 Apr 2007, [EMAIL PROTECTED] wrote:
> Greetings:
>
> After upgrading from 3.9 to 4.0 and applying patches on my test
> machine, I upgraded my production machine. On it, all patches applied
> successfully except the 002_openssl.patch, for which the `make`
> failed. The patch applied cleanly and I've checked that the output of
> `make obj`, `make depend` and `make includes` is identical for the two
> machines. But here is the output of `make` on the second machine:
>
> ===> crypto
> cc -O2 -pipe -g -DL_ENDIAN -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_NO_IDEA
> -DTERMIOS -DANSI_SOURCE -DNO_ERR -DOPENSSL_NO_ASM -DOPENSSL_NO_RC5
> -DOPENSSL_NO_KRB5 -DOPENSSL_NO_MDC2 -DNO_WINDOWS_BRAINDEATH
> -DOPENSSL_NO_HW_CSWIFT -DOPENSSL_NO_HW_NCIPHER -DOPENSSL_NO_HW_ATALLA
> -DOPENSSL_NO_HW_NURON -DOPENSSL_NO_HW_UBSEC -DOPENSSL_NO_HW_AEP
> -DOPENSSL_NO_HW_SUREWARE -DOPENSSL_NO_HW_4758_CCA
> -I/usr/src/lib/libssl/crypto/../src
> -I/usr/src/lib/libssl/crypto/../src/crypto
> -I/usr/src/lib/libssl/crypto/obj -DAES_ASM -DMD5_ASM -DSHA1_ASM
> -DRMD160_ASM -DOPENBSD_CAST_ASM
> -DOPENBSD_DES_ASM -c /usr/src/lib/libssl/src/crypto/rsa/rsa_eay.c -o
> rsa_eay.o
>
> cc -O2 -pipe -g -DL_ENDIAN -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_NO_IDEA
> -DTERMIOS -DANSI_SOURCE -DNO_ERR -DOPENSSL_NO_ASM -DOPENSSL_NO_RC5
> -DOPENSSL_NO_KRB5 -DOPENSSL_NO_MDC2 -DNO_WINDOWS_BRAINDEATH
> -DOPENSSL_NO_HW_CSWIFT -DOPENSSL_NO_HW_NCIPHER -DOPENSSL_NO_HW_ATALLA
> -DOPENSSL_NO_HW_NURON -DOPENSSL_NO_HW_UBSEC -DOPENSSL_NO_HW_AEP
> -DOPENSSL_NO_HW_SUREWARE -DOPENSSL_NO_HW_4758_CCA
> -I/usr/src/lib/libssl/crypto/../src
> -I/usr/src/lib/libssl/crypto/../src/crypto
> -I/usr/src/lib/libssl/crypto/obj -DAES_ASM -DMD5_ASM -DSHA1_ASM
> -DRMD160_ASM -DOPENBSD_CAST_ASM
> -DOPENBSD_DES_ASM -c /usr/src/lib/libssl/src/crypto/rsa/rsa_err.c -o
> rsa_err.o
>
> cc -O2 -pipe -g -DL_ENDIAN -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_NO_IDEA
> -DTERMIOS -DANSI_SOURCE -DNO_ERR -DOPENSSL_NO_ASM -DOPENSSL_NO_RC5
> -DOPENSSL_NO_KRB5 -DOPENSSL_NO_MDC2 -DNO_WINDOWS_BRAINDEATH
> -DOPENSSL_NO_HW_CSWIFT -DOPENSSL_NO_HW_NCIPHER -DOPENSSL_NO_HW_ATALLA
> -DOPENSSL_NO_HW_NURON -DOPENSSL_NO_HW_UBSEC -DOPENSSL_NO_HW_AEP
> -DOPENSSL_NO_HW_SUREWARE -DOPENSSL_NO_HW_4758_CCA
> -I/usr/src/lib/libssl/crypto/../src
> -I/usr/src/lib/libssl/crypto/../src/crypto
> -I/usr/src/lib/libssl/crypto/obj -DAES_ASM -DMD5_ASM -DSHA1_ASM
> -DRMD160_ASM -DOPENBSD_CAST_ASM
> -DOPENBSD_DES_ASM -c /usr/src/lib/libssl/src/crypto/rsa/rsa_x931.c
> -o rsa_x931.o
>
> /usr/src/lib/libssl/src/crypto/rsa/rsa_x931.c: In function
> `RSA_X931_hash_id':
>
> /usr/src/lib/libssl/src/crypto/rsa/rsa_x931.c:165: error: `NID_sha256'
> undeclared (first use in this function)
>
> /usr/src/lib/libssl/src/crypto/rsa/rsa_x931.c:165: error: (Each
> undeclared identifier is reported only once
>
> /usr/src/lib/libssl/src/crypto/rsa/rsa_x931.c:165: error: for each
> function it appears in.)
>
> /usr/src/lib/libssl/src/crypto/rsa/rsa_x931.c:168: error: `NID_sha384'
> undeclared (first use in this function)
>
> /usr/src/lib/libssl/src/crypto/rsa/rsa_x931.c:171: error: `NID_sha512'
> undeclared (first use in this function)
> *** Error code 1
>
> Stop in /usr/src/lib/libssl/crypto.
> *** Error code 1
>
> Stop in /usr/src/lib/libssl.
>
The required symbols are in /usr/include/openssl/obj_mac.h
That file should have been included in rsa_x931.c implicitly,
when rsa_x931.c included /usr/include/openssl/objects.h
I believe your copy of rsa_x931.c must be corrupt.
This is from my source archive (OPENBSD_4) i.e. "stable":
[EMAIL PROTECTED] lib 0:18]# sha1 libssl/src/crypto/rsa/rsa_x931.c
SHA1 (libssl/src/crypto/rsa/rsa_x931.c) =
33a25cba2f3e0413bb2581d1ef89bb22cd7a2771
[EMAIL PROTECTED] lib 0:19]# wc libssl/src/crypto/rsa/rsa_x931.c
177 677 4665 libssl/src/crypto/rsa/rsa_x931.c
My advice is to rm rsa_x931.c and to get a fresh copy by CVS.
# cd /usr/src/lib/libssl/src/crypto/rsa
# mv rsa_x931.c rsa_x931.bogus.c
# cvs up -Pd
## then:
# diff -u rsa_x931.bogus.c rsa_x931.c # and tell us the difference
Assuming, of course, that you're set up for CVS.
You can also get the file from the web with
http://www.openbsd.org/cgi-bin/cvsweb/src/lib/libssl/src/crypto/rsa/rsa_x931.c?only_with_tag=OPENBSD_4_0
I have looked at the patch, and it doesn't seem to patch rsa_x931.c,
but does it may ultimately alter file openssl/rsa.h, which is
included by rsa_x931.c.
I use cvs on the whole tree, which eliminates a lot of these sorts
of problems, but I understand the need to patch and recompile little
parts. There is sometimes a chicken-and-egg problem with patches.
The cvsweb site mentioned can be used to check various files on
your machine against the present OPENBSD_4 tag.
This post delayed at least three hours due to spamd. :-(
This post now delayed nine hours due to spamd.
Dave
_______________________________________________
Openbsd-newbies mailing list
[email protected]
http://mailman.theapt.org/listinfo/openbsd-newbies