Commit graph

220 commits

Author SHA1 Message Date
agc
d81d19f8e0 Add RMD160 digests. 2005-02-24 12:51:41 +00:00
grant
395f2b26c7 when linking shared libssl on Solaris, make sure the rpath is
included so it can find libcrypto.
2005-02-20 05:42:51 +00:00
jlam
fe2f1774b5 Modify openssl/Makefile so that it's easier to test the -STABLE and
-SNAP OpenSSL snapshots.
2005-02-02 23:43:42 +00:00
grant
96c2b7ecc2 when building with SunPro on x86, do not use -fast argument to cc(1)
because:

- its behaviour changes between releases
- it uses build-host specific instructions where possible,
  specifically on >= Solaris 9 update 6 and Sun Studio 9 (sse, sse2)

this breaks using the binary pkg when installed on systems with a
less capable processor. instead, just use -xO5 so the binary pkg will
work everywhere.
2005-01-18 10:25:17 +00:00
jlam
28a95475df Bump PKGREVISION to 1 as a result of fixing the run-time behavior of
openssl on sparc64 and amd64 in the previous commit.
2005-01-13 18:34:47 +00:00
jlam
5767fbbdbc Optimize the NetBSD/amd64 config a bit to improve RC4 performance, and
fix the NetBSD/sparc64 config by adding -DMD32_REG_T=int to the flags.
Tested by martin (at) NetBSD.org.  This should fix PR pkg/28858.
2005-01-13 18:33:48 +00:00
jlam
a980a0325b Fix build on NetBSD/sparc64 by marking the system as ``ULTRASPARC''
so that the appropriate OpenSSL sources are built.  Also, explicitly
mark the endianness of each supported NetBSD platform to avoid potential
endianness issues when doing the crypto arithmetic.
2005-01-11 22:25:00 +00:00
tv
dab9676fdc Fix compilation on Interix. Reported in PR pkg/28938
by HIRAMATSU Yoshifumi <hiramatu@boreas.dti.ne.jp>.
2005-01-11 21:49:25 +00:00
jlam
83ff9738ed Fix a bug in the OpenSSL makefiles that installed a libfips.so symlink
that pointed to nothing.  There is no such thing as "libfips".
2004-12-31 17:34:10 +00:00
jlam
34a211b1e3 Fix compilation on FreeBSD/x86 by ensuring that the FIPS assembly code
isn't used when fips isn't requested during configuration.
2004-12-27 06:14:40 +00:00
jlam
7a022e9cf2 Fix build on non-x86 platforms (PR pkg/28787). 2004-12-27 02:31:07 +00:00
jlam
c264be5d18 Alter patches to make them more likely to be accepted back by the
OpenSSL project.  Also use the sparcv9 MD5 assembly routines on
NetBSD/sparc64.
2004-12-25 22:11:26 +00:00
jlam
0a6f42ca41 Use the correct assembly routines on NetBSD/i386 depending on whether
it's a.out or ELF.
2004-12-25 19:09:08 +00:00
jlam
ac1c08301c Update security/openssl to 0.9.7e. Changes from openssl-0.9.6m are
too numerous to be listed here, but include adding a new DES API
(support for the old one is still present).

Changes to the pkgsrc structure include:

* Install the shared libraries with a version number that matches the
  OpenSSL version number

* Move some of the less often-used c_* utilities back into the examples
  directory.

* Drop support for using the RSAREF library and always use the built-in
  RSA code instead.
2004-12-24 22:02:37 +00:00
grant
830d7cd76e ick: openssl builds PIC static libraries and then later uses them to
build shared libraries. on Darwin with xlc, this fails because of the
way xlc invokes Darwin's in-base libtool to create shared libraries,
meaning that the -all_load argument cannot be used to import all
symbols.

work around this the same way as UnixWare does it, by listing the
archive library contents and linking the object files into the shared
library individually. also remove some other assumed gcc'isms to make
this build on Darwin with xlc.

