summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--abs/core/krb5/PKGBUILD92
-rw-r--r--abs/core/krb5/krb5-1.10.1-gcc47.patch11
-rw-r--r--abs/core/krb5/krb5-kadmind40
-rw-r--r--abs/core/krb5/krb5-kadmind.service8
-rw-r--r--abs/core/krb5/krb5-kdc40
-rw-r--r--abs/core/krb5/krb5-kdc.service9
-rw-r--r--abs/core/krb5/krb5-kpropd40
-rw-r--r--abs/core/krb5/krb5-kpropd.service8
-rw-r--r--abs/core/krb5/krb5-kpropd.socket9
-rw-r--r--abs/core/krb5/krb5-kpropd@.service8
10 files changed, 265 insertions, 0 deletions
diff --git a/abs/core/krb5/PKGBUILD b/abs/core/krb5/PKGBUILD
new file mode 100644
index 0000000..7452e06
--- /dev/null
+++ b/abs/core/krb5/PKGBUILD
@@ -0,0 +1,92 @@
+# $Id: PKGBUILD 162178 2012-06-22 17:24:25Z stephane $
+# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
+
+pkgname=krb5
+pkgver=1.10.2
+pkgrel=2
+pkgdesc="The Kerberos network authentication system"
+arch=('i686' 'x86_64')
+url="http://web.mit.edu/kerberos/"
+license=('custom')
+depends=('e2fsprogs' 'libldap' 'keyutils')
+makedepends=('perl')
+backup=('etc/krb5.conf' 'var/lib/krb5kdc/kdc.conf')
+source=(http://web.mit.edu/kerberos/dist/${pkgname}/1.10/${pkgname}-${pkgver}-signed.tar
+ krb5-1.10.1-gcc47.patch
+ krb5-kadmind
+ krb5-kadmind.service
+ krb5-kdc
+ krb5-kdc.service
+ krb5-kpropd
+ krb5-kpropd.service
+ krb5-kpropd@.service
+ krb5-kpropd.socket)
+sha1sums=('8b6e2c5bf0c65aacd368b3698add7888f2a7332d'
+ '78b759d566b1fdefd9bbcd06df14f07f12effe96'
+ '2aa229369079ed1bbb201a1ef72c47bf143f4dbe'
+ 'a2a01e7077d9e89cda3457ea0e216debb3dc353c'
+ '77d2312ecd8bf12a6e72cc8fd871a8ac93b23393'
+ 'f5e4fa073e11b0fcb4e3098a5d58a4f791ec841e'
+ '7f402078fa65bb9ff1beb6cbbbb017450df78560'
+ '614401dd4ac18e310153240bb26eb32ff1e8cf5b'
+ '023a8164f8ee7066ac814486a68bc605e79f6101'
+ 'f3677d30dbbd7106c581379c2c6ebb1bf7738912')
+options=('!emptydirs')
+
+build() {
+ tar zxvf ${pkgname}-${pkgver}.tar.gz
+ cd "${srcdir}/${pkgname}-${pkgver}/src"
+
+ # With gcc47 : deltat.c:1694:12: error: 'yylval' may be used uninitialized
+ # in this function [-Werror=maybe-uninitialized]
+ # As this is generated code, just ignore the complaint.
+ patch -Np2 -i ../../krb5-1.10.1-gcc47.patch
+ rm lib/krb5/krb/deltat.c
+
+ # FS#25384
+ sed -i "/KRB5ROOT=/s/\/local//" util/ac_check_krb5.m4
+
+ export CFLAGS+=" -fPIC -fno-strict-aliasing -fstack-protector-all"
+ export CPPFLAGS+=" -I/usr/include/et"
+ ./configure --prefix=/usr \
+ --mandir=/usr/share/man \
+ --localstatedir=/var/lib \
+ --enable-shared \
+ --with-system-et \
+ --with-system-ss \
+ --disable-rpath \
+ --without-tcl \
+ --enable-dns-for-realm \
+ --with-ldap \
+ --without-system-verto
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}/src"
+ make DESTDIR="${pkgdir}" EXAMPLEDIR=/usr/share/doc/${pkgname}/examples install
+
+ # Fix FS#29889
+ install -m 644 plugins/kdb/ldap/libkdb_ldap/kerberos.{ldif,schema} "${pkgdir}"/usr/share/doc/${pkgname}/examples
+
+ # Sample KDC config file
+ install -dm 755 "${pkgdir}"/var/lib/krb5kdc
+ install -pm 644 config-files/kdc.conf "${pkgdir}"/var/lib/krb5kdc/kdc.conf
+
+ # Default configuration file
+ install -dm 755 "${pkgdir}"/etc
+ install -pm 644 config-files/krb5.conf "${pkgdir}"/etc/krb5.conf
+
+ install -dm 755 "${pkgdir}"/etc/rc.d
+ install -m 755 ../../krb5-{kdc,kadmind,kpropd} "${pkgdir}"/etc/rc.d
+
+ install -dm 755 "${pkgdir}"/usr/share/aclocal
+ install -m 644 util/ac_check_krb5.m4 "${pkgdir}"/usr/share/aclocal
+
+ install -Dm644 "${srcdir}"/${pkgname}-${pkgver}/NOTICE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+
+ # systemd stuff
+ install -dm 755 "${pkgdir}"/usr/lib/systemd/system
+ install -m 644 ../../krb5-{kadmind.service,kdc.service,kpropd.service,kpropd@.service,kpropd.socket} \
+ "${pkgdir}"/usr/lib/systemd/system
+}
diff --git a/abs/core/krb5/krb5-1.10.1-gcc47.patch b/abs/core/krb5/krb5-1.10.1-gcc47.patch
new file mode 100644
index 0000000..ffd01c2
--- /dev/null
+++ b/abs/core/krb5/krb5-1.10.1-gcc47.patch
@@ -0,0 +1,11 @@
+diff -Naur krb5-1.10.1.ori/src/lib/krb5/krb/x-deltat.y krb5-1.10.1/src/lib/krb5/krb/x-deltat.y
+--- krb5-1.10.1.ori/src/lib/krb5/krb/x-deltat.y 2011-09-06 07:34:32.000000000 -0400
++++ krb5-1.10.1/src/lib/krb5/krb/x-deltat.y 2012-03-24 13:15:11.543551318 -0400
+@@ -44,6 +44,7 @@
+ #ifdef __GNUC__
+ #pragma GCC diagnostic push
+ #pragma GCC diagnostic ignored "-Wuninitialized"
++#pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
+ #endif
+
+ #include <ctype.h>
diff --git a/abs/core/krb5/krb5-kadmind b/abs/core/krb5/krb5-kadmind
new file mode 100644
index 0000000..04df0dc
--- /dev/null
+++ b/abs/core/krb5/krb5-kadmind
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+# general config
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/kadmind`
+case "$1" in
+ start)
+ stat_busy "Starting Kerberos Admin Daemon"
+ if [ -z "$PID" ]; then
+ /usr/sbin/kadmind
+ fi
+ if [ ! -z "$PID" -o $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon krb5-kadmind
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping Kerberos Admin Daemon"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon krb5-kadmind
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+ ;;
+esac
+exit 0
diff --git a/abs/core/krb5/krb5-kadmind.service b/abs/core/krb5/krb5-kadmind.service
new file mode 100644
index 0000000..f3836c8
--- /dev/null
+++ b/abs/core/krb5/krb5-kadmind.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=Kerberos 5 administration server
+
+[Service]
+ExecStart=/usr/sbin/kadmind -nofork
+
+[Install]
+WantedBy=multi-user.target
diff --git a/abs/core/krb5/krb5-kdc b/abs/core/krb5/krb5-kdc
new file mode 100644
index 0000000..05a0341
--- /dev/null
+++ b/abs/core/krb5/krb5-kdc
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+# general config
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/krb5kdc`
+case "$1" in
+ start)
+ stat_busy "Starting Kerberos Authentication"
+ if [ -z "$PID" ]; then
+ /usr/sbin/krb5kdc
+ fi
+ if [ ! -z "$PID" -o $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon krb5-kdc
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping Kerberos Authentication"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon krb5-kdc
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+ ;;
+esac
+exit 0
diff --git a/abs/core/krb5/krb5-kdc.service b/abs/core/krb5/krb5-kdc.service
new file mode 100644
index 0000000..6ec93bb
--- /dev/null
+++ b/abs/core/krb5/krb5-kdc.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Kerberos 5 KDC
+
+[Service]
+ExecStart=/usr/sbin/krb5kdc -n
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
diff --git a/abs/core/krb5/krb5-kpropd b/abs/core/krb5/krb5-kpropd
new file mode 100644
index 0000000..a0077d6
--- /dev/null
+++ b/abs/core/krb5/krb5-kpropd
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+# general config
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/kpropd`
+case "$1" in
+ start)
+ stat_busy "Starting Kerberos Database Propagation Daemon"
+ if [ -z "$PID" ]; then
+ /usr/sbin/kpropd -S
+ fi
+ if [ ! -z "$PID" -o $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon kpropd
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping Kerberos Database Propagation Daemon"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon kpropd
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+ ;;
+esac
+exit 0
diff --git a/abs/core/krb5/krb5-kpropd.service b/abs/core/krb5/krb5-kpropd.service
new file mode 100644
index 0000000..a7c5b57
--- /dev/null
+++ b/abs/core/krb5/krb5-kpropd.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=Kerberos 5 propagation server
+
+[Service]
+ExecStart=/usr/sbin/kpropd -S
+
+[Install]
+WantedBy=multi-user.target
diff --git a/abs/core/krb5/krb5-kpropd.socket b/abs/core/krb5/krb5-kpropd.socket
new file mode 100644
index 0000000..4389290
--- /dev/null
+++ b/abs/core/krb5/krb5-kpropd.socket
@@ -0,0 +1,9 @@
+[Unit]
+Description=Kerberos 5 propagation server
+
+[Socket]
+ListenStream=754
+Accept=yes
+
+[Install]
+WantedBy=sockets.target
diff --git a/abs/core/krb5/krb5-kpropd@.service b/abs/core/krb5/krb5-kpropd@.service
new file mode 100644
index 0000000..46f7e36
--- /dev/null
+++ b/abs/core/krb5/krb5-kpropd@.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=Kerberos 5 propagation server
+Conflicts=krb5-kpropd.service
+
+[Service]
+ExecStart=/usr/sbin/kpropd
+StandardInput=socket
+StandardError=syslog