# Maintainer: Clayton Craft # Contributor: Valery Kartel # Contributor: Jakub Jirutka pkgname=connman pkgver=1.42 pkgrel=0 pkgdesc="Daemon for managing internet connections" url="https://git.kernel.org/pub/scm/network/connman/connman.git" arch="all" license="GPL-2.0-only" depends="dbus" makedepends=" autoconf automake dbus-dev glib-dev iptables-dev libmnl-dev libnftnl-dev libtool openvpn ppp-dev readline-dev vpnc wpa_supplicant xl2tpd " install="$pkgname.post-upgrade" subpackages=" $pkgname-dbg $pkgname-iptables $pkgname-nftables $pkgname-l2tp $pkgname-openvpn $pkgname-vpnc $pkgname-wireguard $pkgname-dev $pkgname-doc $pkgname-openrc " source="https://www.kernel.org/pub/linux/network/connman/connman-$pkgver.tar.xz libresolv.patch dbus-rules.patch implicit.patch ppp-missing-header.patch openvpn.conf $pkgname.initd $pkgname.confd " # secfixes: # 1.41-r0: # - CVE-2022-23096 # - CVE-2022-23097 # - CVE-2022-23098 # 1.39-r0: # - CVE-2021-26675 # - CVE-2021-26676 prepare() { default_prepare autoreconf -vif cp -r "$builddir" "$builddir~nftables" } _build() { ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --localstatedir=/var \ --disable-wispr \ --enable-pie \ --enable-iwd \ --enable-nmcompat \ --enable-wireguard \ --enable-openvpn \ --enable-l2tp \ --enable-vpnc \ "$@" make } build() { cd "$builddir~nftables" _build --with-firewall=nftables cd "$builddir" _build --with-firewall=iptables # this is the default value } check() { make check } package() { # Provided by connman-iptables or connman-nftables (mutually exclusive). # NOTE: It must be defined here, not on top-level! depends="$depends cmd:connmand=$pkgver-r$pkgrel" make install DESTDIR="$pkgdir" install -Dm644 src/main.conf "$pkgdir"/etc/$pkgname/main.conf install -Dm644 "$srcdir"/openvpn.conf -t "$pkgdir"/etc/$pkgname/vpn-plugin/ mv "$pkgdir"/usr/sbin/connmand "$pkgdir"/usr/sbin/connmand.iptables install -D -m 755 "$builddir~nftables"/src/connmand "$pkgdir"/usr/sbin/connmand.nftables install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname } iptables() { pkgdesc="ConnMan daemon built with iptables support" depends="!$pkgname-nftables" provider_priority=20 # highest replaces="$pkgname $pkgname-nftables" amove usr/sbin/connmand.iptables ln -s connmand.iptables "$subpkgdir"/usr/sbin/connmand } nftables() { pkgdesc="ConnMan daemon built with nftables support" depends="!$pkgname-iptables" provider_priority=10 # lowest replaces="$pkgname $pkgname-iptables" amove usr/sbin/connmand.nftables ln -s connmand.nftables "$subpkgdir"/usr/sbin/connmand } l2tp() { pkgdesc="L2TP VPN plugin for ConnMan" depends="$pkgname=$pkgver-r$pkgrel xl2tpd" amove usr/lib/connman/plugins-vpn/l2tp.so amove usr/lib/connman/scripts/libppp-plugin.so } openvpn() { pkgdesc="OpenVPN plugin for ConnMan" depends="$pkgname=$pkgver-r$pkgrel openvpn" replaces="$pkgname" # for backward compatibility amove etc/connman/vpn-plugin/openvpn.conf amove usr/lib/connman/plugins-vpn/openvpn.so amove usr/lib/connman/scripts/openvpn-script echo 'tun' | install -Dm644 /dev/stdin \ "$subpkgdir"/usr/lib/modules-load.d/$subpkgname.conf } vpnc() { pkgdesc="IPsec (Cisco/Juniper) VPN plugin for ConnMan" depends="$pkgname=$pkgver-r$pkgrel vpnc" amove usr/lib/connman/plugins-vpn/vpnc.so } wireguard() { pkgdesc="WireGuard VPN plugin for ConnMan" depends="$pkgname=$pkgver-r$pkgrel" replaces="$pkgname" # for backward compatibility amove usr/lib/connman/plugins-vpn/wireguard.so } sha512sums=" d919080b91fb61806c0e948be14e26bfe5d2501865f76b2e2dddd4cef8c46c0f7aa26406ed938b347889e48adc726e53bbb415bf9c280f9310597045da784ace connman-1.42.tar.xz 122b48fc9e25354e25ba3a3e0864bdd84da84457fed94aeea726bcb189b2f05f2cc361ae15f44af5c49bcee572e91e4c0488ef3b0bc79d20f6efe15853fb6b3a libresolv.patch 0223dba51be67c131c297d0e865fe1276e4800be5eee25c4f142df8e651318bf5dae98c1d559bb70c002cdfc3ce3c24d12128ddca5656192f962d91af6906caa dbus-rules.patch e4095b51de42b31da6bc892e70be6dbcb34451348e90f50f1779c31a11a6b69013f50bafe156aacdfce4b49c2abdbd56cea62ecec20427bf2f6f942777f3c270 implicit.patch e6caff8721324a5d02465da53fcca9616d0812c3fd36e874e96919bcc252cfcc471ed2d7f95e3cf24a0930fb3611b49171fe29b9e6f25f567c9a5375f34954df ppp-missing-header.patch 7f90bfdbe27a468c401bde04ccedc7d15afba11ca460ee6155233c3ef99285033303cbf7afac3849cbcd6e95a90eae5bdc772e416aef57e5ada7c4eed38f4de9 openvpn.conf f5cdeba7ebdbe52424ebe74088d57ff57d45dcdbfa6f17cfe7bfa59308c8188174e0f44a86ffaea8a7247793fbffc1463bbd791033e188f1f44f80847fbf71e0 connman.initd 73f505a777df04039ca51bc3959aa89969a0bbc21ea971fb98e04e9b5851553de35955453ed859f5a6273724bbcce38f13012950c6cb4e0a2bc80bc531ccff1e connman.confd "