aboutsummaryrefslogtreecommitdiffstats
path: root/main/krb5/APKBUILD
blob: 23216d9569531bc1c939c546a86c5886c9de86db (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=krb5
pkgver=1.13.6
pkgrel=0

case $pkgver in
*.*.*) _ver=${pkgver%.*};;
*) _ver=${pkgver};;
esac

pkgdesc="The Kerberos network authentication system"
url="http://web.mit.edu/kerberos/www/"
arch="all"
license="MIT"
depends="krb5-conf"
depends_dev="e2fsprogs-dev"
makedepends="$depends_dev libverto-dev openldap-dev openssl-dev
	keyutils-dev bison flex perl"
install=""
options="suid"
subpackages="$pkgname-dev $pkgname-doc $pkgname-server
	$pkgname-server-ldap:ldap $pkgname-pkinit $pkgname-libs"
source="http://web.mit.edu/kerberos/dist/krb5/${_ver}/krb5-$pkgver.tar.gz

	krb5kadmind.initd
	krb5kdc.initd
	krb5kpropd.initd
	"

# secfixes:
#   1.13.6-r0:
#   - CVE-2016-3120 

_builddir="$srcdir"/krb5-$pkgver
unpack() {
	default_unpack
	cd "$srcdir"
	tar -zxf krb5-$pkgver.tar.gz
}

prepare() {
	local i
	cd "$_builddir"
	for i in $source; do
		case $i in
		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
		esac
	done
}

build() {
	cd "$_builddir"/src
	./configure \
		CPPFLAGS="$CPPFLAGS -fPIC -I/usr/include/et" \
		WARN_CFLAGS= \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--localstatedir=/var/lib \
		--enable-shared \
		--disable-static \
		--disable-rpath \
		--with-system-et \
		--with-system-ss \
		--with-system-verto \
		--without-tcl \
		--with-ldap \
		--with-crypto-impl=openssl \
		|| return 1
	make
}

package() {
	cd "$_builddir"/src
	make install DESTDIR="$pkgdir" || return 1
	mkdir -p "$pkgdir"/usr/share/doc/$pkgname
	mv "$pkgdir"/usr/share/examples "$pkgdir"/usr/share/doc/$pkgname/

	for i in $source; do
		case $i in
		*.initd) install -Dm755 "$srcdir"/$i \
			"$pkgdir"/etc/init.d/${i%.initd};;
		esac
	done
}

server() {
	pkgdesc="The KDC and related programs for Kerberos 5"
	depends="libverto-libev"
	mkdir -p "$subpkgdir"/usr/share \
		"$subpkgdir"/usr/bin \
		"$subpkgdir"/etc/
	install -d "$subpkgdir"/var/lib/krb5kdc || return 1
	mv "$pkgdir"/usr/sbin "$subpkgdir"/usr/ || return 1
	mv "$pkgdir"/etc/init.d "$subpkgdir"/etc/ || return 1
	# used for testing server
	mv "$pkgdir"/usr/bin/sclient "$subpkgdir"/usr/bin/

}

ldap() {
	pkgdesc="The LDAP storage plugin for the Kerberos 5 KDC"
	mkdir -p "$subpkgdir"/usr/lib/krb5/plugins/kdb
	mv "$pkgdir"/usr/lib/krb5/plugins/kdb/kldap.so \
		"$subpkgdir"/usr/lib/krb5/plugins/kdb/ || return 1
	mv "$pkgdir"/usr/lib/libkdb_ldap* \
		 "$subpkgdir"/usr/lib/
}

pkinit() {
	pkgdesc="The PKINIT module for Kerberos 5"
	mkdir -p "$subpkgdir"/usr/lib/krb5/plugins/preauth
	mv "$pkgdir"/usr/lib/krb5/plugins/preauth/pkinit.so \
		"$subpkgdir"/usr/lib/krb5/plugins/preauth/pkinit.so
}

libs() {
	pkgdesc="The shared libraries used by Kerberos 5"
	depends="krb5-conf"
	mkdir -p "$subpkgdir"/usr/
	mv "$pkgdir"/usr/lib "$subpkgdir"/usr/ || return 1
}
md5sums="6164ca9c075b4ecc68eadd6d13040417  krb5-1.13.6.tar.gz
9c0e3bac122326cdbbbac068056ee8af  krb5kadmind.initd
71131479c07a2d89b30a2ea18dd64e74  krb5kdc.initd
d94873a6a1ac6277adf2d25458eda9e5  krb5kpropd.initd"
sha256sums="9c0a46b8918237a53916370d2e02298c2b294f55f0351f9404e18930bc26badc  krb5-1.13.6.tar.gz
213a5b04f091e4644e856aabc38da586bd86c4616ab15f00eefca52fca7137d6  krb5kadmind.initd
577842c7fe4639a8e9dd349da40e514284dd53440bb71be58283faaf18508f9a  krb5kdc.initd
1644639d83791bd871f3c89a53a7052ab52994d3ef03d1d675d4217130c1fa94  krb5kpropd.initd"
sha512sums="9a12e4dde9bedfecb4ea01aa81b0a58bbb7de2393fa2f3229dc3336b5f729a6cd3c66848b4ff0170c1524174ea25ecc00221f5793d1e7b683f2bf7924196c2be  krb5-1.13.6.tar.gz
43b9885b7eb8d0d60920def688de482f2b1701288f9acb1bb21dc76b2395428ff304961959eb04ba5eafd0412bae35668d6d2c8223424b9337bc051eadf51682  krb5kadmind.initd
ede15f15bbbc9d0227235067abe15245bb9713aea260d397379c63275ce74aea0db6c91c15d599e40c6e89612d76f3a0f8fdd21cbafa3f30d426d4310d3e2cec  krb5kdc.initd
45be0d421efd41e9dd056125a750c90856586e990317456b68170d733b03cba9ecd18ab87603b20e49575e7839fb4a6d628255533f2631f9e8ddb7f3cc493a90  krb5kpropd.initd"