summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--community/bmake/PKGBUILD3
-rw-r--r--community/converseen/PKGBUILD4
-rw-r--r--community/cuneiform/PKGBUILD4
-rw-r--r--community/cython/PKGBUILD8
-rw-r--r--community/i3-wm/PKGBUILD12
-rw-r--r--community/i3-wm/bugfix_dont_focus_unmapped_container_on_manage.patch13
-rw-r--r--community/jwm/PKGBUILD6
-rw-r--r--community/marco/PKGBUILD8
-rw-r--r--community/mpv/PKGBUILD16
-rw-r--r--community/squid/PKGBUILD8
-rw-r--r--community/synfig/PKGBUILD4
-rw-r--r--core/nfs-utils/PKGBUILD58
-rw-r--r--core/nfs-utils/blkmapd.service12
-rw-r--r--core/nfs-utils/nfs-client.target8
-rw-r--r--core/nfs-utils/nfs-common.conf20
-rw-r--r--core/nfs-utils/nfs-server.conf15
-rw-r--r--core/nfs-utils/nfs-server.target10
-rw-r--r--core/nfs-utils/nfs-utils-1.1.4-no-exec.patch15
-rw-r--r--core/nfs-utils/nfs-utils-1.3.1-rc2.patch674
-rw-r--r--core/nfs-utils/nfs-utils.install14
-rw-r--r--core/nfs-utils/nfs-utils_env.sh20
-rw-r--r--core/nfs-utils/nfsd.service20
-rw-r--r--core/nfs-utils/proc-fs-nfsd.mount8
-rw-r--r--core/nfs-utils/rpc-gssd.service15
-rw-r--r--core/nfs-utils/rpc-idmapd.service15
-rw-r--r--core/nfs-utils/rpc-mountd.service15
-rw-r--r--core/nfs-utils/rpc-statd.service16
-rw-r--r--core/nfs-utils/rpc-svcgssd.service15
-rw-r--r--core/nfs-utils/start-statd.patch10
-rw-r--r--core/nfs-utils/var-lib-nfs-rpc_pipefs.mount7
-rw-r--r--core/rpcbind/PKGBUILD28
-rw-r--r--core/rpcbind/rpcbind.conf3
-rw-r--r--core/rpcbind/rpcbind.service12
-rw-r--r--core/rpcbind/rpcbind.socket8
-rw-r--r--extra/flac/PKGBUILD14
-rw-r--r--extra/flac/flac-realloc.patch15
-rw-r--r--extra/git/PKGBUILD9
-rw-r--r--extra/imagemagick/PKGBUILD6
-rw-r--r--extra/inkscape/PKGBUILD4
-rw-r--r--extra/intel-tbb/PKGBUILD6
-rw-r--r--extra/mesa/PKGBUILD10
-rw-r--r--extra/nginx/PKGBUILD7
-rw-r--r--extra/php/PKGBUILD6
-rw-r--r--extra/pptpclient/PKGBUILD39
-rw-r--r--extra/pstoedit/PKGBUILD4
-rw-r--r--extra/qtcreator/PKGBUILD4
-rw-r--r--extra/rsync/PKGBUILD21
47 files changed, 914 insertions, 335 deletions
diff --git a/community/bmake/PKGBUILD b/community/bmake/PKGBUILD
index b75d1be32..02e3525f8 100644
--- a/community/bmake/PKGBUILD
+++ b/community/bmake/PKGBUILD
@@ -3,7 +3,7 @@
# Contributor: Imanol Celaya <ilcra1989@gmail.com>
pkgname=bmake
-pkgver=20140522
+pkgver=20140620
pkgrel=1
pkgdesc="Portable version of the NetBSD 'make' build tool"
arch=('i686' 'x86_64')
@@ -14,6 +14,7 @@ sha256sums=('0a91ac60b82270c4b4f21a43e66eb51c32b4df55e01ea592e42eb323909a559b')
sha256sums=('0f7ecadb6dcd5e4902a03137daba6fd7756f54e82942b524f3b38d7406b6d83e')
sha256sums=('2ec1771a800431c26361659ab0f96ec5c2536e85b46564eb69fa75a4b12886de')
sha256sums=('0982d85e933eaa39bd7a5dc834e9b7b93b3b6eda5adfb0fb1a2dacc8878e5860')
+sha256sums=('bd9d24d131a78c1ab77b1d2e165317549e2df88637b8caa169e985f725469626')
prepare() {
cd "$srcdir/$pkgname"
diff --git a/community/converseen/PKGBUILD b/community/converseen/PKGBUILD
index b6e9b9fb6..93cb55cfe 100644
--- a/community/converseen/PKGBUILD
+++ b/community/converseen/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 113312 2014-06-17 19:25:55Z eric $
+# $Id: PKGBUILD 113640 2014-06-26 17:45:37Z eric $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: archtux <antonio.arias99999 at gmail.com>
pkgname=converseen
pkgver=0.7.2
-pkgrel=2
+pkgrel=3
pkgdesc="The batch image converter and resizer"
arch=('i686' 'x86_64')
url="http://converseen.sourceforge.net/"
diff --git a/community/cuneiform/PKGBUILD b/community/cuneiform/PKGBUILD
index 9ca48e5bd..35b74155b 100644
--- a/community/cuneiform/PKGBUILD
+++ b/community/cuneiform/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 113313 2014-06-17 19:25:56Z eric $
+# $Id: PKGBUILD 113641 2014-06-26 17:45:38Z eric $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Maxim Vuets <maxim.vuets@gmail.com>
pkgname=cuneiform
pkgver=1.1.0
_dpkgver=1.1
-pkgrel=11
+pkgrel=12
pkgdesc="Linux port of an OCR system developed in Russia. Supports more than 20 languages."
arch=('i686' 'x86_64')
url="https://launchpad.net/cuneiform-linux"
diff --git a/community/cython/PKGBUILD b/community/cython/PKGBUILD
index 9d1a31cb8..af173365d 100644
--- a/community/cython/PKGBUILD
+++ b/community/cython/PKGBUILD
@@ -1,18 +1,18 @@
-# $Id: PKGBUILD 108399 2014-03-27 14:47:11Z fyan $
+# $Id: PKGBUILD 113605 2014-06-26 11:11:07Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Igor Scabini <furester @ gmail.com>
pkgname=('cython' 'cython2')
pkgbase=cython
-pkgver=0.20.1
-pkgrel=2
+pkgver=0.20.2
+pkgrel=1
pkgdesc="C-Extensions for Python "
arch=(i686 x86_64)
url="http://www.cython.org"
license=('APACHE')
makedepends=('python-setuptools' 'python2-setuptools')
source=("http://cython.org/release/Cython-$pkgver.tar.gz")
-md5sums=('52431696c64e618036537c4d9aa79d99')
+md5sums=('7fc13e1c665bdf7cea19ad08906af91f')
package_cython() {
depends=('python' 'python-setuptools')
diff --git a/community/i3-wm/PKGBUILD b/community/i3-wm/PKGBUILD
index 5efdf577c..9d15d5a17 100644
--- a/community/i3-wm/PKGBUILD
+++ b/community/i3-wm/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 113261 2014-06-16 19:17:35Z ttoepper $
+# $Id: PKGBUILD 113576 2014-06-26 05:07:13Z ttoepper $
# Maintainer: Thorsten Töpper <atsutane-tu@freethoughts.de>
pkgname=i3-wm
_pkgsourcename=i3
pkgver=4.8
-pkgrel=2
+pkgrel=3
pkgdesc='An improved dynamic tiling window manager'
arch=('i686' 'x86_64')
url='http://i3wm.org/'
@@ -21,13 +21,17 @@ optdepends=('dmenu: As menu.'
'perl-json-xs: Features like saving the layout.')
options=('docs' '!strip')
source=("http://i3wm.org/downloads/${_pkgsourcename}-${pkgver}.tar.bz2"
- "http://i3wm.org/downloads/${_pkgsourcename}-${pkgver}.tar.bz2.asc")
+ "http://i3wm.org/downloads/${_pkgsourcename}-${pkgver}.tar.bz2.asc"
+ 'bugfix_dont_focus_unmapped_container_on_manage.patch')
md5sums=('4151e8e81fdc78b32a7cb953f67e3bef'
- 'SKIP')
+ 'SKIP'
+ '2601c1d3fa5e45bc637a82486fdc5be6')
build() {
cd "$srcdir/$_pkgsourcename-$pkgver"
+ patch -p1 < "$srcdir/bugfix_dont_focus_unmapped_container_on_manage.patch"
+
# In order to avoid problems with bison use only a single process
MAKEFLAGS="-j1"
make
diff --git a/community/i3-wm/bugfix_dont_focus_unmapped_container_on_manage.patch b/community/i3-wm/bugfix_dont_focus_unmapped_container_on_manage.patch
new file mode 100644
index 000000000..18c8e7a9f
--- /dev/null
+++ b/community/i3-wm/bugfix_dont_focus_unmapped_container_on_manage.patch
@@ -0,0 +1,13 @@
+diff --git a/8f442e0..9eee357 b/9eee357
+index 8f442e0..9eee357 100644
+--- a/src/manage.c
++++ b/src/manage.c
+@@ -505,7 +505,7 @@ void manage_window(xcb_window_t window, xcb_get_window_attributes_cookie_t cooki
+
+ /* Defer setting focus after the 'new' event has been sent to ensure the
+ * proper window event sequence. */
+- if (set_focus) {
++ if (set_focus && nc->mapped) {
+ DLOG("Now setting focus.\n");
+ con_focus(nc);
+ }
diff --git a/community/jwm/PKGBUILD b/community/jwm/PKGBUILD
index 030d85ad2..95dcf8ec7 100644
--- a/community/jwm/PKGBUILD
+++ b/community/jwm/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 105157 2014-02-02 00:03:54Z kkeen $
+# $Id: PKGBUILD 113630 2014-06-26 14:25:53Z kkeen $
# Maintainer: Kyle Keen <keenerd@gmail.com>
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgname=jwm
-pkgver=2.2.0
+pkgver=2.2.2
pkgrel=1
pkgdesc="A lightweight window manager for the X11 Window System"
arch=('i686' 'x86_64')
@@ -12,7 +12,7 @@ license=('GPL2')
depends=('libx11' 'libxft' 'libjpeg>=7' 'libxpm' 'libxinerama' 'libpng')
backup=('etc/system.jwmrc')
source=(http://joewing.net/programs/jwm/releases/jwm-$pkgver.tar.xz)
-md5sums=('4950ed5d44d1f00e7b7386fea4657b54')
+md5sums=('35063dbd19636cdb90335d4ec0f04cb8')
build() {
cd "$srcdir/$pkgname-$pkgver"
diff --git a/community/marco/PKGBUILD b/community/marco/PKGBUILD
index 2f76e8cb8..efbea7aa4 100644
--- a/community/marco/PKGBUILD
+++ b/community/marco/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 111944 2014-05-27 08:42:55Z jgc $
+# $Id: PKGBUILD 113601 2014-06-26 10:12:43Z flexiondotorg $
# Maintainer : Martin Wimpress <code@flexion.org>
pkgname=marco
-pkgver=1.8.0
-pkgrel=2
+pkgver=1.8.1
+pkgrel=1
pkgdesc="A window manager for MATE"
url="http://mate-desktop.org"
arch=('i686' 'x86_64')
@@ -18,7 +18,7 @@ conflicts=('mate-window-manager')
options=('!emptydirs')
groups=('mate')
source=("http://pub.mate-desktop.org/releases/1.8/${pkgname}-${pkgver}.tar.xz")
-sha1sums=('7083d090aa2966ec590020aaf21ead77417bccba')
+sha1sums=('fc3a881f0feff11b46e1e889947d8b9d0dd9a04a')
install=${pkgname}.install
build() {
diff --git a/community/mpv/PKGBUILD b/community/mpv/PKGBUILD
index 64254bcea..3ff6e2037 100644
--- a/community/mpv/PKGBUILD
+++ b/community/mpv/PKGBUILD
@@ -1,24 +1,25 @@
-# $Id: PKGBUILD 113142 2014-06-14 13:14:41Z bpiotrowski $
+# $Id: PKGBUILD 113644 2014-06-26 18:21:14Z bpiotrowski $
# Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: Eivind Uggedal <eivind@uggedal.com>
pkgname=mpv
-pkgver=0.3.11
-pkgrel=1
+pkgver=0.4.0
+pkgrel=2
pkgdesc='Video player based on MPlayer/mplayer2'
arch=('i686' 'x86_64')
license=('GPL')
url='http://mpv.io'
depends=(
- 'portaudio' 'ffmpeg' 'lcms2' 'libdvdread' 'libcdio-paranoia' 'libquvi' 'libgl'
+ 'ffmpeg' 'lcms2' 'libdvdread' 'libcdio-paranoia' 'libquvi' 'libgl' 'enca'
'libxinerama' 'mpg123' 'libxv' 'libxkbcommon' 'libva' 'lirc-utils' 'wayland'
'desktop-file-utils' 'hicolor-icon-theme' 'xdg-utils' 'lua' 'libdvdnav'
+ 'libguess'
)
makedepends=('mesa' 'python-docutils' 'ladspa')
options=('!emptydirs' '!buildflags')
install=mpv.install
source=(https://github.com/mpv-player/$pkgname/archive/v$pkgver.tar.gz)
-md5sums=('c2ab93033ce55e3e0ee596576db88e74')
+md5sums=('6b1ec7e8e3a2bcb5af68d62cea4577ba')
prepare() {
cd $pkgname-$pkgver
@@ -30,7 +31,10 @@ build() {
./waf configure --prefix=/usr \
--confdir=/etc/mpv \
- --enable-joystick
+ --enable-joystick \
+ --enable-zsh-comp \
+ --enable-libmpv-shared \
+ --enable-cdda
./waf build
}
diff --git a/community/squid/PKGBUILD b/community/squid/PKGBUILD
index dae2e63f2..b984b2477 100644
--- a/community/squid/PKGBUILD
+++ b/community/squid/PKGBUILD
@@ -1,12 +1,12 @@
-# $Id: PKGBUILD 111478 2014-05-19 09:50:52Z spupykin $
+# $Id: PKGBUILD 113599 2014-06-26 09:27:28Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Mark Coolen <mark.coolen@gmail.com>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
# Contributor: Kevin Piche <kevin@archlinux.org>
pkgname=squid
-pkgver=3.4.5
-pkgrel=2
+pkgver=3.4.6
+pkgrel=1
pkgdesc='Full-featured Web proxy cache server'
arch=('x86_64' 'i686')
url='http://www.squid-cache.org'
@@ -25,7 +25,7 @@ source=("http://www.squid-cache.org/Versions/v3/3.4/$pkgname-$pkgver.tar.bz2"
'squid.cron'
'squid.service'
'squid.tmpfiles')
-md5sums=('b6bee84755c9bd08a119a386c26c9189'
+md5sums=('d3ca4ce0a039bbba8258d6b67d6afaa1'
'270977cdd9b47ef44c0c427ab9034777'
'a71425c4951f2e5b640d19e6a5048531'
'ceeb57c69ebb165676219222f109a24e'
diff --git a/community/synfig/PKGBUILD b/community/synfig/PKGBUILD
index a6b2f8b2e..e7c7ae723 100644
--- a/community/synfig/PKGBUILD
+++ b/community/synfig/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 113314 2014-06-17 19:25:57Z eric $
+# $Id: PKGBUILD 113642 2014-06-26 17:45:39Z eric $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Franco Iacomella <yaco@gnu.org>
pkgname=synfig
pkgver=0.64.1
-pkgrel=4
+pkgrel=5
pkgdesc="Professional vector animation program (CLI renderer only)"
arch=(i686 x86_64)
url="http://synfig.org"
diff --git a/core/nfs-utils/PKGBUILD b/core/nfs-utils/PKGBUILD
index 2aeaf23f8..8825d2c38 100644
--- a/core/nfs-utils/PKGBUILD
+++ b/core/nfs-utils/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 203559 2014-01-13 16:35:26Z tpowa $
+# $Id: PKGBUILD 215488 2014-06-26 19:15:59Z tpowa $
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
# Contributor: John Proctor <jproctor@prium.net>
# Contributor: dibblethewrecker <dibblethewrecker.at.jiwe.org>
@@ -6,8 +6,8 @@
# Contributor: Marco Lima <cipparello gmail com>
pkgname=nfs-utils
-pkgver=1.2.9
-pkgrel=5
+pkgver=1.3.0
+pkgrel=2
pkgdesc="Support programs for Network File Systems"
arch=('i686' 'x86_64')
url='http://nfs.sourceforge.net'
@@ -21,51 +21,29 @@ source=(http://downloads.sourceforge.net/project/nfs/${pkgname}/${pkgver}/${pkgn
exports
idmapd.conf
nfs-utils-1.1.4-mtab-sym.patch
- nfs-utils-1.1.4-no-exec.patch
- rpc-gssd.service
- rpc-mountd.service
- rpc-svcgssd.service
- rpc-idmapd.service
- rpc-statd.service
- nfsd.service
- var-lib-nfs-rpc_pipefs.mount
- proc-fs-nfsd.mount
- nfs-client.target
- nfs-server.target
- blkmapd.service
nfs-utils.conf
id_resolver.conf
- start-statd.patch)
+ nfs-utils_env.sh
+ nfs-utils-1.3.1-rc2.patch)
install=nfs-utils.install
optdepends=('sqlite: for nfsdcltrack usage')
-md5sums=('18869d16db3f49c053f8c68eba3fe2e0'
- 'f73f197a16b02c3e248488ec35c4cf43'
- '9cef69bc686cc5dcac23fbb51450747d'
+md5sums=('3ac3726eda563946d1f44ac3e5b61d56'
+ '21510b0b30e71c8d6679c7c23f3b78eb'
+ 'c1fe8dd9581c1df788d8965f4f1479f3'
'e6ad3c7a59c7e4c24965a0e7da35026c'
'eb4f4027fab6fc1201f1ca04f5954c76'
'7674106eaaa4c149bccd4f05fe3604e9'
- '4f4827dfc93008dfadd0a530ad0872b2'
- 'b9329c9d4a6b4a72ab2a04aac9229171'
- '656ac433c4443eba6b47744a53a3c7d9'
- '295ec0c9c049e146992561650fec9d52'
- '6ff4f297df4e90440b8bdbc6b1a78480'
- '20d5b8120d1049b27dd44dc4c57f667d'
- '01a1dd533382630ccecc9b882c47aa2f'
- 'f48da2fb07b1d5f016d63c16b0979ebb'
- '972eb80ff8c94c647b977a8a3cdd985f'
- 'a13e9f388cd939d68fa6ada205eb4e25'
- '1ee3eea917131f04bb08f2f858be7724'
- 'f513ab0eae74918df08f329b0c6a9b6f'
'8ac484023d786766d287ccbe878ae4ba'
'a43aabf0b8d02406b1babc3a206d952a'
- 'f8bb29c2ca1ce178e6371091a3e1090d')
+ 'c6c9c32f153dfa6c0477ea6b99354288'
+ '92423a1e833ba90fdc446aa2296ac7f0')
prepare() {
cd $srcdir/${pkgname}-${pkgver}
patch -Np1 -i ../nfs-utils-1.1.4-mtab-sym.patch
- # fix /usr/bin in start-statd shell script
- patch -Np1 -i ../start-statd.patch
- #patch -Np1 -i ../nfs-utils-1.1.4-no-exec.patch
+ # fix segfaults, from fedora git
+ patch -Np1 -i ../nfs-utils-1.3.1-rc2.patch
+ ./autogen.sh
}
build() {
@@ -79,6 +57,8 @@ build() {
sed -i -e 's#sbindir = /sbin#sbindir = /usr/bin#g' utils/mount/Makefile
# move osd_login to /usr/bin
sed -i -e 's#sbindir = /sbin#sbindir = /usr/bin#g' utils/osd_login/Makefile
+ # move nfsdcltrack to /usr/bin
+ sed -i -e 's#sbindir = /sbin#sbindir = /usr/bin#g' utils/nfsdcltrack/Makefile
make
}
@@ -88,17 +68,19 @@ package() {
make DESTDIR="$pkgdir" install
sed -i '1s/python$/python2/' "$pkgdir"/usr/bin/{nfsiostat,mountstats}
install -D -m 644 utils/mount/nfsmount.conf "$pkgdir"/etc/nfsmount.conf
+
+ for i in systemd/{*.service,*.mount,*.target}; do
+ install -D -m 644 $i "$pkgdir"/usr/lib/systemd/system/$(basename $i)
+ done
cd ..
install -D -m 644 nfs-common.conf "$pkgdir"/etc/conf.d/nfs-common.conf
install -D -m 644 nfs-server.conf "$pkgdir"/etc/conf.d/nfs-server.conf
+ install -D -m 755 nfs-utils_env.sh "$pkgdir"/usr/lib/systemd/scripts/nfs-utils_env.sh
install -D -m 644 exports "$pkgdir"/etc/exports
install -D -m 644 idmapd.conf "$pkgdir"/etc/idmapd.conf
install -D -m 644 id_resolver.conf "$pkgdir"/etc/request-key.d/id_resolver.conf
install -D -m 644 nfs-utils.conf "$pkgdir"/usr/lib/modules-load.d/nfs-utils.conf
- for i in *.service *.mount *.target; do
- install -D -m 644 $i "$pkgdir"/usr/lib/systemd/system/$i
- done
mkdir "$pkgdir"/etc/exports.d
mkdir -m 555 "$pkgdir"/var/lib/nfs/rpc_pipefs
mkdir "$pkgdir"/var/lib/nfs/v4recovery
diff --git a/core/nfs-utils/blkmapd.service b/core/nfs-utils/blkmapd.service
deleted file mode 100644
index 04711d09c..000000000
--- a/core/nfs-utils/blkmapd.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=pNFS Block Layout Client Mapping Daemon
-Documentation=man:blkmapd(8)
-After=var-lib-nfs-rpc_pipefs.mount nfsd.service
-Requires=var-lib-nfs-rpc_pipefs.mount
-
-[Service]
-Type=forking
-ExecStart=/usr/bin/blkmapd
-
-[Install]
-WantedBy=multi-user.target
diff --git a/core/nfs-utils/nfs-client.target b/core/nfs-utils/nfs-client.target
deleted file mode 100644
index 1bec662ab..000000000
--- a/core/nfs-utils/nfs-client.target
+++ /dev/null
@@ -1,8 +0,0 @@
-[Unit]
-Description=NFS Client Daemons
-Before=remote-fs-pre.target
-Wants=rpc-statd.service
-Wants=rpc-gssd.service
-
-[Install]
-WantedBy=multi-user.target
diff --git a/core/nfs-utils/nfs-common.conf b/core/nfs-utils/nfs-common.conf
index 12466b3e5..ae1130c02 100644
--- a/core/nfs-utils/nfs-common.conf
+++ b/core/nfs-utils/nfs-common.conf
@@ -1,13 +1,6 @@
-# Parameters to be passed to nfs-common (nfs clients & server) init script.
+# Parameters to be passed to nfs systemd services (nfs clients & server).
#
-# If you do not set values for the NEED_ options, they will be attempted
-# autodetected; this should be sufficient for most people. Valid alternatives
-# for the NEED_ options are "yes" and "no".
-
-# Do you want to start the statd daemon? It is not needed for NFSv4.
-NEED_STATD=""
-
# Options to pass to rpc.statd.
# See rpc.statd(8) for more details.
# N.B. statd normally runs on both client and server, and run-time
@@ -19,22 +12,11 @@ STATD_OPTS=""
# e.g. SMNOTIFY_OPTS="-p 32764"
SMNOTIFY_OPTS=""
-# Do you want to start the idmapd daemon? It is only needed for NFSv4.
-NEED_IDMAPD=""
-
# Options to pass to rpc.idmapd.
# See rpc.idmapd(8) for more details.
IDMAPD_OPTS=""
-# Do you want to start the gssd daemon? It is required for Kerberos mounts.
-NEED_GSSD=""
-
# Options to pass to rpc.gssd.
# See rpc.gssd(8) for more details.
GSSD_OPTS=""
-# Where to mount rpc_pipefs filesystem; the default is "/var/lib/nfs/rpc_pipefs".
-PIPEFS_MOUNTPOINT=""
-
-# Options used to mount rpc_pipefs filesystem; the default is "defaults".
-PIPEFS_MOUNTOPTS=""
diff --git a/core/nfs-utils/nfs-server.conf b/core/nfs-utils/nfs-server.conf
index 581e26350..95b676eb5 100644
--- a/core/nfs-utils/nfs-server.conf
+++ b/core/nfs-utils/nfs-server.conf
@@ -1,29 +1,16 @@
-# Parameters to be passed to nfs-server init script.
+# Parameters to be passed to nfs systemd server services
#
# Options to pass to rpc.nfsd.
# See rpc.nfsd(8) for more details.
NFSD_OPTS=""
-# Number of servers to start up; the default is 8 servers.
-NFSD_COUNT=""
-
-# Where to mount nfsd filesystem; the default is "/proc/fs/nfsd".
-PROCNFSD_MOUNTPOINT=""
-
-# Options used to mount nfsd filesystem; the default is "rw,nodev,noexec,nosuid".
-PROCNFSD_MOUNTOPTS=""
-
# Options for rpc.mountd.
# If you have a port-based firewall, you might want to set up
# a fixed port here using the --port option.
# See rpc.mountd(8) for more details.
MOUNTD_OPTS=""
-# Do you want to start the svcgssd daemon? It is only required for Kerberos
-# exports. Valid alternatives are "yes" and "no"; the default is "no".
-NEED_SVCGSSD=""
-
# Options to pass to rpc.svcgssd.
# See rpc.svcgssd(8) for more details.
SVCGSSD_OPTS=""
diff --git a/core/nfs-utils/nfs-server.target b/core/nfs-utils/nfs-server.target
deleted file mode 100644
index 52f0f04a4..000000000
--- a/core/nfs-utils/nfs-server.target
+++ /dev/null
@@ -1,10 +0,0 @@
-[Unit]
-Description=NFS File Server Daemons
-Wants=rpc-mountd.service
-Wants=rpc-idmapd.service
-Wants=rpc-rquotad.service
-Wants=rpc-statd.service
-Wants=rpc-svcgssd.service
-
-[Install]
-WantedBy=multi-user.target
diff --git a/core/nfs-utils/nfs-utils-1.1.4-no-exec.patch b/core/nfs-utils/nfs-utils-1.1.4-no-exec.patch
deleted file mode 100644
index ea50a21d8..000000000
--- a/core/nfs-utils/nfs-utils-1.1.4-no-exec.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-ripped from Debian
-
---- nfs-utils-1.1.2/utils/mount/mount.c
-+++ nfs-utils-1.1.2/utils/mount/mount.c
-@@ -381,10 +381,6 @@
- mount_error(NULL, mount_point, ENOTDIR);
- return 1;
- }
-- if (access(mount_point, X_OK) < 0) {
-- mount_error(NULL, mount_point, errno);
-- return 1;
-- }
-
- return 0;
- }
diff --git a/core/nfs-utils/nfs-utils-1.3.1-rc2.patch b/core/nfs-utils/nfs-utils-1.3.1-rc2.patch
new file mode 100644
index 000000000..d883ff939
--- /dev/null
+++ b/core/nfs-utils/nfs-utils-1.3.1-rc2.patch
@@ -0,0 +1,674 @@
+diff --git a/support/export/client.c b/support/export/client.c
+index dbf47b9..f85e11c 100644
+--- a/support/export/client.c
++++ b/support/export/client.c
+@@ -482,8 +482,12 @@ add_name(char *old, const char *add)
+ else
+ cp = cp + strlen(cp);
+ }
+- strncpy(new, old, cp-old);
+- new[cp-old] = 0;
++ if (old) {
++ strncpy(new, old, cp-old);
++ new[cp-old] = 0;
++ } else {
++ new[0] = 0;
++ }
+ if (cp != old && !*cp)
+ strcat(new, ",");
+ strcat(new, add);
+diff --git a/tools/nfs-iostat/nfs-iostat.py b/tools/nfs-iostat/nfs-iostat.py
+index 341cdbf..b324cd8 100644
+--- a/tools/nfs-iostat/nfs-iostat.py
++++ b/tools/nfs-iostat/nfs-iostat.py
+@@ -243,27 +243,15 @@ class DeviceData:
+ """Print attribute cache efficiency stats
+ """
+ nfs_stats = self.__nfs_data
+- getattr_stats = self.__rpc_data['GETATTR']
+-
+- if nfs_stats['inoderevalidates'] != 0:
+- getattr_ops = float(getattr_stats[1])
+- opens = float(nfs_stats['vfsopen'])
+- revalidates = float(nfs_stats['inoderevalidates']) - opens
+- if revalidates != 0:
+- ratio = ((revalidates - getattr_ops) * 100) / revalidates
+- else:
+- ratio = 0.0
+-
+- data_invalidates = float(nfs_stats['datainvalidates'])
+- attr_invalidates = float(nfs_stats['attrinvalidates'])
+
+- print()
+- print('%d inode revalidations, hitting in cache %4.2f%% of the time' % \
+- (revalidates, ratio))
+- print('%d open operations (mandatory GETATTR requests)' % opens)
+- if getattr_ops != 0:
+- print('%4.2f%% of GETATTRs resulted in data cache invalidations' % \
+- ((data_invalidates * 100) / getattr_ops))
++ print()
++ print('%d VFS opens' % (nfs_stats['vfsopen']))
++ print('%d inoderevalidates (forced GETATTRs)' % \
++ (nfs_stats['inoderevalidates']))
++ print('%d page cache invalidations' % \
++ (nfs_stats['datainvalidates']))
++ print('%d attribute cache invalidations' % \
++ (nfs_stats['attrinvalidates']))
+
+ def __print_dir_cache_stats(self, sample_time):
+ """Print directory stats
+@@ -353,15 +341,21 @@ class DeviceData:
+ exe_per_op = 0.0
+
+ op += ':'
+- print('%s' % op.lower().ljust(15), end='')
+- print(' ops/s\t\t kB/s\t\t kB/op\t\tretrans\t\tavg RTT (ms)\tavg exe (ms)')
+-
+- print('\t\t%7.3f' % (ops / sample_time), end='')
+- print('\t%7.3f' % (kilobytes / sample_time), end='')
+- print('\t%7.3f' % kb_per_op, end='')
+- print(' %7d (%3.1f%%)' % (retrans, retrans_percent), end='')
+- print('\t%7.3f' % rtt_per_op, end='')
+- print('\t%7.3f' % exe_per_op)
++ print(format(op.lower(), '<16s'), end='')
++ print(format('ops/s', '>8s'), end='')
++ print(format('kB/s', '>16s'), end='')
++ print(format('kB/op', '>16s'), end='')
++ print(format('retrans', '>16s'), end='')
++ print(format('avg RTT (ms)', '>16s'), end='')
++ print(format('avg exe (ms)', '>16s'))
++
++ print(format((ops / sample_time), '>24.3f'), end='')
++ print(format((kilobytes / sample_time), '>16.3f'), end='')
++ print(format(kb_per_op, '>16.3f'), end='')
++ retransmits = '{0:>10.0f} ({1:>3.1f}%)'.format(retrans, retrans_percent).strip()
++ print(format(retransmits, '>16'), end='')
++ print(format(rtt_per_op, '>16.3f'), end='')
++ print(format(exe_per_op, '>16.3f'))
+
+ def ops(self, sample_time):
+ sends = float(self.__rpc_data['rpcsends'])
+@@ -391,9 +385,10 @@ class DeviceData:
+ (self.__nfs_data['export'], self.__nfs_data['mountpoint']))
+ print()
+
+- print(' op/s\t\trpc bklog')
+- print('%7.2f' % (sends / sample_time), end='')
+- print('\t%7.2f' % backlog)
++ print(format('ops/s', '>16') + format('rpc bklog', '>16'))
++ print(format((sends / sample_time), '>16.3f'), end='')
++ print(format(backlog, '>16.3f'))
++ print()
+
+ if which == 0:
+ self.__print_rpc_op_stats('READ', sample_time)
+diff --git a/utils/gssd/Makefile.am b/utils/gssd/Makefile.am
+index a9a3e42..af59791 100644
+--- a/utils/gssd/Makefile.am
++++ b/utils/gssd/Makefile.am
+@@ -18,11 +18,13 @@ COMMON_SRCS = \
+ context_lucid.c \
+ gss_util.c \
+ gss_oids.c \
++ gss_names.c \
+ err_util.c \
+ \
+ context.h \
+ err_util.h \
+ gss_oids.h \
++ gss_names.h \
+ gss_util.h
+
+ gssd_SOURCES = \
+diff --git a/utils/gssd/gss_names.c b/utils/gssd/gss_names.c
+new file mode 100644
+index 0000000..047069d
+--- /dev/null
++++ b/utils/gssd/gss_names.c
+@@ -0,0 +1,138 @@
++/*
++ Copyright (c) 2000 The Regents of the University of Michigan.
++ All rights reserved.
++
++ Copyright (c) 2002 Bruce Fields <bfields@UMICH.EDU>
++
++ Redistribution and use in source and binary forms, with or without
++ modification, are permitted provided that the following conditions
++ are met:
++
++ 1. Redistributions of source code must retain the above copyright
++ notice, this list of conditions and the following disclaimer.
++ 2. Redistributions in binary form must reproduce the above copyright
++ notice, this list of conditions and the following disclaimer in the
++ documentation and/or other materials provided with the distribution.
++ 3. Neither the name of the University nor the names of its
++ contributors may be used to endorse or promote products derived
++ from this software without specific prior written permission.
++
++ THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
++ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
++ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
++ DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
++ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
++ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
++ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
++ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
++ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
++ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
++ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++*/
++
++#ifdef HAVE_CONFIG_H
++#include <config.h>
++#endif /* HAVE_CONFIG_H */
++
++#include <sys/param.h>
++#include <sys/stat.h>
++#include <rpc/rpc.h>
++
++#include <pwd.h>
++#include <stdio.h>
++#include <unistd.h>
++#include <ctype.h>
++#include <string.h>
++#include <fcntl.h>
++#include <errno.h>
++#include <nfsidmap.h>
++#include <nfslib.h>
++#include <time.h>
++
++#include "svcgssd.h"
++#include "gss_util.h"
++#include "err_util.h"
++#include "context.h"
++#include "misc.h"
++#include "gss_oids.h"
++#include "svcgssd_krb5.h"
++
++static int
++get_krb5_hostbased_name(gss_buffer_desc *name, char **hostbased_name)
++{
++ char *p, *sname = NULL;
++ if (strchr(name->value, '@') && strchr(name->value, '/')) {
++ if ((sname = calloc(name->length, 1)) == NULL) {
++ printerr(0, "ERROR: get_krb5_hostbased_name failed "
++ "to allocate %d bytes\n", name->length);
++ return -1;
++ }
++ /* read in name and instance and replace '/' with '@' */
++ sscanf(name->value, "%[^@]", sname);
++ p = strrchr(sname, '/');
++ if (p == NULL) { /* The '@' preceeded the '/' */
++ free(sname);
++ return -1;
++ }
++ *p = '@';
++ }
++ *hostbased_name = sname;
++ return 0;
++}
++
++int
++get_hostbased_client_name(gss_name_t client_name, gss_OID mech,
++ char **hostbased_name)
++{
++ u_int32_t maj_stat, min_stat;
++ gss_buffer_desc name;
++ gss_OID name_type = GSS_C_NO_OID;
++ char *cname;
++ int res = -1;
++
++ *hostbased_name = NULL; /* preset in case we fail */
++
++ /* Get the client's gss authenticated name */
++ maj_stat = gss_display_name(&min_stat, client_name, &name, &name_type);
++ if (maj_stat != GSS_S_COMPLETE) {
++ pgsserr("get_hostbased_client_name: gss_display_name",
++ maj_stat, min_stat, mech);
++ goto out_err;
++ }
++ if (name.length >= 0xffff) { /* don't overflow */
++ printerr(0, "ERROR: get_hostbased_client_name: "
++ "received gss_name is too long (%d bytes)\n",
++ name.length);
++ goto out_rel_buf;
++ }
++
++ /* For Kerberos, transform the NT_KRB5_PRINCIPAL name to
++ * an NT_HOSTBASED_SERVICE name */
++ if (g_OID_equal(&krb5oid, mech)) {
++ if (get_krb5_hostbased_name(&name, &cname) == 0)
++ *hostbased_name = cname;
++ } else {
++ printerr(1, "WARNING: unknown/unsupport mech OID\n");
++ }
++
++ res = 0;
++out_rel_buf:
++ gss_release_buffer(&min_stat, &name);
++out_err:
++ return res;
++}
++
++void
++get_hostbased_client_buffer(gss_name_t client_name, gss_OID mech,
++ gss_buffer_t buf)
++{
++ char *hname;
++
++ if (!get_hostbased_client_name(client_name, mech, &hname)) {
++ buf->length = strlen(hname) + 1;
++ buf->value = hname;
++ } else {
++ buf->length = 0;
++ buf->value = NULL;
++ }
++}
+diff --git a/utils/gssd/gss_names.h b/utils/gssd/gss_names.h
+new file mode 100644
+index 0000000..ce182f7
+--- /dev/null
++++ b/utils/gssd/gss_names.h
+@@ -0,0 +1,36 @@
++/*
++ Copyright (c) 2000 The Regents of the University of Michigan.
++ All rights reserved.
++
++ Copyright (c) 2002 Bruce Fields <bfields@UMICH.EDU>
++
++ Redistribution and use in source and binary forms, with or without
++ modification, are permitted provided that the following conditions
++ are met:
++
++ 1. Redistributions of source code must retain the above copyright
++ notice, this list of conditions and the following disclaimer.
++ 2. Redistributions in binary form must reproduce the above copyright
++ notice, this list of conditions and the following disclaimer in the
++ documentation and/or other materials provided with the distribution.
++ 3. Neither the name of the University nor the names of its
++ contributors may be used to endorse or promote products derived
++ from this software without specific prior written permission.
++
++ THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
++ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
++ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
++ DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
++ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
++ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
++ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
++ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
++ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
++ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
++ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++*/
++
++extern int get_hostbased_client_name(gss_name_t client_name, gss_OID mech,
++ char **hostbased_name);
++extern void get_hostbased_client_buffer(gss_name_t client_name,
++ gss_OID mech, gss_buffer_t buf);
+diff --git a/utils/gssd/gssd_proc.c b/utils/gssd/gssd_proc.c
+index 33cfeb2..40ff188 100644
+--- a/utils/gssd/gssd_proc.c
++++ b/utils/gssd/gssd_proc.c
+@@ -77,6 +77,7 @@
+ #include "context.h"
+ #include "nfsrpc.h"
+ #include "nfslib.h"
++#include "gss_names.h"
+
+ /*
+ * pollarray:
+@@ -681,19 +682,25 @@ parse_enctypes(char *enctypes)
+ return 0;
+ }
+
+-static int
++static void
+ do_downcall(int k5_fd, uid_t uid, struct authgss_private_data *pd,
+- gss_buffer_desc *context_token, OM_uint32 lifetime_rec)
++ gss_buffer_desc *context_token, OM_uint32 lifetime_rec,
++ gss_buffer_desc *acceptor)
+ {
+ char *buf = NULL, *p = NULL, *end = NULL;
+ unsigned int timeout = context_timeout;
+ unsigned int buf_size = 0;
+
+- printerr(1, "doing downcall lifetime_rec %u\n", lifetime_rec);
++ printerr(1, "doing downcall: lifetime_rec=%u acceptor=%.*s\n",
++ lifetime_rec, acceptor->length, acceptor->value);
+ buf_size = sizeof(uid) + sizeof(timeout) + sizeof(pd->pd_seq_win) +
+ sizeof(pd->pd_ctx_hndl.length) + pd->pd_ctx_hndl.length +
+- sizeof(context_token->length) + context_token->length;
++ sizeof(context_token->length) + context_token->length +
++ sizeof(acceptor->length) + acceptor->length;
+ p = buf = malloc(buf_size);
++ if (!buf)
++ goto out_err;
++
+ end = buf + buf_size;
+
+ /* context_timeout set by -t option overrides context lifetime */
+@@ -704,14 +711,15 @@ do_downcall(int k5_fd, uid_t uid, struct authgss_private_data *pd,
+ if (WRITE_BYTES(&p, end, pd->pd_seq_win)) goto out_err;
+ if (write_buffer(&p, end, &pd->pd_ctx_hndl)) goto out_err;
+ if (write_buffer(&p, end, context_token)) goto out_err;
++ if (write_buffer(&p, end, acceptor)) goto out_err;
+
+ if (write(k5_fd, buf, p - buf) < p - buf) goto out_err;
+- if (buf) free(buf);
+- return 0;
++ free(buf);
++ return;
+ out_err:
+- if (buf) free(buf);
++ free(buf);
+ printerr(1, "Failed to write downcall!\n");
+- return -1;
++ return;
+ }
+
+ static int
+@@ -1031,6 +1039,9 @@ process_krb5_upcall(struct clnt_info *clp, uid_t uid, int fd, char *tgtname,
+ gss_cred_id_t gss_cred;
+ OM_uint32 maj_stat, min_stat, lifetime_rec;
+ pid_t pid;
++ gss_name_t gacceptor = GSS_C_NO_NAME;
++ gss_OID mech;
++ gss_buffer_desc acceptor = {0};
+
+ pid = fork();
+ switch(pid) {
+@@ -1171,15 +1182,24 @@ process_krb5_upcall(struct clnt_info *clp, uid_t uid, int fd, char *tgtname,
+ goto out_return_error;
+ }
+
+- /* Grab the context lifetime to pass to the kernel. lifetime_rec
+- * is set to zero on error */
+- maj_stat = gss_inquire_context(&min_stat, pd.pd_ctx, NULL, NULL,
+- &lifetime_rec, NULL, NULL, NULL, NULL);
++ /* Grab the context lifetime and acceptor name out of the ctx. */
++ maj_stat = gss_inquire_context(&min_stat, pd.pd_ctx, NULL, &gacceptor,
++ &lifetime_rec, &mech, NULL, NULL, NULL);
+
+- if (maj_stat)
+- printerr(1, "WARNING: Failed to inquire context for lifetme "
+- "maj_stat %u\n", maj_stat);
++ if (maj_stat != GSS_S_COMPLETE) {
++ printerr(1, "WARNING: Failed to inquire context "
++ "maj_stat (0x%x)\n", maj_stat);
++ lifetime_rec = 0;
++ } else {
++ get_hostbased_client_buffer(gacceptor, mech, &acceptor);
++ gss_release_name(&min_stat, &gacceptor);
++ }
+
++ /*
++ * The serialization can mean turning pd.pd_ctx into a lucid context. If
++ * that happens then the pd.pd_ctx will be unusable, so we must never
++ * try to use it after this point.
++ */
+ if (serialize_context_for_kernel(&pd.pd_ctx, &token, &krb5oid, NULL)) {
+ printerr(0, "WARNING: Failed to serialize krb5 context for "
+ "user with uid %d for server %s\n",
+@@ -1187,9 +1207,10 @@ process_krb5_upcall(struct clnt_info *clp, uid_t uid, int fd, char *tgtname,
+ goto out_return_error;
+ }
+
+- do_downcall(fd, uid, &pd, &token, lifetime_rec);
++ do_downcall(fd, uid, &pd, &token, lifetime_rec, &acceptor);
+
+ out:
++ gss_release_buffer(&min_stat, &acceptor);
+ if (token.value)
+ free(token.value);
+ #ifdef HAVE_AUTHGSS_FREE_PRIVATE_DATA
+diff --git a/utils/gssd/svcgssd_proc.c b/utils/gssd/svcgssd_proc.c
+index 3757d51..5bdb438 100644
+--- a/utils/gssd/svcgssd_proc.c
++++ b/utils/gssd/svcgssd_proc.c
+@@ -59,6 +59,7 @@
+ #include "misc.h"
+ #include "gss_oids.h"
+ #include "svcgssd_krb5.h"
++#include "gss_names.h"
+
+ extern char * mech2file(gss_OID mech);
+ #define SVCGSSD_CONTEXT_CHANNEL "/proc/net/rpc/auth.rpcsec.context/channel"
+@@ -315,71 +316,6 @@ print_hexl(const char *description, unsigned char *cp, int length)
+ }
+ #endif
+
+-static int
+-get_krb5_hostbased_name (gss_buffer_desc *name, char **hostbased_name)
+-{
+- char *p, *sname = NULL;
+- if (strchr(name->value, '@') && strchr(name->value, '/')) {
+- if ((sname = calloc(name->length, 1)) == NULL) {
+- printerr(0, "ERROR: get_krb5_hostbased_name failed "
+- "to allocate %d bytes\n", name->length);
+- return -1;
+- }
+- /* read in name and instance and replace '/' with '@' */
+- sscanf(name->value, "%[^@]", sname);
+- p = strrchr(sname, '/');
+- if (p == NULL) { /* The '@' preceeded the '/' */
+- free(sname);
+- return -1;
+- }
+- *p = '@';
+- }
+- *hostbased_name = sname;
+- return 0;
+-}
+-
+-static int
+-get_hostbased_client_name(gss_name_t client_name, gss_OID mech,
+- char **hostbased_name)
+-{
+- u_int32_t maj_stat, min_stat;
+- gss_buffer_desc name;
+- gss_OID name_type = GSS_C_NO_OID;
+- char *cname;
+- int res = -1;
+-
+- *hostbased_name = NULL; /* preset in case we fail */
+-
+- /* Get the client's gss authenticated name */
+- maj_stat = gss_display_name(&min_stat, client_name, &name, &name_type);
+- if (maj_stat != GSS_S_COMPLETE) {
+- pgsserr("get_hostbased_client_name: gss_display_name",
+- maj_stat, min_stat, mech);
+- goto out_err;
+- }
+- if (name.length >= 0xffff) { /* don't overflow */
+- printerr(0, "ERROR: get_hostbased_client_name: "
+- "received gss_name is too long (%d bytes)\n",
+- name.length);
+- goto out_rel_buf;
+- }
+-
+- /* For Kerberos, transform the NT_KRB5_PRINCIPAL name to
+- * an NT_HOSTBASED_SERVICE name */
+- if (g_OID_equal(&krb5oid, mech)) {
+- if (get_krb5_hostbased_name(&name, &cname) == 0)
+- *hostbased_name = cname;
+- } else {
+- printerr(1, "WARNING: unknown/unsupport mech OID\n");
+- }
+-
+- res = 0;
+-out_rel_buf:
+- gss_release_buffer(&min_stat, &name);
+-out_err:
+- return res;
+-}
+-
+ void
+ handle_nullreq(FILE *f) {
+ /* XXX initialize to a random integer to reduce chances of unnecessary
+diff --git a/utils/mount/error.c b/utils/mount/error.c
+index f8fc13f..e06f598 100644
+--- a/utils/mount/error.c
++++ b/utils/mount/error.c
+@@ -215,8 +215,12 @@ void mount_error(const char *spec, const char *mount_point, int error)
+ progname);
+ break;
+ case ENOTDIR:
+- nfs_error(_("%s: mount point %s is not a directory"),
+- progname, mount_point);
++ if (spec)
++ nfs_error(_("%s: mount spec %s or point %s is not a "
++ "directory"), progname, spec, mount_point);
++ else
++ nfs_error(_("%s: mount point %s is not a directory"),
++ progname, mount_point);
+ break;
+ case EBUSY:
+ nfs_error(_("%s: %s is busy or already mounted"),
+diff --git a/utils/mount/nfsmount.conf b/utils/mount/nfsmount.conf
+index 9b8ff4a..aeb3023 100644
+--- a/utils/mount/nfsmount.conf
++++ b/utils/mount/nfsmount.conf
+@@ -133,3 +133,12 @@
+ # RPCGSS security flavors
+ # [none, sys, krb5, krb5i, krb5p ]
+ # Sec=sys
++#
++# Allow Signals to interrupt file operations
++# Intr=True
++#
++# Specifies how the kernel manages its cache of directory
++# Lookupcache=all|none|pos|positive
++#
++# Turn of the caching of that access time
++# noatime=True
+diff --git a/utils/nfsd/nfsd.c b/utils/nfsd/nfsd.c
+index 73d6a92..03e3c81 100644
+--- a/utils/nfsd/nfsd.c
++++ b/utils/nfsd/nfsd.c
+@@ -101,7 +101,7 @@ main(int argc, char **argv)
+ int count = NFSD_NPROC, c, i, error = 0, portnum = 0, fd, found_one;
+ char *p, *progname, *port, *rdma_port = NULL;
+ char **haddr = NULL;
+- unsigned int hcounter = 0;
++ int hcounter = 0;
+ int socket_up = 0;
+ unsigned int minorvers = 0;
+ unsigned int minorversset = 0;
+diff --git a/utils/nfsdcltrack/Makefile.am b/utils/nfsdcltrack/Makefile.am
+index a860ffb..7524295 100644
+--- a/utils/nfsdcltrack/Makefile.am
++++ b/utils/nfsdcltrack/Makefile.am
+@@ -1,5 +1,9 @@
+ ## Process this file with automake to produce Makefile.in
+
++# These binaries go in /sbin (not /usr/sbin), and that cannot be
++# overridden at config time. The kernel "knows" the /sbin name.
++sbindir = /sbin
++
+ man8_MANS = nfsdcltrack.man
+ EXTRA_DIST = $(man8_MANS)
+
+diff --git a/utils/statd/callback.c b/utils/statd/callback.c
+index d1cc139..bb7c590 100644
+--- a/utils/statd/callback.c
++++ b/utils/statd/callback.c
+@@ -10,11 +10,13 @@
+ #include <config.h>
+ #endif
+
++#include <unistd.h>
+ #include <netdb.h>
+
+ #include "rpcmisc.h"
+ #include "statd.h"
+ #include "notlist.h"
++#include "ha-callout.h"
+
+ /* Callback notify list. */
+ /* notify_list *cbnl = NULL; ... never used */
+@@ -87,6 +89,13 @@ sm_notify_1_svc(struct stat_chge *argp, struct svc_req *rqstp)
+ xlog(D_CALL, "Received SM_NOTIFY from %s, state: %d",
+ argp->mon_name, argp->state);
+
++ if (!statd_present_address(sap, ip_addr, sizeof(ip_addr))) {
++ xlog_warn("Unrecognized sender address");
++ return ((void *) &result);
++ }
++
++ ha_callout("sm-notify", argp->mon_name, ip_addr, argp->state);
++
+ /* quick check - don't bother if we're not monitoring anyone */
+ if (rtnl == NULL) {
+ xlog_warn("SM_NOTIFY from %s while not monitoring any hosts",
+@@ -94,11 +103,6 @@ sm_notify_1_svc(struct stat_chge *argp, struct svc_req *rqstp)
+ return ((void *) &result);
+ }
+
+- if (!statd_present_address(sap, ip_addr, sizeof(ip_addr))) {
+- xlog_warn("Unrecognized sender address");
+- return ((void *) &result);
+- }
+-
+ /* okir change: statd doesn't remove the remote host from its
+ * internal monitor list when receiving an SM_NOTIFY call from
+ * it. Lockd will want to continue monitoring the remote host
+diff --git a/utils/statd/start-statd b/utils/statd/start-statd
+index cde3583..dcdaf77 100644
+--- a/utils/statd/start-statd
++++ b/utils/statd/start-statd
+@@ -4,8 +4,8 @@
+ # /var/run/rpc.statd.pid).
+ # It should run statd with whatever flags are apropriate for this
+ # site.
+-PATH=/sbin:/usr/sbin
+-if systemctl start statd.service
++PATH="/sbin:/usr/sbin:/bin:/usr/bin"
++if systemctl start rpc-statd.service
+ then :
+ else
+ exec rpc.statd --no-notify
+diff --git a/utils/statd/statd.man b/utils/statd/statd.man
+index 896c2f8..1e5520c 100644
+--- a/utils/statd/statd.man
++++ b/utils/statd/statd.man
+@@ -346,7 +346,8 @@ points due to inactivity.
+ .SS High-availability callouts
+ .B rpc.statd
+ can exec a special callout program during processing of
+-successful SM_MON, SM_UNMON, and SM_UNMON_ALL requests.
++successful SM_MON, SM_UNMON, and SM_UNMON_ALL requests,
++or when it receives SM_NOTIFY.
+ Such a program may be used in High Availability NFS (HA-NFS)
+ environments to track lock state that may need to be migrated after
+ a system reboot.
+@@ -357,15 +358,26 @@ option.
+ The program is run with 3 arguments:
+ The first is either
+ .B add-client
+-or
+ .B del-client
++or
++.B sm-notify
+ depending on the reason for the callout.
+ The second is the
+ .I mon_name
+ of the monitored peer.
+ The third is the
+-.I caller_name
+-of the requesting lock manager.
++.I caller_name
++of the requesting lock manager for
++.B add-client
++or
++.B del-client
++, otherwise it is
++.I IP_address
++of the caller sending SM_NOTIFY.
++The forth is the
++.I state_value
++in the SM_NOTIFY request.
++
+ .SS IPv6 and TI-RPC support
+ TI-RPC is a pre-requisite for supporting NFS on IPv6.
+ If TI-RPC support is built into
diff --git a/core/nfs-utils/nfs-utils.install b/core/nfs-utils/nfs-utils.install
index f6c72d915..7d88ac9c5 100644
--- a/core/nfs-utils/nfs-utils.install
+++ b/core/nfs-utils/nfs-utils.install
@@ -14,14 +14,14 @@ EOM
## arg 1: the new package version
## arg 2: the old package version
post_upgrade() {
- if [ "$(vercmp $2 1.2.0-2)" -lt 0 ]; then
+ if [ "$(vercmp $2 1.2.9-5)" -lt 0 ]; then
cat << 'EOM'
- ==> IMPORTANT NFS UTILS CHANGES:
- ==> This is a rather important upgrade, you are going to have to change config files.
- ==> /etc/rc.conf daemons changes:
- ==> Change portmap to rpcbind
- ==> Change nfslock to nfs-common
- ==> Change nfsd to nfs-server
+ ==> IMPORTANT 1.3.0 NFS UTILS CHANGES:
+ ==> This is a rather important upgrade, you are going to have to change systemd services files.
+ ==> NFS-SERVER:
+ ==> systemctl enable nfs-server.service
+ ==> NFS-CLIENT:
+ ==> systemctl enable nfs-client.target
==>
==> Extended configuration options for NFS (clients & server) are available in:
==> /etc/conf.d/nfs-common
diff --git a/core/nfs-utils/nfs-utils_env.sh b/core/nfs-utils/nfs-utils_env.sh
new file mode 100644
index 000000000..42ff93df2
--- /dev/null
+++ b/core/nfs-utils/nfs-utils_env.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+# archlinux config files
+. /etc/conf.d/nfs-common.conf
+. /etc/conf.d/nfs-server.conf
+# config file read by systemd files
+NFS_UTILS_CONFIG=/run/sysconfig/nfs-utils
+
+[[ -d /run/sysconfig ]] || mkdir /run/sysconfig
+[[ -e $NFS_UTILS_CONFIG ]] && rm -f $NFS_UTILS_CONFIG
+
+# /etc/conf.d/nfs-common
+echo "STATDARGS=\"$STATD_OPTS\"" >> $NFS_UTILS_CONFIG
+echo "SMNOTIFYARGS=\"$SMNOTIFY_OPTS\"" >> $NFS_UTILS_CONFIG
+echo "RPCIDMAPDARGS=\"$IDMAPD_OPTS\"" >> $NFS_UTILS_CONFIG
+echo "GSSDARGS=\"$GSSD_OPTS\"" >> $NFS_UTILS_CONFIG
+
+# /etc/conf.d/nfs-server
+echo "RPCMOUNTDARGS=\"$MOUNTD_OPTS\"" >> $NFS_UTILS_CONFIG
+echo "RPCNFSDARGS=\"$NFSD_OPTS\"" >> $NFS_UTILS_CONFIG
+echo "SVCGSSDARGS=\"$SVCGSSD_OPTS\"" >> $NFS_UTILS_CONFIG \ No newline at end of file
diff --git a/core/nfs-utils/nfsd.service b/core/nfs-utils/nfsd.service
deleted file mode 100644
index 83db80657..000000000
--- a/core/nfs-utils/nfsd.service
+++ /dev/null
@@ -1,20 +0,0 @@
-[Unit]
-Description=NFS Server Daemon
-Documentation=man:rpc.nfsd(8)
-After=rpcbind.service
-Requires=rpcbind.service
-Before=nfs-server.target
-PartOf=nfs-server.target
-
-[Service]
-Type=oneshot
-EnvironmentFile=/etc/conf.d/nfs-server.conf
-ExecStart=/usr/bin/rpc.nfsd $NFSD_OPTS $NFSD_COUNT
-ExecStartPost=/usr/bin/exportfs -a
-ExecReload=/usr/bin/exportfs -a -r
-ExecStop=/usr/bin/rpc.nfsd 0
-ExecStopPost=/usr/bin/exportfs -a -u
-RemainAfterExit=yes
-
-[Install]
-WantedBy=multi-user.target
diff --git a/core/nfs-utils/proc-fs-nfsd.mount b/core/nfs-utils/proc-fs-nfsd.mount
deleted file mode 100644
index 26b58b968..000000000
--- a/core/nfs-utils/proc-fs-nfsd.mount
+++ /dev/null
@@ -1,8 +0,0 @@
-[Unit]
-Description=NFS Configuration File System
-DefaultDependencies=no
-
-[Mount]
-What=sunrpc
-Where=/proc/fs/nfsd
-Type=nfsd
diff --git a/core/nfs-utils/rpc-gssd.service b/core/nfs-utils/rpc-gssd.service
deleted file mode 100644
index 8674fb2e5..000000000
--- a/core/nfs-utils/rpc-gssd.service
+++ /dev/null
@@ -1,15 +0,0 @@
-[Unit]
-Description=RPC GSS-API Client Daemon
-Documentation=man:rpc.gssd(8)
-After=rpcbind.service var-lib-nfs-rpc_pipefs.mount
-Requires=rpcbind.service var-lib-nfs-rpc_pipefs.mount
-Before=nfs-client.target remote-fs-pre.target
-PartOf=nfs-client.target
-
-[Service]
-Type=forking
-EnvironmentFile=/etc/conf.d/nfs-common.conf
-ExecStart=/usr/bin/rpc.gssd $GSSD_OPTS
-
-[Install]
-WantedBy=multi-user.target
diff --git a/core/nfs-utils/rpc-idmapd.service b/core/nfs-utils/rpc-idmapd.service
deleted file mode 100644
index 609cde6ed..000000000
--- a/core/nfs-utils/rpc-idmapd.service
+++ /dev/null
@@ -1,15 +0,0 @@
-[Unit]
-Description=NFS v4 ID-Name Mapping Daemon
-Documentation=man:rpc.idmapd(8) man:idmapd.conf(5)
-After=var-lib-nfs-rpc_pipefs.mount nfsd.service
-Requires=var-lib-nfs-rpc_pipefs.mount
-Before=nfs-server.target
-PartOf=nfs-server.target
-
-[Service]
-Type=forking
-EnvironmentFile=/etc/conf.d/nfs-common.conf
-ExecStart=/usr/bin/rpc.idmapd $IDMAPD_OPTS
-
-[Install]
-WantedBy=multi-user.target
diff --git a/core/nfs-utils/rpc-mountd.service b/core/nfs-utils/rpc-mountd.service
deleted file mode 100644
index 2969ee6b0..000000000
--- a/core/nfs-utils/rpc-mountd.service
+++ /dev/null
@@ -1,15 +0,0 @@
-[Unit]
-Description=NFS Mount Server Daemon
-Documentation=man:rpc.mountd(8)
-After=rpcbind.service nfsd.service
-Requires=rpcbind.service nfsd.service
-Before=nfs-server.target
-PartOf=nfs-server.target
-
-[Service]
-Type=forking
-EnvironmentFile=/etc/conf.d/nfs-server.conf
-ExecStart=/usr/bin/rpc.mountd $MOUNTD_OPTS
-
-[Install]
-WantedBy=multi-user.target
diff --git a/core/nfs-utils/rpc-statd.service b/core/nfs-utils/rpc-statd.service
deleted file mode 100644
index c5a1c359a..000000000
--- a/core/nfs-utils/rpc-statd.service
+++ /dev/null
@@ -1,16 +0,0 @@
-[Unit]
-Description=NFS v2/3 Network Status Monitor Daemon
-Documentation=man:rpc.statd(8)
-After=rpcbind.service
-Requires=rpcbind.service
-Before=nfs-server.target
-PartOf=nfs-server.target
-Wants=remote-fs-pre.target
-
-[Service]
-Type=forking
-EnvironmentFile=/etc/conf.d/nfs-common.conf
-ExecStart=/usr/bin/rpc.statd $STATD_OPTS
-
-[Install]
-WantedBy=multi-user.target
diff --git a/core/nfs-utils/rpc-svcgssd.service b/core/nfs-utils/rpc-svcgssd.service
deleted file mode 100644
index f52f26aec..000000000
--- a/core/nfs-utils/rpc-svcgssd.service
+++ /dev/null
@@ -1,15 +0,0 @@
-[Unit]
-Description=RPC GSS-API Server Daemon
-Documentation=man:rpc.svcgssd(8)
-After=rpcbind.service
-Requires=rpcbind.service
-Before=nfs-server.target
-PartOf=nfs-server.target
-
-[Service]
-Type=forking
-EnvironmentFile=/etc/conf.d/nfs-server.conf
-ExecStart=/usr/bin/rpc.svcgssd $SVCGSSD_OPTS
-
-[Install]
-WantedBy=multi-user.target
diff --git a/core/nfs-utils/start-statd.patch b/core/nfs-utils/start-statd.patch
deleted file mode 100644
index 6f6f1194d..000000000
--- a/core/nfs-utils/start-statd.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- nfs-utils-1.2.8/utils/statd/start-statd.old 2013-05-23 11:35:10.408221686 +0200
-+++ nfs-utils-1.2.8/utils/statd/start-statd 2013-05-23 11:35:22.191356904 +0200
-@@ -4,6 +4,6 @@
- # /var/run/rpc.statd.pid).
- # It should run statd with whatever flags are apropriate for this
- # site.
--PATH=/sbin:/usr/sbin
-+PATH=/sbin:/usr/sbin:/usr/bin
- exec rpc.statd --no-notify
-
diff --git a/core/nfs-utils/var-lib-nfs-rpc_pipefs.mount b/core/nfs-utils/var-lib-nfs-rpc_pipefs.mount
deleted file mode 100644
index c41665822..000000000
--- a/core/nfs-utils/var-lib-nfs-rpc_pipefs.mount
+++ /dev/null
@@ -1,7 +0,0 @@
-[Unit]
-Description=RPC Pipe File System
-
-[Mount]
-What=rpc_pipefs
-Where=/var/lib/nfs/rpc_pipefs
-Type=rpc_pipefs
diff --git a/core/rpcbind/PKGBUILD b/core/rpcbind/PKGBUILD
index d50b2bf4c..25b600581 100644
--- a/core/rpcbind/PKGBUILD
+++ b/core/rpcbind/PKGBUILD
@@ -1,23 +1,28 @@
-# $Id: PKGBUILD 193786 2013-08-31 10:51:12Z tpowa $
+# $Id: PKGBUILD 215487 2014-06-26 19:15:57Z tpowa $
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
pkgname=rpcbind
pkgver=0.2.1
-pkgrel=2
+pkgrel=5
pkgdesc="portmap replacement which supports RPC over various protocols"
arch=(i686 x86_64)
+backup=('etc/conf.d/rpcbind')
depends=('bash' 'glibc' 'libtirpc')
url="http://rpcbind.sourceforge.net"
license=('custom')
replaces=('portmap')
source=(http://downloads.sourceforge.net/sourceforge/rpcbind/rpcbind-0.2.1.tar.bz2
rpcbind-sunrpc.patch
- rpcbind.service)
+ rpcbind.service
+ rpcbind.socket
+ rpcbind.conf)
install=rpcbind.install
md5sums=('0a5f9c2142af814c55d957aaab3bcc68'
'c02ac36a98baac70b8a26190524b7b73'
- 'a7b23a32be2eb52d7dec52da36d4eba1'
-)
+ '0f493a590c250267034e230e7bf1f894'
+ 'e5a205cd7402fedaf74a744b2a22f0ad'
+ 'd4c74d1be9f98344af138a15ad3b6f8c')
+
prepare() {
cd $srcdir/$pkgname-$pkgver
# patch for iana services file
@@ -26,7 +31,7 @@ prepare() {
build() {
cd $srcdir/$pkgname-$pkgver
- ./configure --prefix=/usr --with-rpcuser=rpc --enable-warmstarts --with-statedir=/run
+ ./configure --prefix=/usr --with-rpcuser=rpc --enable-warmstarts --with-statedir=/var/lib/rpcbind
make
}
@@ -38,10 +43,21 @@ check() {
package() {
cd $srcdir/$pkgname-$pkgver
make DESTDIR=$pkgdir install
+ # install rpcbind config file
+ install -D -m644 $srcdir/rpcbind.conf $pkgdir/etc/conf.d/rpcbind
# install missing man page - https://bugs.archlinux.org/task/21271
install -m644 man/rpcinfo.8 $pkgdir/usr/share/man/man8/
# install systemd service file
install -D -m644 $srcdir/rpcbind.service $pkgdir/usr/lib/systemd/system/rpcbind.service
+ # install system socket activation
+ install -D -m644 $srcdir/rpcbind.socket $pkgdir/usr/lib/systemd/system/rpcbind.socket
+ # add symlinks
+ mkdir $pkgdir/usr/lib/systemd/system/sockets.target.wants
+ mkdir $pkgdir/usr/lib/systemd/system/multi-user.target.wants
+ ln -sf ../rpcbind.socket $pkgdir/usr/lib/systemd/system/sockets.target.wants/rpcbind.socket
+ ln -sf ../rpcbind.service $pkgdir/usr/lib/systemd/system/multi-user.target.wants/rpcbind.service
+ # add state directory
+ install -d -m 700 -o 32 -g 32 $pkgdir/var/lib/rpcbind
# install license
install -D -m644 COPYING $pkgdir/usr/share/licenses/rpcbind/COPYING
}
diff --git a/core/rpcbind/rpcbind.conf b/core/rpcbind/rpcbind.conf
new file mode 100644
index 000000000..4b35e3749
--- /dev/null
+++ b/core/rpcbind/rpcbind.conf
@@ -0,0 +1,3 @@
+#
+# Optional arguments passed to rpcbind. See rpcbind(8)
+RPCBIND_ARGS=""
diff --git a/core/rpcbind/rpcbind.service b/core/rpcbind/rpcbind.service
index 3bc764efc..1cb27e5c8 100644
--- a/core/rpcbind/rpcbind.service
+++ b/core/rpcbind/rpcbind.service
@@ -1,13 +1,11 @@
[Unit]
-Description=RPC Bind
-After=network.target
-Wants=rpcbind.target
-Before=rpcbind.target
+Description=RPC bind service
+Requires=rpcbind.socket
[Service]
Type=forking
-ExecStart=/usr/bin/rpcbind
-Restart=always
+EnvironmentFile=/etc/conf.d/rpcbind
+ExecStart=/usr/bin/rpcbind -w ${RPCBIND_ARGS}
[Install]
-WantedBy=multi-user.target
+Also=rpcbind.socket
diff --git a/core/rpcbind/rpcbind.socket b/core/rpcbind/rpcbind.socket
new file mode 100644
index 000000000..d63c1d972
--- /dev/null
+++ b/core/rpcbind/rpcbind.socket
@@ -0,0 +1,8 @@
+[Unit]
+Description=RPCbind Server Activation Socket
+
+[Socket]
+ListenStream=/var/run/rpcbind.sock
+
+[Install]
+WantedBy=sockets.target
diff --git a/extra/flac/PKGBUILD b/extra/flac/PKGBUILD
index 71b5347df..7a5737e9b 100644
--- a/extra/flac/PKGBUILD
+++ b/extra/flac/PKGBUILD
@@ -1,18 +1,24 @@
-# $Id: PKGBUILD 213052 2014-05-18 04:34:11Z eric $
+# $Id: PKGBUILD 215465 2014-06-26 00:20:23Z eric $
# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgbase=flac
pkgname=('flac' 'flac-doc')
pkgver=1.3.0
-pkgrel=2
+pkgrel=3
arch=('i686' 'x86_64')
url="http://flac.sourceforge.net/"
license=('BSD' 'GPL')
depends=('gcc-libs' 'libogg')
makedepends=('nasm' 'doxygen')
options=('!makeflags')
-source=(http://downloads.xiph.org/releases/flac/${pkgbase}-${pkgver}.tar.xz)
-sha1sums=('a136e5748f8fb1e6c524c75000a765fc63bb7b1b')
+source=(http://downloads.xiph.org/releases/flac/${pkgbase}-${pkgver}.tar.xz flac-realloc.patch)
+sha1sums=('a136e5748f8fb1e6c524c75000a765fc63bb7b1b'
+ '22bf08219c289d747f399e351c701d0f195d3ce0')
+
+prepare() {
+ cd ${pkgbase}-${pkgver}
+ patch -p1 -i "${srcdir}/flac-realloc.patch"
+}
build() {
cd ${pkgbase}-${pkgver}
diff --git a/extra/flac/flac-realloc.patch b/extra/flac/flac-realloc.patch
new file mode 100644
index 000000000..cf1a212cf
--- /dev/null
+++ b/extra/flac/flac-realloc.patch
@@ -0,0 +1,15 @@
+X-Git-Url: http://git.xiph.org/?p=flac.git;a=blobdiff_plain;f=src%2Fmetaflac%2Futils.c;h=8a31daaddd47f8ea2d7b1e66445d180b4151e0db;hp=097537b2d39ea302269a16e7da9bc413e02ffb6e;hb=606fdfcaece19d3e05434bde57c289102a369069;hpb=d42c04260bf9e27cbb8c61a5529ecab3b20e25ff
+
+diff --git a/src/metaflac/utils.c b/src/metaflac/utils.c
+index 097537b..8a31daa 100644
+--- a/src/metaflac/utils.c
++++ b/src/metaflac/utils.c
+@@ -75,7 +75,7 @@ void local_strcat(char **dest, const char *source)
+ *dest = safe_realloc_add_3op_(*dest, ndest, /*+*/nsource, /*+*/1);
+ if(0 == *dest)
+ die("out of memory growing string");
+- safe_strncpy((*dest)+ndest, source, ndest + nsource + 1);
++ safe_strncpy((*dest)+ndest, source, nsource + 1);
+ }
+
+ static inline int local_isprint(int c)
diff --git a/extra/git/PKGBUILD b/extra/git/PKGBUILD
index ab0506250..8b86188cb 100644
--- a/extra/git/PKGBUILD
+++ b/extra/git/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 214028 2014-06-01 21:43:54Z dan $
+# $Id: PKGBUILD 215496 2014-06-26 21:33:44Z dan $
# Maintainer: Dan McGee <dan@archlinux.org>
pkgname=git
-pkgver=2.0.0
+pkgver=2.0.1
pkgrel=1
pkgdesc="the fast distributed version control system"
arch=(i686 x86_64)
@@ -105,9 +105,6 @@ package() {
install -D -m 644 "$srcdir"/git-daemon.socket "$pkgdir"/usr/lib/systemd/system/git-daemon.socket
}
-md5sums=('560200d1db05a2dd2b8a2b3718655463'
- '042524f942785772d7bd52a1f02fe5ae'
- 'f67869315c2cc112e076f0c73f248002')
-md5sums=('0646202ae979e4339f3e47f2375b5773'
+md5sums=('6d28a5d112379c20c7f7df9e0ffb070c'
'042524f942785772d7bd52a1f02fe5ae'
'f67869315c2cc112e076f0c73f248002')
diff --git a/extra/imagemagick/PKGBUILD b/extra/imagemagick/PKGBUILD
index b632eab50..2f38334d0 100644
--- a/extra/imagemagick/PKGBUILD
+++ b/extra/imagemagick/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 215256 2014-06-17 19:24:42Z eric $
+# $Id: PKGBUILD 215482 2014-06-26 17:44:45Z eric $
# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgbase=imagemagick
pkgname=('imagemagick' 'imagemagick-doc')
-pkgver=6.8.9.3
+pkgver=6.8.9.4
pkgrel=1
arch=('i686' 'x86_64')
url="http://www.imagemagick.org/"
@@ -14,7 +14,7 @@ makedepends=('libltdl' 'lcms2' 'libxt' 'fontconfig' 'libxext' 'ghostscript'
#source=(http://www.imagemagick.org/download/ImageMagick-${pkgver%.*}-${pkgver##*.}.tar.xz{,.asc}
source=(ftp://ftp.sunet.se/pub/multimedia/graphics/ImageMagick/ImageMagick-${pkgver%.*}-${pkgver##*.}.tar.xz{,.asc}
perlmagick.rpath.patch)
-sha1sums=('6204ab02754c10220f2c7a5d0c61ab3b1172d40e'
+sha1sums=('b3aa7b95f8db8a863602fa4c205420ad1d5a69b7'
'SKIP'
'e143cf9d530fabf3b58023899b5cc544ba93daec')
diff --git a/extra/inkscape/PKGBUILD b/extra/inkscape/PKGBUILD
index 837c2fbaa..3d1dbdd37 100644
--- a/extra/inkscape/PKGBUILD
+++ b/extra/inkscape/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 215399 2014-06-23 22:12:53Z bisson $
+# $Id: PKGBUILD 215483 2014-06-26 17:44:48Z eric $
# Maintainer: Gaetan Bisson <bisson@archlinux.org>
# Contributor: Tobias Kieslich <tobias@justdreams.de>
# Contributor: tobias <tobias@archlinux.org>
pkgname=inkscape
pkgver=0.48.5
-pkgrel=1
+pkgrel=2
pkgdesc='Vector graphics editor using the SVG file format'
url='http://inkscape.sourceforge.net/'
license=('GPL' 'LGPL')
diff --git a/extra/intel-tbb/PKGBUILD b/extra/intel-tbb/PKGBUILD
index e79237c26..760a5d2a9 100644
--- a/extra/intel-tbb/PKGBUILD
+++ b/extra/intel-tbb/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 210356 2014-04-14 16:42:11Z eric $
+# $Id: PKGBUILD 215494 2014-06-26 20:41:37Z eric $
# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
# Contributor: Thomas Dziedzic < gostrc at gmail >
# Contributor: Denis Martinez <deuns.martinez AT gmail.com>
pkgname=intel-tbb
-pkgver=4.2_20140122
+pkgver=4.2_20140601
pkgrel=1
pkgdesc='High level abstract threading library'
arch=('i686' 'x86_64')
@@ -12,7 +12,7 @@ url='http://www.threadingbuildingblocks.org/'
license=('GPL')
depends=('gcc-libs')
source=("http://threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb${pkgver/\./}oss_src.tgz")
-sha1sums=('d897a6ced4f425c6608422a2e19218898e727260')
+sha1sums=('f50c04a27f5e37c920a03be134dc57ccf909515d')
build() {
cd tbb${pkgver/\./}oss
diff --git a/extra/mesa/PKGBUILD b/extra/mesa/PKGBUILD
index 08ce53503..420114f99 100644
--- a/extra/mesa/PKGBUILD
+++ b/extra/mesa/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 215218 2014-06-16 18:52:23Z foutrelis $
+# $Id: PKGBUILD 215463 2014-06-25 23:03:43Z lcarlier $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgbase=mesa
pkgname=('opencl-mesa' 'ati-dri' 'intel-dri' 'nouveau-dri' 'svga-dri' 'mesa' 'mesa-libgl')
-pkgver=10.2.1
-pkgrel=2
+pkgver=10.2.2
+pkgrel=1
arch=('i686' 'x86_64')
makedepends=('python2' 'libxml2' 'libx11' 'glproto' 'libdrm' 'dri2proto' 'dri3proto' 'presentproto'
'libxshmfence' 'libxxf86vm' 'libxdamage' 'libvdpau' 'wayland' 'elfutils' 'llvm' 'systemd'
@@ -14,8 +14,8 @@ url="http://mesa3d.sourceforge.net"
license=('custom')
source=(ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2
LICENSE)
-md5sums=('093f9b5d077e5f6061dcd7b01b7aa51a'
- '5c65a0fe315dd347e09b1f2826a1df5a')
+sha256sums=('38c4a40364000f89cddaa1694f6f3cfb444981d1110238ce603093585477399c'
+ '7fdc119cf53c8ca65396ea73f6d10af641ba41ea1dd2bd44a824726e01c8b3f2')
build() {
cd ${srcdir}/?esa-*
diff --git a/extra/nginx/PKGBUILD b/extra/nginx/PKGBUILD
index 510958dbb..299507196 100644
--- a/extra/nginx/PKGBUILD
+++ b/extra/nginx/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 213863 2014-05-30 16:37:11Z bpiotrowski $
+# $Id: PKGBUILD 215474 2014-06-26 09:27:07Z bpiotrowski $
# Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Maintainer: Sébastien Luttringer
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
@@ -7,7 +7,7 @@
pkgname=nginx
pkgver=1.6.0
-pkgrel=4
+pkgrel=5
pkgdesc='Lightweight HTTP server and IMAP/POP3 proxy server'
arch=('i686' 'x86_64')
url='http://nginx.org'
@@ -95,6 +95,9 @@ package() {
install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
rmdir "$pkgdir"/run
+
+ install -d "$pkgdir"/usr/share/man/man8/
+ gzip -9c man/nginx.8 > "$pkgdir"/usr/share/man/man8/nginx.8.gz
}
# vim:set ts=2 sw=2 et:
diff --git a/extra/php/PKGBUILD b/extra/php/PKGBUILD
index 416a0ec8b..2103e51ae 100644
--- a/extra/php/PKGBUILD
+++ b/extra/php/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 213812 2014-05-29 11:04:10Z pierre $
+# $Id: PKGBUILD 215481 2014-06-26 16:14:41Z pierre $
# Maintainer: Pierre Schmitz <pierre@archlinux.de>
pkgbase=php
@@ -21,7 +21,7 @@ pkgname=('php'
'php-sqlite'
'php-tidy'
'php-xsl')
-pkgver=5.5.13
+pkgver=5.5.14
pkgrel=1
arch=('i686' 'x86_64')
license=('PHP')
@@ -34,7 +34,7 @@ source=("http://www.php.net/distributions/${pkgbase}-${pkgver}.tar.gz"
"http://www.php.net/distributions/${pkgbase}-${pkgver}.tar.gz.asc"
'php.ini.patch' 'apache.conf' 'php-fpm.conf.in.patch'
'logrotate.d.php-fpm' 'php-fpm.service' 'php-fpm.tmpfiles')
-md5sums=('32d0fc26fccdb249a918c0e01ffb7b82'
+md5sums=('b34262d4ccbb6bef8d2cf83840625201'
'SKIP'
'510f9092ebfe6e378e12817e197a88b6'
'dec2cbaad64e3abf4f0ec70e1de4e8e9'
diff --git a/extra/pptpclient/PKGBUILD b/extra/pptpclient/PKGBUILD
new file mode 100644
index 000000000..e09245fec
--- /dev/null
+++ b/extra/pptpclient/PKGBUILD
@@ -0,0 +1,39 @@
+# $Id: PKGBUILD 215491 2014-06-26 20:19:29Z daniel $
+# Maintainer: Daniel Isenmann <daniel @ archlinux.org>
+# Contributor: Mark Nikkel <mnikkel@gmail.com>
+
+pkgname=pptpclient
+pkgver=1.8.0
+pkgrel=1
+pkgdesc="Client for the proprietary Microsoft Point-to-Point Tunneling Protocol, PPTP."
+arch=('i686' 'x86_64')
+url="http://pptpclient.sourceforge.net/"
+license=('GPL')
+depends=('ppp' 'iproute2')
+backup=('etc/ppp/options.pptp')
+source=("http://downloads.sourceforge.net/sourceforge/pptpclient/pptp-$pkgver.tar.gz")
+md5sums=('4efce9f263e2c3f38d79d9df222476de')
+
+prepare() {
+ cd $srcdir/pptp-$pkgver
+
+ # use our CFLAGS and LDFLAGS
+ sed -i -e "/CFLAGS =/ c\CFLAGS = ${CFLAGS}" Makefile
+ sed -i -e "/LDFLAGS =/ c\LDFLAGS = ${LDFLAGS}" Makefile
+
+ # adjust ip path
+ sed -i 's#/bin/ip#/usr/bin/ip#' routing.c
+
+ # put binaries in /usr/bin
+ sed -i "/BINDIR/s#/sbin#/bin#" Makefile
+}
+
+build() {
+ cd $srcdir/pptp-$pkgver
+ make
+}
+
+package() {
+ cd $srcdir/pptp-$pkgver
+ make DESTDIR=$pkgdir install
+}
diff --git a/extra/pstoedit/PKGBUILD b/extra/pstoedit/PKGBUILD
index 80c082155..98879ba77 100644
--- a/extra/pstoedit/PKGBUILD
+++ b/extra/pstoedit/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 215258 2014-06-17 19:24:44Z eric $
+# $Id: PKGBUILD 215484 2014-06-26 17:44:52Z eric $
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Contributor: damir <damir@archlinux.org>
# Contributor: Tobias Powalowski <t.powa@gmx.de>
pkgname=pstoedit
pkgver=3.62
-pkgrel=5
+pkgrel=6
pkgdesc="Translates PostScript and PDF graphics into other vector formats"
arch=('i686' 'x86_64')
url="http://www.pstoedit.net/"
diff --git a/extra/qtcreator/PKGBUILD b/extra/qtcreator/PKGBUILD
index 0d206267e..7a8221dd0 100644
--- a/extra/qtcreator/PKGBUILD
+++ b/extra/qtcreator/PKGBUILD
@@ -7,8 +7,8 @@
# Contributor: delor <bartekpiech gmail com>
pkgname=qtcreator
-pkgver=3.1.1
-_pkgver=v3.1.1
+pkgver=3.1.2
+_pkgver=v3.1.2
pkgrel=1
pkgdesc='Lightweight, cross-platform integrated development environment'
arch=('i686' 'x86_64')
diff --git a/extra/rsync/PKGBUILD b/extra/rsync/PKGBUILD
index 75710119d..a33ccd01f 100644
--- a/extra/rsync/PKGBUILD
+++ b/extra/rsync/PKGBUILD
@@ -1,32 +1,25 @@
-# $Id: PKGBUILD 211621 2014-04-21 17:22:50Z jgc $
+# $Id: PKGBUILD 215468 2014-06-26 04:45:15Z pierre $
pkgname=rsync
-pkgver=3.1.0
-pkgrel=2
+pkgver=3.1.1
+pkgrel=1
pkgdesc="A file transfer program to keep remote files in sync"
arch=('i686' 'x86_64')
url="http://rsync.samba.org/"
license=('GPL3')
-depends=('perl' 'popt')
+depends=('perl' 'popt' 'acl' 'zlib')
backup=('etc/rsyncd.conf' 'etc/xinetd.d/rsync')
source=("http://rsync.samba.org/ftp/rsync/$pkgname-$pkgver.tar.gz"
"http://rsync.samba.org/ftp/rsync/$pkgname-$pkgver.tar.gz.asc"
'rsyncd.conf' 'rsync.xinetd' 'rsyncd.service'
- 'rsyncd.socket' 'rsyncd@.service'
- 'CVE-2014-2855.patch')
-md5sums=('3be148772a33224771a8d4d2a028b132'
+ 'rsyncd.socket' 'rsyncd@.service')
+md5sums=('43bd6676f0b404326eee2d63be3cdcfe'
'SKIP'
'bce64d122a8e0f86872a4a21a03bc7f3'
'ea3e9277dc908bc51f9eddc0f6b935c1'
'084140868d38cf3e937a2db716d47c0f'
'ae4c381e0c02d6132c7f6ded3f473041'
- '53f94e613e0bc502d38dd61bd2cd7636'
- 'dacfe77bd72fbf6b6ba65c741c57f74c')
-
-prepare() {
- cd $pkgname-$pkgver
- patch -Np1 -i ../CVE-2014-2855.patch
-}
+ '53f94e613e0bc502d38dd61bd2cd7636')
build() {
cd "$srcdir/$pkgname-$pkgver"