XXX maybe this pkg should be libtool'ized?
2004-12-19 02:48:32 +00:00
jlam
4df5c48cc4 minor whitespace nit. 2004-12-18 21:32:51 +00:00
jlam
f9127ef977 Fix a typo that caused us not to check the correct header for the presence
of "des_cblock".  This fixes PR pkg/28703.
2004-12-18 17:14:22 +00:00
wiz
51aa86a453 Update to 0.9.6mnb2: Don't install (deprecated) der_chop example
script, since it has insecure temp file handling.
2004-12-17 23:08:36 +00:00
jlam
f9724a680a Change the way that openssl/builtin.mk handles the USE_OLD_DES_API flag.
The idea is to prevent needing to patch source files for packages that
use OpenSSL for DES support by ensuring that including <openssl/des.h>
will always present the old DES API.

(1) If des_old.h exists, then we're using OpenSSL>=0.9.7, and
    <openssl/des.h> already does the right thing.

(2) If des_old.h doesn't exist, then one of two things is happening:
    (a) If <openssl/des.h> is old and (only) supports the old DES API,
	then <openssl/des.h> does the right thing.
    (b) If it's NetBSD's Special(TM) one that stripped out the old DES
	support into a separate library and header (-ldes, <des.h>),
	then we create a new header <openssl/des.h> that includes the
	system one and <des.h>.

Also modify existing packages that set USE_OLD_DES_API to simply include
<openssl/des.h> instead of either <des.h> or <openssl/des_old.h> (This
step is mostly just removing unnecessary patches).

This should fix building packages that use OpenSSL's old DES API support
on non-NetBSD systems where the built-in OpenSSL is at least 0.9.7.
2004-12-14 19:24:29 +00:00
jlam
98a8065e34 Provide an SSLKEYS variable that points to the location where OpenSSL
private keys are likely to be installed.  Patch directly from PR
pkg/28477 by Jason Thorpe.
2004-12-11 00:04:14 +00:00
jlam
48e1426f67 Attempt to deal with the differing DES APIs between OpenSSL 0.9.6 (in
pkgsrc and in NetBSD-1.6.x) and OpenSSL 0.9.7 (in NetBSD-2.0), by
creating a new yes/no variable USE_OLD_DES_API that flags whether the
package wants to use the old DES API.  If USE_OLD_DES_API is "yes",
then:

  * For OpenSSL 0.9.6, symlink ${BUILDLINK_DIR}/include/openssl/des_old.h
    to ${SSLBASE}/include/openssl/des.h.

  * For NetBSD 2.0's "special" installation of OpenSSL 0.9.7, symlink
    ${BUILDLINK_DIR}/include/openssl/des_old.h to /usr/include/des.h,
    and transform "-lcrypto" into "-ldes -lcrypto".  This makes it
    behave like stock OpenSSL 0.9.7 where the old DES functions are
    part of libcrypto.

Software that wants to use the old DES API should be taught to do it
in a way that works with a stock installation of OpenSSL 0.9.7 -- by
including <openssl/des_old.h> and linking against "-lcrypto".  Software
that wants to use the new DES API should simply depend on openssl>=0.9.7.

This change has no impact on existing packages as the new code is
active only when USE_OLD_DES_API == "yes".
2004-12-03 23:03:09 +00:00
jlam
ce8f0714a0 reorder: commands are specified using WRAPPER_REORDER_CMDS, not
BUILDLINK_TRANSFORM.
2004-12-03 20:33:18 +00:00
tv
c487cb967a Libtool fix for PR pkg/26633, and other issues. Update libtool to 1.5.10
in the process.  (More information on tech-pkg.)

Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.

Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
2004-10-03 00:12:51 +00:00
jlam
7ad48acf7d Back out previous... unintended commit. 2004-08-28 20:38:18 +00:00
jlam
8d572feba3 Use the new BUILDLINK_TRANSFORM commands to more precisely state the
intended transformation: use "rm" to remove an option, "rmdir" to remove
all options containing a path starting with a given directory name, and
"rename" to rename options to something else.
2004-08-28 06:05:31 +00:00
jlam
9d5426ff76 Change the way that legacy USE_* and FOO_USE_* options are converted
into the bsd.options.mk framework.  Instead of appending to
${PKG_OPTIONS_VAR}, it appends to PKG_DEFAULT_OPTIONS.  This causes
the default options to be the union of PKG_DEFAULT_OPTIONS and any
old USE_* and FOO_USE_* settings.

