summaryrefslogtreecommitdiff
path: root/packaging/redhat
diff options
context:
space:
mode:
authorRene Mayrhofer <rene@mayrhofer.eu.org>2006-05-22 05:12:18 +0000
committerRene Mayrhofer <rene@mayrhofer.eu.org>2006-05-22 05:12:18 +0000
commitaa0f5b38aec14428b4b80e06f90ff781f8bca5f1 (patch)
tree95f3d0c8cb0d59d88900dbbd72110d7ab6e15b2a /packaging/redhat
parent7c383bc22113b23718be89fe18eeb251942d7356 (diff)
downloadvyos-strongswan-aa0f5b38aec14428b4b80e06f90ff781f8bca5f1.tar.gz
vyos-strongswan-aa0f5b38aec14428b4b80e06f90ff781f8bca5f1.zip
Import initial strongswan 2.7.0 version into SVN.
Diffstat (limited to 'packaging/redhat')
-rw-r--r--packaging/redhat/.cvsignore12
-rw-r--r--packaging/redhat/Makefile100
-rw-r--r--packaging/redhat/config-athlon-smp.h79
-rw-r--r--packaging/redhat/config-athlon.h79
-rw-r--r--packaging/redhat/config-i386-smp.h79
-rw-r--r--packaging/redhat/config-i386.h79
-rw-r--r--packaging/redhat/config-i586-smp.h79
-rw-r--r--packaging/redhat/config-i586-up.h79
-rw-r--r--packaging/redhat/config-i586.h79
-rw-r--r--packaging/redhat/config-i686-bigmem.h78
-rw-r--r--packaging/redhat/config-i686-smp.h79
-rw-r--r--packaging/redhat/config-i686.h79
-rw-r--r--packaging/redhat/freeswan.spec176
-rw-r--r--packaging/redhat/kernel-list.txt9
-rw-r--r--packaging/redhat/rpm.in149
15 files changed, 1235 insertions, 0 deletions
diff --git a/packaging/redhat/.cvsignore b/packaging/redhat/.cvsignore
new file mode 100644
index 000000000..630b0ff36
--- /dev/null
+++ b/packaging/redhat/.cvsignore
@@ -0,0 +1,12 @@
+BUILD.athlon
+BUILD.athlon-smp
+BUILD.i386
+BUILD.i386-smp
+BUILD.i586
+BUILD.i586-smp
+BUILD.i586-up
+BUILD.i686
+BUILD.i686-smp
+rpms
+rpm.spec
+tmp.rpmbuild
diff --git a/packaging/redhat/Makefile b/packaging/redhat/Makefile
new file mode 100644
index 000000000..45f775734
--- /dev/null
+++ b/packaging/redhat/Makefile
@@ -0,0 +1,100 @@
+# FreeS/WAN RedHat RPM makefile
+# Copyright (C) 2002 Michael Richardson <mcr@freeswan.org>
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+# RCSID $Id: Makefile,v 1.1 2004/03/15 20:35:27 as Exp $
+
+FREESWANSRCDIR=$(shell cd ../.. && pwd)
+include ${FREESWANSRCDIR}/Makefile.inc
+include ${FREESWANSRCDIR}/Makefile.ver
+
+
+# temporary directory to be used when building RPMs, and where to put the
+# resulting RPM tree
+RPMKERNDIR := $(shell echo `pwd`/tmp.rpmkernel)
+RPMTMPDIR=$(shell echo `pwd`/tmp.rpmbuild)
+RPMDEST := $(shell echo `pwd`/rpms)
+
+# definitions from main Makefile that may be relevant
+
+KERNELKLIPS=$(KERNELSRC)/net/ipsec
+KERNELCRYPTODES=$(KERNELSRC)/crypto/ciphers/des
+KERNELLIBFREESWAN=$(KERNELSRC)/lib/libfreeswan
+KERNELLIBZLIB=$(KERNELSRC)/lib/zlib
+KERNELINCLUDE=$(KERNELSRC)/include
+
+MAKEUTILS=${FREESWANSRCDIR}/packaging/utils
+ERRCHECK=${MAKEUTILS}/errcheck
+KVUTIL=${MAKEUTILS}/kernelversion
+KVSHORTUTIL=${MAKEUTILS}/kernelversion-short
+
+
+clean:
+ rm -rf $(shell echo `pwd`/BUILD.*)
+ rm -rf ${RPMTMPDIR}
+ rm -rf ${RPMDEST}
+ rm -f $(shell echo `pwd`/rpm.spec)
+
+rpm: rpm_userland rpm_modules rpm.spec final_rpm
+
+# RPM-build userland install in temporary directory
+rpm_userland: clean
+ mkdir -p $(RPMTMPDIR)
+ (cd ${FREESWANSRCDIR} && $(MAKE) programs install DESTDIR=$(RPMTMPDIR) && cd `pwd`)
+ for extras in README CHANGES ; do \
+ cp -f $(FREESWANSRCDIR)/$$extras $(RPMTMPDIR)$(FINALEXAMPLECONFDIR)/ ; \
+ done
+
+rpm_modules:
+ @if [ ! -d ${RH_KERNELSRC}/configs ]; then echo "Please fix RH_KERNELSRC in Makefile.inc (${RH_KERNELSRC})"; exit 1; fi
+ @KV=`${KVUTIL} $(RH_KERNELSRC)/Makefile | sed -e 's/custom//'` ; \
+ MD=${RPMTMPDIR}/lib/modules/$$KV/kernel/net/ipsec; mkdir -p $$MD; \
+ echo Installing into $$MD for $$KV; \
+ rm -rf BUILD.*; \
+ cat kernel-list.txt | while read kerneltype arch subarch; \
+ do \
+ mkdir -p BUILD.$$kerneltype; \
+ if [ -z "$$subarch" ]; then subarch=$$arch; fi; \
+ BUILDDIR=`pwd`/BUILD.$$kerneltype; \
+ HERE=`pwd` ;\
+ echo Building $$KV-$$kerneltype in $$BUILDDIR; \
+ ${MAKE} -C ${FREESWANSRCDIR} MODBUILDDIR=$$BUILDDIR KERNELSRC=${RH_KERNELSRC} ARCH=$$arch SUBARCH=$$subarch MODULE_DEF_INCLUDE=$$HERE/config-$$kerneltype.h module;\
+ cp $$BUILDDIR/ipsec.o $$MD/ipsec.o-$$kerneltype; \
+ goo="`nm -ao $$BUILDDIR/ipsec.o | ${FREESWANSRCDIR}/programs/calcgoo/calcgoo`"; \
+ (cd $$MD && ln -f ipsec.o-$$kerneltype $$goo); \
+ done
+
+# build spec file for building RPMs
+rpm.spec: rpm.in $(RH_KERNELSRC)/Makefile
+ KVORIG=`${KVUTIL} $(RH_KERNELSRC)/Makefile | sed -e 's/custom//'` ; \
+ KV=`echo $$KVORIG | sed -e 's/-/_/g' ` ; \
+ IPSECVERSIONFIXED=`echo ${IPSECVERSION} | sed -e 's/-/_/g'`; \
+ echo KVORIG: $$KVORIG KV: $$KV IV: $$IPSECVERSIONFIXED; \
+ sed -e "/@KERNELVERSION@/s;;$$KV;" \
+ -e "/@KERNELVERSIONORIG@/s;;$$KVORIG;" \
+ -e "/@IPSECVERSION@/s;;$$IPSECVERSIONFIXED;" \
+ -e '/@PUBDIR@/s;;$(PUBDIR);' \
+ -e '/@FINALBINDIR@/s;;$(FINALBINDIR);' \
+ -e '/@FINALLIBDIR@/s;;$(FINALLIBDIR);' \
+ -e '/@FINALCONFDDIR@/s;;$(FINALCONFDDIR);' \
+ -e '/@FINALCONFDIR@/s;;$(FINALCONFDIR);' \
+ -e '/@FINALEXAMPLECONFDIR@/s;;$(FINALEXAMPLECONFDIR);' \
+ -e '/@MANTREE@/s;;$(MANTREE);' rpm.in > rpm.spec
+
+# build RPMs
+final_rpm: rpm.spec
+ mkdir -p $(RPMDEST)
+ cd $(RPMDEST) ; mkdir -p SRPMS BUILD RPMS SPECS SOURCES
+ cd $(RPMDEST)/RPMS ; mkdir -p $(ARCH) noarch
+ $(RPMBUILD) -bb --define "buildroot $(RPMTMPDIR)" \
+ --define "_topdir $(RPMDEST)" rpm.spec
+ # that has, incidentally, gotten rid of $(RPMTMPDIR)
diff --git a/packaging/redhat/config-athlon-smp.h b/packaging/redhat/config-athlon-smp.h
new file mode 100644
index 000000000..2aa764477
--- /dev/null
+++ b/packaging/redhat/config-athlon-smp.h
@@ -0,0 +1,79 @@
+#ifndef _CONFIG_RH_I586_H_
+/*
+ * Copyright (C) 2002 Michael Richardson <mcr@freeswan.org>
+ *
+ * This kernel module is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version. See <http://www.fsf.org/copyleft/lgpl.txt>.
+ *
+ * This kernel module is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ * License for more details.
+ *
+ * RCSID $Id: config-athlon-smp.h,v 1.1 2004/03/15 20:35:27 as Exp $
+ */
+#define _CONFIG_RH_ATHLON_SMP_H_ /* seen it, no need to see it again */
+
+#define CONFIG_IPSEC 1
+
+#ifndef CONFIG_IPSEC_AH
+#define CONFIG_IPSEC_AH 1
+#endif
+
+#ifndef CONFIG_IPSEC_DEBUG
+#define CONFIG_IPSEC_DEBUG 1
+#endif
+
+#ifndef CONFIG_IPSEC_ESP
+#define CONFIG_IPSEC_ESP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPCOMP
+#define CONFIG_IPSEC_IPCOMP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPIP
+#define CONFIG_IPSEC_IPIP 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_MD5
+#define CONFIG_IPSEC_AUTH_HMAC_MD5 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_SHA1
+#define CONFIG_IPSEC_AUTH_HMAC_SHA1 1
+#endif
+
+#ifndef CONFIG_IPSEC_DYNDEV
+#define CONFIG_IPSEC_DYNDEV 1
+#endif
+
+#ifndef CONFIG_IPSEC_ENC_3DES
+#define CONFIG_IPSEC_ENC_3DES 1
+#endif
+
+#ifndef CONFIG_IPSEC_REGRESS
+#define CONFIG_IPSEC_REGRESS 0
+#endif
+
+/* keep rhconfig.h from doing anything */
+#define __rh_config_h__
+
+/* pick which arch we are supposed to be */
+#define __module__smp
+#undef __module__up
+#define __module__athlon
+#define __module__athlon_smp
+
+#if defined(__module__smp) || defined(__module__BOOTsmp) || defined(__module__enterprise) || defined(__module__bigmem)
+#define _ver_str(x) smp_ ## x
+#else
+#define _ver_str(x) x
+#endif
+
+#define RED_HAT_LINUX_KERNEL 1
+
+#endif /* _CONFIG_RH_ATHLON_SMP_H_ */
+
diff --git a/packaging/redhat/config-athlon.h b/packaging/redhat/config-athlon.h
new file mode 100644
index 000000000..f9d51fc01
--- /dev/null
+++ b/packaging/redhat/config-athlon.h
@@ -0,0 +1,79 @@
+#ifndef _CONFIG_RH_I586_H_
+/*
+ * Copyright (C) 2002 Michael Richardson <mcr@freeswan.org>
+ *
+ * This kernel module is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version. See <http://www.fsf.org/copyleft/lgpl.txt>.
+ *
+ * This kernel module is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ * License for more details.
+ *
+ * RCSID $Id: config-athlon.h,v 1.1 2004/03/15 20:35:27 as Exp $
+ */
+#define _CONFIG_RH_ATHLON_H_ /* seen it, no need to see it again */
+
+#define CONFIG_IPSEC 1
+
+#ifndef CONFIG_IPSEC_AH
+#define CONFIG_IPSEC_AH 1
+#endif
+
+#ifndef CONFIG_IPSEC_DEBUG
+#define CONFIG_IPSEC_DEBUG 1
+#endif
+
+#ifndef CONFIG_IPSEC_ESP
+#define CONFIG_IPSEC_ESP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPCOMP
+#define CONFIG_IPSEC_IPCOMP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPIP
+#define CONFIG_IPSEC_IPIP 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_MD5
+#define CONFIG_IPSEC_AUTH_HMAC_MD5 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_SHA1
+#define CONFIG_IPSEC_AUTH_HMAC_SHA1 1
+#endif
+
+#ifndef CONFIG_IPSEC_DYNDEV
+#define CONFIG_IPSEC_DYNDEV 1
+#endif
+
+#ifndef CONFIG_IPSEC_ENC_3DES
+#define CONFIG_IPSEC_ENC_3DES 1
+#endif
+
+#ifndef CONFIG_IPSEC_REGRESS
+#define CONFIG_IPSEC_REGRESS 0
+#endif
+
+/* keep rhconfig.h from doing anything */
+#define __rh_config_h__
+
+/* pick which arch we are supposed to be */
+#undef __module__smp
+#define __module__up
+#define __module__athlon
+#define __module__athlon_up
+
+#if defined(__module__smp) || defined(__module__BOOTsmp) || defined(__module__enterprise) || defined(__module__bigmem)
+#define _ver_str(x) smp_ ## x
+#else
+#define _ver_str(x) x
+#endif
+
+#define RED_HAT_LINUX_KERNEL 1
+
+#endif /* _CONFIG_RH_ATHLON_H_ */
+
diff --git a/packaging/redhat/config-i386-smp.h b/packaging/redhat/config-i386-smp.h
new file mode 100644
index 000000000..2971ef9e0
--- /dev/null
+++ b/packaging/redhat/config-i386-smp.h
@@ -0,0 +1,79 @@
+#ifndef _CONFIG_RH_I586_H_
+/*
+ * Copyright (C) 2002 Michael Richardson <mcr@freeswan.org>
+ *
+ * This kernel module is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version. See <http://www.fsf.org/copyleft/lgpl.txt>.
+ *
+ * This kernel module is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ * License for more details.
+ *
+ * RCSID $Id: config-i386-smp.h,v 1.1 2004/03/15 20:35:27 as Exp $
+ */
+#define _CONFIG_RH_I386_SMP_H_ /* seen it, no need to see it again */
+
+#define CONFIG_IPSEC 1
+
+#ifndef CONFIG_IPSEC_AH
+#define CONFIG_IPSEC_AH 1
+#endif
+
+#ifndef CONFIG_IPSEC_DEBUG
+#define CONFIG_IPSEC_DEBUG 1
+#endif
+
+#ifndef CONFIG_IPSEC_ESP
+#define CONFIG_IPSEC_ESP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPCOMP
+#define CONFIG_IPSEC_IPCOMP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPIP
+#define CONFIG_IPSEC_IPIP 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_MD5
+#define CONFIG_IPSEC_AUTH_HMAC_MD5 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_SHA1
+#define CONFIG_IPSEC_AUTH_HMAC_SHA1 1
+#endif
+
+#ifndef CONFIG_IPSEC_DYNDEV
+#define CONFIG_IPSEC_DYNDEV 1
+#endif
+
+#ifndef CONFIG_IPSEC_ENC_3DES
+#define CONFIG_IPSEC_ENC_3DES 1
+#endif
+
+#ifndef CONFIG_IPSEC_REGRESS
+#define CONFIG_IPSEC_REGRESS 0
+#endif
+
+/* keep rhconfig.h from doing anything */
+#define __rh_config_h__
+
+/* pick which arch we are supposed to be */
+#undef __module__up
+#define __module__smp
+#define __module__i386
+#define __module__i386_smp
+
+#if defined(__module__smp) || defined(__module__BOOTsmp) || defined(__module__enterprise) || defined(__module__bigmem)
+#define _ver_str(x) smp_ ## x
+#else
+#define _ver_str(x) x
+#endif
+
+#define RED_HAT_LINUX_KERNEL 1
+
+#endif /* _CONFIG_RH_I386_SMP_H_ */
+
diff --git a/packaging/redhat/config-i386.h b/packaging/redhat/config-i386.h
new file mode 100644
index 000000000..dd6cde171
--- /dev/null
+++ b/packaging/redhat/config-i386.h
@@ -0,0 +1,79 @@
+#ifndef _CONFIG_RH_I586_H_
+/*
+ * Copyright (C) 2002 Michael Richardson <mcr@freeswan.org>
+ *
+ * This kernel module is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version. See <http://www.fsf.org/copyleft/lgpl.txt>.
+ *
+ * This kernel module is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ * License for more details.
+ *
+ * RCSID $Id: config-i386.h,v 1.1 2004/03/15 20:35:27 as Exp $
+ */
+#define _CONFIG_RH_I386_H_ /* seen it, no need to see it again */
+
+#define CONFIG_IPSEC 1
+
+#ifndef CONFIG_IPSEC_AH
+#define CONFIG_IPSEC_AH 1
+#endif
+
+#ifndef CONFIG_IPSEC_DEBUG
+#define CONFIG_IPSEC_DEBUG 1
+#endif
+
+#ifndef CONFIG_IPSEC_ESP
+#define CONFIG_IPSEC_ESP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPCOMP
+#define CONFIG_IPSEC_IPCOMP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPIP
+#define CONFIG_IPSEC_IPIP 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_MD5
+#define CONFIG_IPSEC_AUTH_HMAC_MD5 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_SHA1
+#define CONFIG_IPSEC_AUTH_HMAC_SHA1 1
+#endif
+
+#ifndef CONFIG_IPSEC_DYNDEV
+#define CONFIG_IPSEC_DYNDEV 1
+#endif
+
+#ifndef CONFIG_IPSEC_ENC_3DES
+#define CONFIG_IPSEC_ENC_3DES 1
+#endif
+
+#ifndef CONFIG_IPSEC_REGRESS
+#define CONFIG_IPSEC_REGRESS 0
+#endif
+
+/* keep rhconfig.h from doing anything */
+#define __rh_config_h__
+
+/* pick which arch we are supposed to be */
+#undef __module__smp
+#define __module__up
+#define __module__i386
+#define __module__i386_up
+
+#if defined(__module__smp) || defined(__module__BOOTsmp) || defined(__module__enterprise) || defined(__module__bigmem)
+#define _ver_str(x) smp_ ## x
+#else
+#define _ver_str(x) x
+#endif
+
+#define RED_HAT_LINUX_KERNEL 1
+
+#endif /* _CONFIG_RH_I386_H_ */
+
diff --git a/packaging/redhat/config-i586-smp.h b/packaging/redhat/config-i586-smp.h
new file mode 100644
index 000000000..c56c55219
--- /dev/null
+++ b/packaging/redhat/config-i586-smp.h
@@ -0,0 +1,79 @@
+#ifndef _CONFIG_RH_I586_H_
+/*
+ * Copyright (C) 2002 Michael Richardson <mcr@freeswan.org>
+ *
+ * This kernel module is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version. See <http://www.fsf.org/copyleft/lgpl.txt>.
+ *
+ * This kernel module is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ * License for more details.
+ *
+ * RCSID $Id: config-i586-smp.h,v 1.1 2004/03/15 20:35:27 as Exp $
+ */
+#define _CONFIG_RH_I586_SMP_H_ /* seen it, no need to see it again */
+
+#define CONFIG_IPSEC 1
+
+#ifndef CONFIG_IPSEC_AH
+#define CONFIG_IPSEC_AH 1
+#endif
+
+#ifndef CONFIG_IPSEC_DEBUG
+#define CONFIG_IPSEC_DEBUG 1
+#endif
+
+#ifndef CONFIG_IPSEC_ESP
+#define CONFIG_IPSEC_ESP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPCOMP
+#define CONFIG_IPSEC_IPCOMP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPIP
+#define CONFIG_IPSEC_IPIP 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_MD5
+#define CONFIG_IPSEC_AUTH_HMAC_MD5 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_SHA1
+#define CONFIG_IPSEC_AUTH_HMAC_SHA1 1
+#endif
+
+#ifndef CONFIG_IPSEC_DYNDEV
+#define CONFIG_IPSEC_DYNDEV 1
+#endif
+
+#ifndef CONFIG_IPSEC_ENC_3DES
+#define CONFIG_IPSEC_ENC_3DES 1
+#endif
+
+#ifndef CONFIG_IPSEC_REGRESS
+#define CONFIG_IPSEC_REGRESS 0
+#endif
+
+/* keep rhconfig.h from doing anything */
+#define __rh_config_h__
+
+/* pick which arch we are supposed to be */
+#undef __module__up
+#define __module__smp
+#define __module__i586
+#define __module__i586_smp
+
+#if defined(__module__smp) || defined(__module__BOOTsmp) || defined(__module__enterprise) || defined(__module__bigmem)
+#define _ver_str(x) smp_ ## x
+#else
+#define _ver_str(x) x
+#endif
+
+#define RED_HAT_LINUX_KERNEL 1
+
+#endif /* _CONFIG_RH_I586_H_ */
+
diff --git a/packaging/redhat/config-i586-up.h b/packaging/redhat/config-i586-up.h
new file mode 100644
index 000000000..54b64caf3
--- /dev/null
+++ b/packaging/redhat/config-i586-up.h
@@ -0,0 +1,79 @@
+#ifndef _CONFIG_RH_I586_H_
+/*
+ * Copyright (C) 2002 Michael Richardson <mcr@freeswan.org>
+ *
+ * This kernel module is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version. See <http://www.fsf.org/copyleft/lgpl.txt>.
+ *
+ * This kernel module is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ * License for more details.
+ *
+ * RCSID $Id: config-i586-up.h,v 1.1 2004/03/15 20:35:27 as Exp $
+ */
+#define _CONFIG_RH_I586_H_ /* seen it, no need to see it again */
+
+#define CONFIG_IPSEC 1
+
+#ifndef CONFIG_IPSEC_AH
+#define CONFIG_IPSEC_AH 1
+#endif
+
+#ifndef CONFIG_IPSEC_DEBUG
+#define CONFIG_IPSEC_DEBUG 1
+#endif
+
+#ifndef CONFIG_IPSEC_ESP
+#define CONFIG_IPSEC_ESP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPCOMP
+#define CONFIG_IPSEC_IPCOMP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPIP
+#define CONFIG_IPSEC_IPIP 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_MD5
+#define CONFIG_IPSEC_AUTH_HMAC_MD5 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_SHA1
+#define CONFIG_IPSEC_AUTH_HMAC_SHA1 1
+#endif
+
+#ifndef CONFIG_IPSEC_DYNDEV
+#define CONFIG_IPSEC_DYNDEV 1
+#endif
+
+#ifndef CONFIG_IPSEC_ENC_3DES
+#define CONFIG_IPSEC_ENC_3DES 1
+#endif
+
+#ifndef CONFIG_IPSEC_REGRESS
+#define CONFIG_IPSEC_REGRESS 0
+#endif
+
+/* keep rhconfig.h from doing anything */
+#define __rh_config_h__
+
+/* pick which arch we are supposed to be */
+#undef __module__smp
+#define __module__up
+#define __module__i586
+#define __module__i586_up
+
+#if defined(__module__smp) || defined(__module__BOOTsmp) || defined(__module__enterprise) || defined(__module__bigmem)
+#define _ver_str(x) smp_ ## x
+#else
+#define _ver_str(x) x
+#endif
+
+#define RED_HAT_LINUX_KERNEL 1
+
+#endif /* _CONFIG_RH_I586_H_ */
+
diff --git a/packaging/redhat/config-i586.h b/packaging/redhat/config-i586.h
new file mode 100644
index 000000000..6877c9f92
--- /dev/null
+++ b/packaging/redhat/config-i586.h
@@ -0,0 +1,79 @@
+#ifndef _CONFIG_RH_I586_H_
+/*
+ * Copyright (C) 2002 Michael Richardson <mcr@freeswan.org>
+ *
+ * This kernel module is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version. See <http://www.fsf.org/copyleft/lgpl.txt>.
+ *
+ * This kernel module is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ * License for more details.
+ *
+ * RCSID $Id: config-i586.h,v 1.1 2004/03/15 20:35:27 as Exp $
+ */
+#define _CONFIG_RH_I586_H_ /* seen it, no need to see it again */
+
+#define CONFIG_IPSEC 1
+
+#ifndef CONFIG_IPSEC_AH
+#define CONFIG_IPSEC_AH 1
+#endif
+
+#ifndef CONFIG_IPSEC_DEBUG
+#define CONFIG_IPSEC_DEBUG 1
+#endif
+
+#ifndef CONFIG_IPSEC_ESP
+#define CONFIG_IPSEC_ESP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPCOMP
+#define CONFIG_IPSEC_IPCOMP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPIP
+#define CONFIG_IPSEC_IPIP 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_MD5
+#define CONFIG_IPSEC_AUTH_HMAC_MD5 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_SHA1
+#define CONFIG_IPSEC_AUTH_HMAC_SHA1 1
+#endif
+
+#ifndef CONFIG_IPSEC_DYNDEV
+#define CONFIG_IPSEC_DYNDEV 1
+#endif
+
+#ifndef CONFIG_IPSEC_ENC_3DES
+#define CONFIG_IPSEC_ENC_3DES 1
+#endif
+
+#ifndef CONFIG_IPSEC_REGRESS
+#define CONFIG_IPSEC_REGRESS 0
+#endif
+
+/* keep rhconfig.h from doing anything */
+#define __rh_config_h__
+
+/* pick which arch we are supposed to be */
+#undef __module__smp
+#define __module__up
+#define __module__i586
+#define __module__i586_up
+
+#if defined(__module__smp) || defined(__module__BOOTsmp) || defined(__module__enterprise) || defined(__module__bigmem)
+#define _ver_str(x) smp_ ## x
+#else
+#define _ver_str(x) x
+#endif
+
+#define RED_HAT_LINUX_KERNEL 1
+
+#endif /* _CONFIG_RH_I586_H_ */
+
diff --git a/packaging/redhat/config-i686-bigmem.h b/packaging/redhat/config-i686-bigmem.h
new file mode 100644
index 000000000..4d870cbaf
--- /dev/null
+++ b/packaging/redhat/config-i686-bigmem.h
@@ -0,0 +1,78 @@
+#ifndef _CONFIG_RH_I586_H_
+/*
+ * Copyright (C) 2002 Michael Richardson <mcr@freeswan.org>
+ *
+ * This kernel module is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version. See <http://www.fsf.org/copyleft/lgpl.txt>.
+ *
+ * This kernel module is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ * License for more details.
+ *
+ * RCSID $Id: config-i686-bigmem.h,v 1.1 2004/03/15 20:35:27 as Exp $
+ */
+#define _CONFIG_RH_I686_BIGMEM_H_ /* seen it, no need to see it again */
+
+#define CONFIG_IPSEC 1
+
+#ifndef CONFIG_IPSEC_AH
+#define CONFIG_IPSEC_AH 1
+#endif
+
+#ifndef CONFIG_IPSEC_DEBUG
+#define CONFIG_IPSEC_DEBUG 1
+#endif
+
+#ifndef CONFIG_IPSEC_ESP
+#define CONFIG_IPSEC_ESP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPCOMP
+#define CONFIG_IPSEC_IPCOMP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPIP
+#define CONFIG_IPSEC_IPIP 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_MD5
+#define CONFIG_IPSEC_AUTH_HMAC_MD5 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_SHA1
+#define CONFIG_IPSEC_AUTH_HMAC_SHA1 1
+#endif
+
+#ifndef CONFIG_IPSEC_DYNDEV
+#define CONFIG_IPSEC_DYNDEV 1
+#endif
+
+#ifndef CONFIG_IPSEC_ENC_3DES
+#define CONFIG_IPSEC_ENC_3DES 1
+#endif
+
+#ifndef CONFIG_IPSEC_REGRESS
+#define CONFIG_IPSEC_REGRESS 0
+#endif
+
+/* keep rhconfig.h from doing anything */
+#define __rh_config_h__
+
+/* pick which arch we are supposed to be */
+#undef __module__up
+#define __module__bigmem
+#define __module__i686_bigmem
+
+#if defined(__module__smp) || defined(__module__BOOTsmp) || defined(__module__enterprise) || defined(__module__bigmem)
+#define _ver_str(x) smp_ ## x
+#else
+#define _ver_str(x) x
+#endif
+
+#define RED_HAT_LINUX_KERNEL 1
+
+#endif /* _CONFIG_RH_I686_BIGMEM_H_ */
+
diff --git a/packaging/redhat/config-i686-smp.h b/packaging/redhat/config-i686-smp.h
new file mode 100644
index 000000000..9abd7a7d1
--- /dev/null
+++ b/packaging/redhat/config-i686-smp.h
@@ -0,0 +1,79 @@
+#ifndef _CONFIG_RH_I586_H_
+/*
+ * Copyright (C) 2002 Michael Richardson <mcr@freeswan.org>
+ *
+ * This kernel module is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version. See <http://www.fsf.org/copyleft/lgpl.txt>.
+ *
+ * This kernel module is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ * License for more details.
+ *
+ * RCSID $Id: config-i686-smp.h,v 1.1 2004/03/15 20:35:27 as Exp $
+ */
+#define _CONFIG_RH_I686_SMP_H_ /* seen it, no need to see it again */
+
+#define CONFIG_IPSEC 1
+
+#ifndef CONFIG_IPSEC_AH
+#define CONFIG_IPSEC_AH 1
+#endif
+
+#ifndef CONFIG_IPSEC_DEBUG
+#define CONFIG_IPSEC_DEBUG 1
+#endif
+
+#ifndef CONFIG_IPSEC_ESP
+#define CONFIG_IPSEC_ESP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPCOMP
+#define CONFIG_IPSEC_IPCOMP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPIP
+#define CONFIG_IPSEC_IPIP 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_MD5
+#define CONFIG_IPSEC_AUTH_HMAC_MD5 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_SHA1
+#define CONFIG_IPSEC_AUTH_HMAC_SHA1 1
+#endif
+
+#ifndef CONFIG_IPSEC_DYNDEV
+#define CONFIG_IPSEC_DYNDEV 1
+#endif
+
+#ifndef CONFIG_IPSEC_ENC_3DES
+#define CONFIG_IPSEC_ENC_3DES 1
+#endif
+
+#ifndef CONFIG_IPSEC_REGRESS
+#define CONFIG_IPSEC_REGRESS 0
+#endif
+
+/* keep rhconfig.h from doing anything */
+#define __rh_config_h__
+
+/* pick which arch we are supposed to be */
+#undef __module__up
+#define __module__smp
+#define __module__i686
+#define __module__i686_smp
+
+#if defined(__module__smp) || defined(__module__BOOTsmp) || defined(__module__enterprise) || defined(__module__bigmem)
+#define _ver_str(x) smp_ ## x
+#else
+#define _ver_str(x) x
+#endif
+
+#define RED_HAT_LINUX_KERNEL 1
+
+#endif /* _CONFIG_RH_I686_SMP_H_ */
+
diff --git a/packaging/redhat/config-i686.h b/packaging/redhat/config-i686.h
new file mode 100644
index 000000000..4e4d7b292
--- /dev/null
+++ b/packaging/redhat/config-i686.h
@@ -0,0 +1,79 @@
+#ifndef _CONFIG_RH_I586_H_
+/*
+ * Copyright (C) 2002 Michael Richardson <mcr@freeswan.org>
+ *
+ * This kernel module is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version. See <http://www.fsf.org/copyleft/lgpl.txt>.
+ *
+ * This kernel module is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ * License for more details.
+ *
+ * RCSID $Id: config-i686.h,v 1.1 2004/03/15 20:35:27 as Exp $
+ */
+#define _CONFIG_RH_I686_H_ /* seen it, no need to see it again */
+
+#define CONFIG_IPSEC 1
+
+#ifndef CONFIG_IPSEC_AH
+#define CONFIG_IPSEC_AH 1
+#endif
+
+#ifndef CONFIG_IPSEC_DEBUG
+#define CONFIG_IPSEC_DEBUG 1
+#endif
+
+#ifndef CONFIG_IPSEC_ESP
+#define CONFIG_IPSEC_ESP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPCOMP
+#define CONFIG_IPSEC_IPCOMP 1
+#endif
+
+#ifndef CONFIG_IPSEC_IPIP
+#define CONFIG_IPSEC_IPIP 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_MD5
+#define CONFIG_IPSEC_AUTH_HMAC_MD5 1
+#endif
+
+#ifndef CONFIG_IPSEC_AUTH_HMAC_SHA1
+#define CONFIG_IPSEC_AUTH_HMAC_SHA1 1
+#endif
+
+#ifndef CONFIG_IPSEC_DYNDEV
+#define CONFIG_IPSEC_DYNDEV 1
+#endif
+
+#ifndef CONFIG_IPSEC_ENC_3DES
+#define CONFIG_IPSEC_ENC_3DES 1
+#endif
+
+#ifndef CONFIG_IPSEC_REGRESS
+#define CONFIG_IPSEC_REGRESS 0
+#endif
+
+/* keep rhconfig.h from doing anything */
+#define __rh_config_h__
+
+/* pick which arch we are supposed to be */
+#undef __module__smp
+#define __module__up
+#define __module__i686
+#define __module__i686_up
+
+#if defined(__module__smp) || defined(__module__BOOTsmp) || defined(__module__enterprise) || defined(__module__bigmem)
+#define _ver_str(x) smp_ ## x
+#else
+#define _ver_str(x) x
+#endif
+
+#define RED_HAT_LINUX_KERNEL 1
+
+#endif /* _CONFIG_RH_I686_H_ */
+
diff --git a/packaging/redhat/freeswan.spec b/packaging/redhat/freeswan.spec
new file mode 100644
index 000000000..83b59fc8c
--- /dev/null
+++ b/packaging/redhat/freeswan.spec
@@ -0,0 +1,176 @@
+Summary: FreeS/WAN IPSEC implementation
+Name: freeswan
+Version: 2.04
+%define defkv %(rpm -q --qf='%{Version}-%{Release}\\n' kernel-source|tail -1)
+# The default kernel version to build for is the latest of
+# the installed kernel-source RPMs.
+# This can be overridden by "--define 'kversion x.x.x-y.y.y'"
+%{!?kversion: %{expand: %%define kversion %defkv}}
+%define krelver %(echo %{kversion} | tr -s '-' '_')
+# FreeS/WAN -pre/-rc nomenclature has to co-exist with hyphen paranoia
+%define srcpkgver %(echo %{version} | tr -s '_' '-')
+%define our_release 1fs
+%define debug_package %{nil}
+Release: %{our_release}
+License: GPL
+Url: http://www.freeswan.org/
+Source: freeswan-%{srcpkgver}.tar.gz
+Group: System Environment/Daemons
+BuildRoot: /var/tmp/%{name}-%{PACKAGE_VERSION}-root
+%define __spec_install_post /usr/lib/rpm/brp-compress || :
+BuildRequires: kernel-source = %{kversion}
+
+%package userland
+Summary: FreeS/WAN IPSEC usermod tools
+Group: System Environment/Daemons
+Provides: ipsec-userland
+Obsoletes: freeswan
+Requires: ipsec-kernel
+Release: %{our_release}
+
+%package doc
+Summary: FreeS/WAN IPSEC full documentation
+Group: System Environment/Daemons
+Release: %{our_release}
+
+%package module
+Summary: FreeS/Wan kernel module
+Group: System Environment/Kernel
+Release: %{krelver}_%{our_release}
+Provides: ipsec-kernel
+Requires: kernel = %{kversion}
+# do not make the dependancy circular for now.
+#Requires: ipsec-userland
+
+%description userland
+FreeS/WAN is a free implementation of IPSEC & IKE for Linux. IPSEC is
+the Internet Protocol Security and uses strong cryptography to provide
+both authentication and encryption services. These services allow you
+to build secure tunnels through untrusted networks. Everything passing
+through the untrusted net is encrypted by the ipsec gateway machine and
+decrypted by the gateway at the other end of the tunnel. The resulting
+tunnel is a virtual private network or VPN.
+
+This package contains the daemons and userland tools for setting up
+FreeS/WAN on a freeswan enabled kernel.
+
+%description module
+This package contains only the ipsec module for the RedHat series of kernels.
+
+%description doc
+This package contains extensive documentation of the FreeeS/WAN IPSEC
+system.
+
+%description
+A dummy package that installs userland and kernel pieces.
+
+%prep
+%setup -q -n freeswan-%{srcpkgver}
+
+%build
+%{__make} \
+ USERCOMPILE="-g %{optflags}" \
+ INC_USRLOCAL=%{_prefix} \
+ MANTREE=%{_mandir} \
+ INC_RCDEFAULT=%{_initrddir} \
+ programs
+FS=$(pwd)
+mkdir -p BUILD.%{_target_cpu}
+mkdir -p BUILD.%{_target_cpu}-smp
+
+cd packaging/redhat
+for smp in -smp ""
+do
+%{__make} -C $FS MODBUILDDIR=$FS/BUILD.%{_target_cpu}$smp \
+ FREESWANSRCDIR=$FS \
+ KERNELSRC=/usr/src/linux-%{kversion} \
+ ARCH=%{_arch} \
+ SUBARCH=%{_arch} \
+ MODULE_DEF_INCLUDE=$FS/packaging/redhat/config-%{_target_cpu}$smp.h \
+ module
+done
+
+%install
+%{__make} \
+ DESTDIR=%{buildroot} \
+ INC_USRLOCAL=%{_prefix} \
+ MANTREE=%{buildroot}%{_mandir} \
+ INC_RCDEFAULT=%{_initrddir} \
+ install
+install -d -m700 %{buildroot}%{_localstatedir}/run/pluto
+install -d %{buildroot}%{_sbindir}
+
+mkdir -p %{buildroot}/lib/modules/%{kversion}/kernel/net/ipsec
+cp BUILD.%{_target_cpu}/ipsec.o \
+ %{buildroot}/lib/modules/%{kversion}/kernel/net/ipsec
+
+mkdir -p %{buildroot}/lib/modules/%{kversion}smp/kernel/net/ipsec
+cp BUILD.%{_target_cpu}-smp/ipsec.o \
+ %{buildroot}/lib/modules/%{kversion}smp/kernel/net/ipsec
+
+%clean
+rm -rf ${RPM_BUILD_ROOT}
+
+%files doc
+%defattr(-,root,root)
+%doc doc
+%doc %{_defaultdocdir}/freeswan/ipsec.conf-sample
+
+%files userland
+%defattr(-,root,root)
+%doc BUGS CHANGES COPYING
+%doc CREDITS INSTALL README
+%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/ipsec.conf
+%attr(0700,root,root) %dir %{_sysconfdir}/ipsec.d
+%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/ipsec.d/policies/*
+%config(noreplace) %{_initrddir}/ipsec
+%{_libdir}/ipsec
+%{_sbindir}/ipsec
+%{_libexecdir}/ipsec
+%doc %{_mandir}/*/*
+%{_localstatedir}/run/pluto
+
+%files module
+%defattr (-,root,root)
+/lib/modules/%{kversion}/kernel/net/ipsec
+/lib/modules/%{kversion}smp/kernel/net/ipsec
+
+%pre userland
+%preun userland
+if [ $1 = 0 ]; then
+ /sbin/service ipsec stop || :
+ /sbin/chkconfig --del ipsec
+fi
+
+%postun userland
+if [ $1 -ge 1 ] ; then
+ /sbin/service ipsec stop 2>&1 > /dev/null && /sbin/service ipsec start 2>&1 > /dev/null || :
+fi
+
+%postun module
+%post module
+
+%post userland
+chkconfig --add ipsec
+
+%changelog
+* Fri Aug 22 2003 Sam Sgro <sam@freeswan.org>
+- Juggling release/source package names to allow for
+ -pre/-rc releases to build.
+
+* Thu Aug 14 2003 Sam Sgro <sam@freeswan.org>
+- Reverting back to pre-x.509 version, cosmetic changes.
+
+* Tue May 20 2003 Charlie Brady <charlieb@e-smith.com> 2.0.0-x509_1.3.2_2es
+- Add "Obsoletes: freeswan" to userland RPM.
+
+* Fri May 16 2003 Charlie Brady <charlieb@e-smith.com> 2.0.0-x509_1.3.2_1es
+- Add version 1.3.2 of the x509 patch.
+- Add missing /usr/libexec/ipsec dir and files.
+- Minor tidy up of spec file.
+
+* Thu May 15 2003 Charlie Brady <charlieb@e-smith.com> 2.0.0-1es
+- Based on work by Paul Lahaie of Steamballoon, Michael
+ Richardson of freeS/WAN team and Tuomo Soini <tis@foobar.fi>.
+- Build freeswan RPMs from a single source RPM, for RedHat, but
+ should work on any RPM based system.
diff --git a/packaging/redhat/kernel-list.txt b/packaging/redhat/kernel-list.txt
new file mode 100644
index 000000000..e24d827e1
--- /dev/null
+++ b/packaging/redhat/kernel-list.txt
@@ -0,0 +1,9 @@
+athlon-smp i386 i386
+athlon i386 i386
+i386-smp i386 i386
+i386 i386 i386
+i586-smp i386 i386
+i586 i386 i386
+i686-smp i386 i386
+i686-bigmem i386 i386
+i686 i386 i386
diff --git a/packaging/redhat/rpm.in b/packaging/redhat/rpm.in
new file mode 100644
index 000000000..4ede8ebc5
--- /dev/null
+++ b/packaging/redhat/rpm.in
@@ -0,0 +1,149 @@
+# fairly minimal RPM spec file, does only packaging
+# Based on work by Paul Lahaie of Steamballoon.
+# This file is touched up by sed (in the Makefile) before it is actually used.
+Summary: Kernel with FreeS/WAN
+Name: freeswan
+Version: @IPSECVERSION@_@KERNELVERSION@
+Release: 0
+Copyright: GPL
+Source: freeswan-%{version}.tar.gz
+Group: System Environment/Daemons
+BuildRoot: /var/tmp/%{name}-%{PACKAGE_VERSION}-root
+%define __spec_install_post /usr/lib/rpm/brp-compress || :
+%define KernelVer @KERNELVERSIONORIG@
+Requires: ipsec-userland ipsec-kernel
+
+%package userland
+Summary: Kernel with FreeS/WAN
+Group: System Environment/Daemons
+Provides: ipsec-userland
+Requires: ipsec-kernel
+
+%package module
+Summary: FreeS/Wan kernel module
+Group: System Environment/Kernel
+Provides: ipsec-kernel
+# do not make the dependancy circular for now.
+#Requires: ipsec-userland
+
+%description userland
+This package contains the daemons and userland tools for setting up
+FreeS/WAN on a freeswan enabled kernel.
+
+%description module
+This package contains only the ipsec module for the RedHat series of kernels.
+
+%description
+A dummy package that installs userland and kernel pieces.
+
+%prep
+
+%build
+
+%install
+
+%clean
+rm -rf ${RPM_BUILD_ROOT}
+
+%files userland
+%defattr(-,root,root)
+@PUBDIR@/ipsec
+@FINALBINDIR@/*
+@FINALLIBDIR@/*
+/etc/rc.d/init.d/ipsec
+
+%attr(0644,root,root) %config @FINALCONFDIR@/ipsec.conf
+%attr(0644,root,root) %config @FINALCONFDDIR@/policies/clear
+%attr(0644,root,root) %config @FINALCONFDDIR@/policies/private
+%attr(0644,root,root) %config @FINALCONFDDIR@/policies/block
+%attr(0644,root,root) %config @FINALCONFDDIR@/policies/private-or-clear
+%attr(0644,root,root) %config @FINALCONFDDIR@/policies/clear-or-private
+
+%doc @MANTREE@/man3/*
+%doc @MANTREE@/man5/*
+%doc @MANTREE@/man8/*
+%doc @FINALEXAMPLECONFDIR@/*
+
+%files module
+%defattr (-,root,root)
+/lib/modules/%{KernelVer}/kernel/net/ipsec
+
+%pre userland
+if [ -f /etc/ipsec.conf ]
+then
+ cp -f --backup=t /etc/ipsec.conf /etc/ipsec.conf.prerpm > /dev/null 2> /dev/null
+fi
+
+%preun userland
+sh /etc/rc.d/init.d/ipsec stop || exit 0
+
+%postun module
+# This is a kludge to handle the fact that ipsec.o is not deleted
+# on plain jane RPM uninstall.
+for i in /lib/modules/*@KERNELVERSIONORIG@*
+ do
+ mv -f --backup=t "$i"/kernel/net/ipsec/ipsec.o "$i"/kernel/net/ipsec/ipsec.o.rpmbak > /dev/null 2> /dev/null
+ done || exit 0
+
+%post module
+# Same RPM uninstall kludge.
+for i in /lib/modules/*@KERNELVERSIONORIG@*
+ do
+ mv -f --backup=t "$i"/kernel/net/ipsec/ipsec.o "$i"/kernel/net/ipsec/ipsec.o.rpmbak > /dev/null 2> /dev/null
+ done
+echo "do not forget to install the userland utilities"
+exit 0
+
+%post userland
+chkconfig --add ipsec
+echo "invoke \"service ipsec start\" or reboot to begin"
+
+%changelog
+#
+# $Log: rpm.in,v $
+# Revision 1.1 2004/03/15 20:35:27 as
+# added files from freeswan-2.04-x509-1.5.3
+#
+# Revision 1.6 2003/01/30 23:31:34 sam
+#
+# dhr contributed changes. still may need modification, but I'm committing
+# before I leave.
+#
+# Revision 1.5 2003/01/14 22:03:44 sam
+# include policy files in RPM.
+#
+# Revision 1.4 2003/01/04 07:38:11 build
+# *** empty log message ***
+#
+# Revision 1.3 2002/12/12 05:45:41 sam
+# new template file from 1.99 pulled up in part
+#
+# Revision 1.2.2.1 2002/12/07 23:47:22 sam
+# merging in a few 1.99 rpm.in changes.
+#
+# Revision 1.2 2002/10/30 06:54:15 sam
+# Updates to take into account lib vs libexec - so we don't miss files.
+#
+# Revision 1.1 2002/10/06 08:35:54 sam
+# RPM template
+#
+# Revision 1.9 2002/06/16 21:53:49 mcr
+# added missing clauses to userland section.
+#
+# Revision 1.8 2002/06/16 20:18:41 mcr
+# 2.00 series RPM will have a "freeswan-userland" rather than
+# a "freeswan-X" RPM. Among other things, it makes regexp easier
+# to locate the different pieces.
+#
+# Revision 1.7 2002/06/11 23:10:53 mcr
+# added dependancies from userland->kernel.
+# cross-dependancies considered but cause too much user pain.
+#
+# Revision 1.6 2002/06/09 15:46:41 mcr
+# move installed modules for make rpm to kernel versioned directory.
+#
+# Revision 1.5 2002/04/11 02:50:30 mcr
+# added %post to make ipsec start, and %post to shut it down.
+# added %changelog as well.
+#
+#