From 3fbf706c2e3d56272e71259100353af20fbfdd20 Mon Sep 17 00:00:00 2001
From: James Meyer <james.meyer@operamail.com>
Date: Mon, 6 Aug 2012 21:49:07 -0500
Subject: krb5 1.10.2 -new

---
 abs/core/krb5/PKGBUILD                | 92 +++++++++++++++++++++++++++++++++++
 abs/core/krb5/krb5-1.10.1-gcc47.patch | 11 +++++
 abs/core/krb5/krb5-kadmind            | 40 +++++++++++++++
 abs/core/krb5/krb5-kadmind.service    |  8 +++
 abs/core/krb5/krb5-kdc                | 40 +++++++++++++++
 abs/core/krb5/krb5-kdc.service        |  9 ++++
 abs/core/krb5/krb5-kpropd             | 40 +++++++++++++++
 abs/core/krb5/krb5-kpropd.service     |  8 +++
 abs/core/krb5/krb5-kpropd.socket      |  9 ++++
 abs/core/krb5/krb5-kpropd@.service    |  8 +++
 10 files changed, 265 insertions(+)
 create mode 100644 abs/core/krb5/PKGBUILD
 create mode 100644 abs/core/krb5/krb5-1.10.1-gcc47.patch
 create mode 100644 abs/core/krb5/krb5-kadmind
 create mode 100644 abs/core/krb5/krb5-kadmind.service
 create mode 100644 abs/core/krb5/krb5-kdc
 create mode 100644 abs/core/krb5/krb5-kdc.service
 create mode 100644 abs/core/krb5/krb5-kpropd
 create mode 100644 abs/core/krb5/krb5-kpropd.service
 create mode 100644 abs/core/krb5/krb5-kpropd.socket
 create mode 100644 abs/core/krb5/krb5-kpropd@.service

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
-- 
cgit v0.12