This fixes PR pkg/26590.
2004-08-22 19:32:51 +00:00
jlam
b4e8a59e09 Convert to use bsd.options.mk. 2004-08-05 04:20:28 +00:00
jlam
312137ee1c Document the "rsaref" build option. 2004-08-05 02:45:28 +00:00
jlam
b460ce1ab5 Convert to use bsd.options.mk. The relevant options variable to set
for each package can be determined by invoking:

	make show-var VARNAME=PKG_OPTIONS_VAR

The old options are still supported unless the variable named in
PKG_OPTIONS_VAR is set within make(1) (usually via /etc/mk.conf).
2004-07-30 21:05:41 +00:00
wiz
4237d54a34 Unused. 2004-07-06 22:41:15 +00:00
tv
0fc96ae1c3 Make compile on Interix. No-op change for other platforms, so no PKGREVISION
bump.  (Main MI change:  -soname -> -h, as some GNU ld(1) wants --soname
instead of -soname, but -h works on all GNU ld(1) versions.)
2004-04-25 20:36:11 +00:00
tron
0f086b9983 If the native OpenSSL contains the security fixes pulled up to the
netbsd-1-6 branch on 2004-04-01, then pretend it's openssl-0.9.6m.
2004-04-07 13:31:54 +00:00
wiz
ca4b3c701c Grammar fix. 2004-04-02 23:41:50 +00:00
jlam
bd1564f2ad If the native OpenSSL contains the security fixes pulled up to the
netbsd-1-6 branch on 2004-04-01, then pretend it's openssl-0.9.6m.
2004-04-02 21:42:32 +00:00
seb
bf290ad41d Fix build on NetBSD sparc64 with perl 5.8.
usage of perl's int() causes trouble with perl 5.8.3 (5.8*?) on at least
NetBSD sparc64/1.6.2.

The perl script openssl-0.9.6m/crypto/bn/bn_prime.pl uses the perl
function int() to truncate the return of sqrt() function.
On the above mentioned platform this leads to execution error:
...
/usr/pkg/bin/perl bn_prime.pl >bn_prime.h
Illegal modulus zero at bn_prime.pl line 16.

Tracing the problem I've found that this int() usage may be the key
of the problem. Please note the following:

$ uname -srm; perl -v | grep 'This is perl'; perl -e 'print int(sqrt(3)),"\n"'
NetBSD 1.6.2 sparc64
This is perl, v5.8.3 built for sparc64-netbsd
2
And...

$ uname -srm; perl -v | grep 'This is perl'; perl -e 'print int(sqrt(3)),"\n"'
NetBSD 1.6.2 sparc64
This is perl, v5.6.1 built for sparc64-netbsd
1

Also note that perlfunc(3) warns about int() used for rounding and
recommends to use sprintf, printf, POSIX::floor or POSIX::ceil when
applicable.

My workaround is to use POSIX::floor() instead of int().
2004-03-29 13:49:42 +00:00
jlam
e31ad45e30 Consolidate all of the PLIST.* files that duplicated each other into a
single file PLIST.shlib.  Only have PLIST.${LOWER_OPSYS} if it differs
from PLIST.shlib.
2004-03-26 08:33:49 +00:00
jlam
6ccbfe8c32 Don't rebuild openssl again as part of installing it. 2004-03-26 08:13:24 +00:00
jlam
d2bd9adbc6 Allow the rehash of the certs database to not error out during the build
due to libssl.so.300 not being found by correctly setting LD_LIBRARY_PATH.
2004-03-26 06:54:30 +00:00
jlam
187f9049b9 We can't use ${PKGBASE} on the left-hand side of an assignment since it's
not defined yet until bsd.pkg.mk.  Explicitly use "openssl" instead.  This
correctly forces NetBSD installations of openssl to use /etc/openssl as
the configuration file directory as originally intended.
2004-03-26 06:16:16 +00:00
jlam
40ae26143e Add some mirror sites since the main OpenSSL site seems to be dead at the
moment.
2004-03-26 05:41:10 +00:00
wiz
62401faee5 Update to 0.9.6m:
Changes between 0.9.6l and 0.9.6m  [17 Mar 2004]
  *) Fix null-pointer assignment in do_change_cipher_spec() revealed
     by using the Codenomicon TLS Test Tool (CAN-2004-0079)
     [Joe Orton, Steve Henson]
