| Summary: | OpenSSL doesn't include RAND_* functions. | ||
|---|---|---|---|
| Product: | Base System | Reporter: | Dan Cross <dcross> |
| Component: | bin | Assignee: | Kris Kennaway <kris> |
| Status: | Closed FIXED | ||
| Severity: | Affects Only Me | ||
| Priority: | Normal | ||
| Version: | 4.0-RELEASE | ||
| Hardware: | Any | ||
| OS: | Any | ||
Responsible Changed From-To: freebsd-bugs->kris Over to the base system's openssl maintainer. State Changed From-To: open->analyzed I can only assume there is something wrong with your copy of OpenSSL - did you install it from a binary distribution, or compile it from make world? All of my machines have the RAND_* symbols, and they're needed for regular operation. State Changed From-To: analyzed->closed Submitter mail address bounced. |
The version of OpenSSL in the base distribution doesn't include the RAND_* functions. Fix: Well, I suppose just make sure that the build process for OpenSSL in the source tree is including those functions. Or perhaps not; the only place I've seen them used is in OpenSSH, but it easiest to compile in Kerberos 5 support via the portable version (presumably, the BSD version doesn't require those functions. The source file using them doesn't even seem to be present in the OpenBSD tar- ball), since the patches one must apply were originally made against that. How-To-Repeat: I was compiling OpenSSH (from the ``portable'' distribution) in order to incorporate Kerberos 5 support. The configure script dies when looking for OpenSSL. The log shows that the ``RAND_add'' and ``RAND_status'' functions are undefined in /usr/lib/libcrypto.{a,so}. Nm seems to confirm this: : hurricane 219; nm -a lib*.a | grep RAND_add : hurricane 220; pwd /usr/lib : hurricane 221; If I fake out make and install OpenSSL from ports, via, eg: make depend all install OSVERSION=400013 it compiles RAND_add and other functions into the resulting library, and I can get OpenSSH to link against it.