2004-03-26 02:22:38 +00:00
jlam
7db11b582a Fix serious bug where BUILDLINK_PACKAGES wasn't being ordered properly
by moving the inclusion of buildlink3.mk files outside of the protected
region.  This bug would be seen by users that have set PREFER_PKGSRC
or PREFER_NATIVE to non-default values.

BUILDLINK_PACKAGES should be ordered so that for any package in the
list, that package doesn't depend on any packages to the left of it
in the list.  This ordering property is used to check for builtin
packages in the correct order.  The problem was that including a
buildlink3.mk file for <pkg> correctly ensured that <pkg> was removed
from BUILDLINK_PACKAGES and appended to the end.  However, since the
inclusion of any other buildlink3.mk files within that buildlink3.mk
was in a region that was protected against multiple inclusion, those
dependencies weren't also moved to the end of BUILDLINK_PACKAGES.
2004-03-18 09:12:08 +00:00
jlam
d0b4c54eb6 Split out the code that deals with checking whether the software is
built-in or not into a separate builtin.mk file.  The code to deal
checking for built-in software is much simpler to deal with in pkgsrc.

The buildlink3.mk file for a package will be of the usual format
regardless of the package, which makes it simpler for packagers to
update a package.

The builtin.mk file for a package must define a single yes/no variable
USE_BUILTIN.<pkg> that is used by bsd.buildlink3.mk to decide whether
to use the built-in software or to use the pkgsrc software.
2004-03-10 17:57:14 +00:00
reed
044930d046 Don't build and install openssl with IDEA, MDC2, or RC5 support.
According to README, "RSA Security holds software patents on the
RC5 algorithm.  If you intend to use this cipher, you must contact
RSA Security for licensing conditions." And "The IDEA algorithm is
patented by Ascom ... They should be contacted if that algorithm
is to be used." The openssl FAQ says "For patent reasons, support
for IDEA, RC5 and MDC2 is disabled in this [Red Hat Linux] version."
The FAQ lists patent numbers and expiry dates of US patents:
MDC-2: 4,908,861 13/03/2007
IDEA:  5,214,703 25/05/2010
RC5:   5,724,428 03/03/2015

Now fee-based-commercial-use ACCEPTABLE_LICENSES is not needed.
2004-03-09 08:06:45 +00:00
grant
1fa7a034f2 include mk/compiler.mk before testing ${CC} 2004-02-29 00:36:45 +00:00
jlam
bf6e059da4 Reorder some lines so that BUILDLINK_USE_BUILTIN.<pkg> set in the
environment overrides all other settings.
2004-02-18 16:35:27 +00:00
jlam
2c8d533a36 Don't use sysctl to determine the machine arch when ${MACHINE_ARCH} already
has the correct value.  Fixes build on NetBSD-1.5.3/sparc, which doesn't
understand "sysctl hw.machine_arch", reported in PR 24448.
2004-02-17 14:26:47 +00:00
jlam
2ee656decf s/_BUILTIN_OPENSSL/BUILDLINK_IS_BUILTIN.openssl/g 2004-02-12 09:38:43 +00:00
jlam
d2b62c66fb Create a new variable PREFER_NATIVE that has the opposite semantics
as PREFER_PKGSRC.  Preferences are determined by the most specific
instance of the package in either PREFER_PKGSRC or PREFER_NATIVE.  If
a package is specified in neither or in both variables, then PREFER_PKGSRC
has precedence over PREFER_NATIVE.
2004-02-12 02:35:06 +00:00
jlam
1edfa505ed Reorganize code so that any dependencies are checked as part of deciding
whether the software is built-in or not.  This facilitates implementing
the forthcoming PKGSRC_NATIVE variable.
2004-02-12 01:59:37 +00:00