summaryrefslogtreecommitdiff
path: root/filesystems
diff options
context:
space:
mode:
authormanu <manu>2011-07-08 08:02:56 +0000
committermanu <manu>2011-07-08 08:02:56 +0000
commit54c1da41aaf6c5656709787eb86a1e85b89a4d83 (patch)
treec2d7ff00a379ff3bfd6b0b5561856baa7ed4a273 /filesystems
parentc6ab37d3d88ce3e3c9a78d64291f7c7c439bd8e1 (diff)
downloadpkgsrc-54c1da41aaf6c5656709787eb86a1e85b89a4d83.tar.gz
Upgrade to glusterfs-3.2.1
This release is mostly about bug fixes, and we also fix bugs in the NetBSD port.
Diffstat (limited to 'filesystems')
-rw-r--r--filesystems/glusterfs/MESSAGE.NetBSD2
-rw-r--r--filesystems/glusterfs/Makefile8
-rw-r--r--filesystems/glusterfs/PLIST144
-rw-r--r--filesystems/glusterfs/distinfo21
-rwxr-xr-xfilesystems/glusterfs/files/glusterd.sh2
-rwxr-xr-xfilesystems/glusterfs/files/glusterfsd.sh2
-rwxr-xr-xfilesystems/glusterfs/files/xattr-init.sh22
-rw-r--r--filesystems/glusterfs/patches/patch-aa2
-rw-r--r--filesystems/glusterfs/patches/patch-ab2
-rw-r--r--filesystems/glusterfs/patches/patch-ae2
-rw-r--r--filesystems/glusterfs/patches/patch-af2
-rw-r--r--filesystems/glusterfs/patches/patch-an2
-rw-r--r--filesystems/glusterfs/patches/patch-ao2
-rw-r--r--filesystems/glusterfs/patches/patch-ar2
-rw-r--r--filesystems/glusterfs/patches/patch-as2
-rw-r--r--filesystems/glusterfs/patches/patch-ax28
-rw-r--r--filesystems/glusterfs/patches/patch-ba2
-rw-r--r--filesystems/glusterfs/patches/patch-bb5
-rw-r--r--filesystems/glusterfs/patches/patch-bc2
-rw-r--r--filesystems/glusterfs/patches/patch-be169
-rw-r--r--filesystems/glusterfs/patches/patch-bf32
-rw-r--r--filesystems/glusterfs/patches/patch-bh2
-rw-r--r--filesystems/glusterfs/patches/patch-bj2
-rw-r--r--filesystems/glusterfs/patches/patch-bk2
-rw-r--r--filesystems/glusterfs/patches/patch-bl2
-rw-r--r--filesystems/glusterfs/patches/patch-bm2
-rw-r--r--filesystems/glusterfs/patches/patch-bn2
-rw-r--r--filesystems/glusterfs/patches/patch-bp2
-rw-r--r--filesystems/glusterfs/patches/patch-bq51
-rw-r--r--filesystems/glusterfs/patches/patch-br28
-rw-r--r--filesystems/glusterfs/patches/patch-bs84
-rw-r--r--filesystems/glusterfs/patches/patch-bt28
32 files changed, 490 insertions, 170 deletions
diff --git a/filesystems/glusterfs/MESSAGE.NetBSD b/filesystems/glusterfs/MESSAGE.NetBSD
index cee91596694..ab7456daccb 100644
--- a/filesystems/glusterfs/MESSAGE.NetBSD
+++ b/filesystems/glusterfs/MESSAGE.NetBSD
@@ -1,5 +1,5 @@
===========================================================================
-$NetBSD: MESSAGE.NetBSD,v 1.6 2011/05/19 14:54:22 manu Exp $
+$NetBSD: MESSAGE.NetBSD,v 1.7 2011/07/08 08:02:56 manu Exp $
In order to use mount -t glusterfs, please install this link
ln -s ${PREFIX}/sbin/mount.glusterfs /sbin/mount_glusterfs
diff --git a/filesystems/glusterfs/Makefile b/filesystems/glusterfs/Makefile
index a6cca074a55..0e22c955b4d 100644
--- a/filesystems/glusterfs/Makefile
+++ b/filesystems/glusterfs/Makefile
@@ -1,10 +1,10 @@
-# $NetBSD: Makefile,v 1.11 2011/06/29 13:53:01 manu Exp $
+# $NetBSD: Makefile,v 1.12 2011/07/08 08:02:56 manu Exp $
#
-DISTNAME= glusterfs-3.2.0
-PKGREVISION= 3
+DISTNAME= glusterfs-3.2.1
+PKGREVISION= 1
CATEGORIES= filesystems
-MASTER_SITES= http://download.gluster.com/pub/gluster/glusterfs/3.2/LATEST/
+MASTER_SITES= http://download.gluster.com/pub/gluster/glusterfs/3.2/3.2.1/
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://www.gluster.org/
diff --git a/filesystems/glusterfs/PLIST b/filesystems/glusterfs/PLIST
index 2f5a78cf8fe..c623d559133 100644
--- a/filesystems/glusterfs/PLIST
+++ b/filesystems/glusterfs/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.4 2011/06/06 15:53:13 manu Exp $
+@comment $NetBSD: PLIST,v 1.5 2011/07/08 08:02:56 manu Exp $
etc/glusterfs/xattr-init.sh
etc/glusterfs/glusterfs.vol.sample
etc/glusterfs/glusterfsd.vol.sample
@@ -9,77 +9,77 @@ lib/libglusterfs.la
lib/libglusterfs.a
lib/libgfrpc.so.0.0.0
lib/libgfrpc.la
-lib/glusterfs/3.2.0/rpc-transport/socket.so.0.0.0
-lib/glusterfs/3.2.0/rpc-transport/socket.la
-lib/glusterfs/3.2.0/xlator/cluster/distribute.so
-lib/glusterfs/3.2.0/xlator/cluster/replicate.so
-lib/glusterfs/3.2.0/xlator/features/posix-locks.so
-lib/glusterfs/3.2.0/xlator/cluster/stripe.so.0.0.0
-lib/glusterfs/3.2.0/xlator/cluster/stripe.la
-lib/glusterfs/3.2.0/xlator/cluster/afr.so.0.0.0
-lib/glusterfs/3.2.0/xlator/cluster/afr.la
-lib/glusterfs/3.2.0/xlator/cluster/pump.so.0.0.0
-lib/glusterfs/3.2.0/xlator/cluster/pump.la
-lib/glusterfs/3.2.0/xlator/cluster/dht.so.0.0.0
-lib/glusterfs/3.2.0/xlator/cluster/dht.la
-lib/glusterfs/3.2.0/xlator/cluster/nufa.so.0.0.0
-lib/glusterfs/3.2.0/xlator/cluster/nufa.la
-lib/glusterfs/3.2.0/xlator/cluster/switch.so.0.0.0
-lib/glusterfs/3.2.0/xlator/cluster/switch.la
-lib/glusterfs/3.2.0/xlator/storage/posix.so.0.0.0
-lib/glusterfs/3.2.0/xlator/storage/posix.la
-lib/glusterfs/3.2.0/xlator/protocol/client.so.0.0.0
-lib/glusterfs/3.2.0/xlator/protocol/client.la
-lib/glusterfs/3.2.0/xlator/protocol/server.so.0.0.0
-lib/glusterfs/3.2.0/xlator/protocol/server.la
-lib/glusterfs/3.2.0/xlator/performance/write-behind.so.0.0.0
-lib/glusterfs/3.2.0/xlator/performance/write-behind.la
-lib/glusterfs/3.2.0/xlator/performance/read-ahead.so.0.0.0
-lib/glusterfs/3.2.0/xlator/performance/read-ahead.la
-lib/glusterfs/3.2.0/xlator/performance/io-threads.so.0.0.0
-lib/glusterfs/3.2.0/xlator/performance/io-threads.la
-lib/glusterfs/3.2.0/xlator/performance/io-cache.so.0.0.0
-lib/glusterfs/3.2.0/xlator/performance/io-cache.la
-lib/glusterfs/3.2.0/xlator/performance/quick-read.so.0.0.0
-lib/glusterfs/3.2.0/xlator/performance/quick-read.la
-lib/glusterfs/3.2.0/xlator/performance/stat-prefetch.so.0.0.0
-lib/glusterfs/3.2.0/xlator/performance/stat-prefetch.la
-lib/glusterfs/3.2.0/xlator/testing/performance/symlink-cache.so.0.0.0
-lib/glusterfs/3.2.0/xlator/testing/performance/symlink-cache.la
-lib/glusterfs/3.2.0/xlator/testing/features/trash.so.0.0.0
-lib/glusterfs/3.2.0/xlator/testing/features/trash.la
-lib/glusterfs/3.2.0/xlator/debug/trace.so.0.0.0
-lib/glusterfs/3.2.0/xlator/debug/trace.la
-lib/glusterfs/3.2.0/xlator/debug/error-gen.so.0.0.0
-lib/glusterfs/3.2.0/xlator/debug/error-gen.la
-lib/glusterfs/3.2.0/xlator/debug/io-stats.so.0.0.0
-lib/glusterfs/3.2.0/xlator/debug/io-stats.la
-lib/glusterfs/3.2.0/xlator/features/locks.so.0.0.0
-lib/glusterfs/3.2.0/xlator/features/locks.la
-lib/glusterfs/3.2.0/xlator/features/quota.so.0.0.0
-lib/glusterfs/3.2.0/xlator/features/quota.la
-lib/glusterfs/3.2.0/xlator/features/read-only.so.0.0.0
-lib/glusterfs/3.2.0/xlator/features/read-only.la
-lib/glusterfs/3.2.0/xlator/features/access-control.so.0.0.0
-lib/glusterfs/3.2.0/xlator/features/access-control.la
-lib/glusterfs/3.2.0/xlator/features/mac-compat.so.0.0.0
-lib/glusterfs/3.2.0/xlator/features/mac-compat.la
-lib/glusterfs/3.2.0/xlator/features/quiesce.so.0.0.0
-lib/glusterfs/3.2.0/xlator/features/quiesce.la
-lib/glusterfs/3.2.0/xlator/features/marker.so.0.0.0
-lib/glusterfs/3.2.0/xlator/features/marker.la
-lib/glusterfs/3.2.0/xlator/encryption/rot-13.so.0.0.0
-lib/glusterfs/3.2.0/xlator/encryption/rot-13.la
-lib/glusterfs/3.2.0/xlator/mount/fuse.so.0.0.0
-lib/glusterfs/3.2.0/xlator/mount/fuse.la
-lib/glusterfs/3.2.0/xlator/nfs/server.so.0.0.0
-lib/glusterfs/3.2.0/xlator/nfs/server.la
-lib/glusterfs/3.2.0/xlator/mgmt/glusterd.so.0.0.0
-lib/glusterfs/3.2.0/xlator/mgmt/glusterd.la
-lib/glusterfs/3.2.0/auth/addr.so.0.0.0
-lib/glusterfs/3.2.0/auth/addr.la
-lib/glusterfs/3.2.0/auth/login.so.0.0.0
-lib/glusterfs/3.2.0/auth/login.la
+lib/glusterfs/3.2.1/rpc-transport/socket.so.0.0.0
+lib/glusterfs/3.2.1/rpc-transport/socket.la
+lib/glusterfs/3.2.1/xlator/cluster/distribute.so
+lib/glusterfs/3.2.1/xlator/cluster/replicate.so
+lib/glusterfs/3.2.1/xlator/features/posix-locks.so
+lib/glusterfs/3.2.1/xlator/cluster/stripe.so.0.0.0
+lib/glusterfs/3.2.1/xlator/cluster/stripe.la
+lib/glusterfs/3.2.1/xlator/cluster/afr.so.0.0.0
+lib/glusterfs/3.2.1/xlator/cluster/afr.la
+lib/glusterfs/3.2.1/xlator/cluster/pump.so.0.0.0
+lib/glusterfs/3.2.1/xlator/cluster/pump.la
+lib/glusterfs/3.2.1/xlator/cluster/dht.so.0.0.0
+lib/glusterfs/3.2.1/xlator/cluster/dht.la
+lib/glusterfs/3.2.1/xlator/cluster/nufa.so.0.0.0
+lib/glusterfs/3.2.1/xlator/cluster/nufa.la
+lib/glusterfs/3.2.1/xlator/cluster/switch.so.0.0.0
+lib/glusterfs/3.2.1/xlator/cluster/switch.la
+lib/glusterfs/3.2.1/xlator/storage/posix.so.0.0.0
+lib/glusterfs/3.2.1/xlator/storage/posix.la
+lib/glusterfs/3.2.1/xlator/protocol/client.so.0.0.0
+lib/glusterfs/3.2.1/xlator/protocol/client.la
+lib/glusterfs/3.2.1/xlator/protocol/server.so.0.0.0
+lib/glusterfs/3.2.1/xlator/protocol/server.la
+lib/glusterfs/3.2.1/xlator/performance/write-behind.so.0.0.0
+lib/glusterfs/3.2.1/xlator/performance/write-behind.la
+lib/glusterfs/3.2.1/xlator/performance/read-ahead.so.0.0.0
+lib/glusterfs/3.2.1/xlator/performance/read-ahead.la
+lib/glusterfs/3.2.1/xlator/performance/io-threads.so.0.0.0
+lib/glusterfs/3.2.1/xlator/performance/io-threads.la
+lib/glusterfs/3.2.1/xlator/performance/io-cache.so.0.0.0
+lib/glusterfs/3.2.1/xlator/performance/io-cache.la
+lib/glusterfs/3.2.1/xlator/performance/quick-read.so.0.0.0
+lib/glusterfs/3.2.1/xlator/performance/quick-read.la
+lib/glusterfs/3.2.1/xlator/performance/stat-prefetch.so.0.0.0
+lib/glusterfs/3.2.1/xlator/performance/stat-prefetch.la
+lib/glusterfs/3.2.1/xlator/testing/performance/symlink-cache.so.0.0.0
+lib/glusterfs/3.2.1/xlator/testing/performance/symlink-cache.la
+lib/glusterfs/3.2.1/xlator/testing/features/trash.so.0.0.0
+lib/glusterfs/3.2.1/xlator/testing/features/trash.la
+lib/glusterfs/3.2.1/xlator/debug/trace.so.0.0.0
+lib/glusterfs/3.2.1/xlator/debug/trace.la
+lib/glusterfs/3.2.1/xlator/debug/error-gen.so.0.0.0
+lib/glusterfs/3.2.1/xlator/debug/error-gen.la
+lib/glusterfs/3.2.1/xlator/debug/io-stats.so.0.0.0
+lib/glusterfs/3.2.1/xlator/debug/io-stats.la
+lib/glusterfs/3.2.1/xlator/features/locks.so.0.0.0
+lib/glusterfs/3.2.1/xlator/features/locks.la
+lib/glusterfs/3.2.1/xlator/features/quota.so.0.0.0
+lib/glusterfs/3.2.1/xlator/features/quota.la
+lib/glusterfs/3.2.1/xlator/features/read-only.so.0.0.0
+lib/glusterfs/3.2.1/xlator/features/read-only.la
+lib/glusterfs/3.2.1/xlator/features/access-control.so.0.0.0
+lib/glusterfs/3.2.1/xlator/features/access-control.la
+lib/glusterfs/3.2.1/xlator/features/mac-compat.so.0.0.0
+lib/glusterfs/3.2.1/xlator/features/mac-compat.la
+lib/glusterfs/3.2.1/xlator/features/quiesce.so.0.0.0
+lib/glusterfs/3.2.1/xlator/features/quiesce.la
+lib/glusterfs/3.2.1/xlator/features/marker.so.0.0.0
+lib/glusterfs/3.2.1/xlator/features/marker.la
+lib/glusterfs/3.2.1/xlator/encryption/rot-13.so.0.0.0
+lib/glusterfs/3.2.1/xlator/encryption/rot-13.la
+lib/glusterfs/3.2.1/xlator/mount/fuse.so.0.0.0
+lib/glusterfs/3.2.1/xlator/mount/fuse.la
+lib/glusterfs/3.2.1/xlator/nfs/server.so.0.0.0
+lib/glusterfs/3.2.1/xlator/nfs/server.la
+lib/glusterfs/3.2.1/xlator/mgmt/glusterd.so.0.0.0
+lib/glusterfs/3.2.1/xlator/mgmt/glusterd.la
+lib/glusterfs/3.2.1/auth/addr.so.0.0.0
+lib/glusterfs/3.2.1/auth/addr.la
+lib/glusterfs/3.2.1/auth/login.so.0.0.0
+lib/glusterfs/3.2.1/auth/login.la
lib/libgfxdr.so.0.0.0
lib/libgfxdr.la
lib/libgfxdr.a
diff --git a/filesystems/glusterfs/distinfo b/filesystems/glusterfs/distinfo
index a5fc5c8ed20..f3cef1783de 100644
--- a/filesystems/glusterfs/distinfo
+++ b/filesystems/glusterfs/distinfo
@@ -1,8 +1,8 @@
-$NetBSD: distinfo,v 1.6 2011/06/29 13:53:01 manu Exp $
+$NetBSD: distinfo,v 1.7 2011/07/08 08:02:56 manu Exp $
-SHA1 (glusterfs-3.2.0.tar.gz) = a8095e04feedce81aa21634639f278b3810398b8
-RMD160 (glusterfs-3.2.0.tar.gz) = a69f47efd396a413ffb350e1711345ff49557325
-Size (glusterfs-3.2.0.tar.gz) = 2307276 bytes
+SHA1 (glusterfs-3.2.1.tar.gz) = 41719aa09593d9c32d8298022acadf74d8895b58
+RMD160 (glusterfs-3.2.1.tar.gz) = 877667fb852617b38c18d01c040e311cd6f55e49
+Size (glusterfs-3.2.1.tar.gz) = 2339056 bytes
SHA1 (patch-aa) = 0975321d76f7f3d1675989b3e7ebbbd10fa37914
SHA1 (patch-ab) = 50ebee4f7ba34ef260bccada8f99cbed286f834c
SHA1 (patch-ac) = c8ed15790eaa9aa72b61096eadb823a88271e94e
@@ -12,12 +12,12 @@ SHA1 (patch-an) = f61d747e22665a154b95546cb632489d1e0c55bf
SHA1 (patch-ao) = 1845277f39531160bab22dadec1f4eb3c761a358
SHA1 (patch-ar) = a5a18baa88fda145795d0b6f85ba86014e2128f7
SHA1 (patch-as) = 54f6ea0ee4208cd29052084efeb928618936c7d1
-SHA1 (patch-ax) = 2588db4c21df8559ffbcf1b814479228dadd4623
+SHA1 (patch-ax) = bc33548df9f66edefe324871c62108252b0a29c6
SHA1 (patch-ba) = e53d4b833f7b26eaa474a339e5962a251ecacd49
-SHA1 (patch-bb) = 10689b5cf75f3d66ee53b1950212af2d4af998d7
+SHA1 (patch-bb) = f6f39469eef53cbd3ef2cb81e124d4c8ead94f36
SHA1 (patch-bc) = e9323641ed748cbe0ef6cb8912ab76dc5508cc80
-SHA1 (patch-be) = 0db2543504300504be1064cdbb6f19de06917e17
-SHA1 (patch-bf) = 30a39360435dd5f9faaf00e272a2d14fdb1ec86c
+SHA1 (patch-be) = 9178d3f8422bb4e1c06b0bf468b4d857924a2394
+SHA1 (patch-bf) = e4ce30b127d0a32ca168723f09fc7689f2e318da
SHA1 (patch-bh) = befda4dc6d049cf6759aa9147e124900b3962c73
SHA1 (patch-bj) = 508dbb651cfe0f284f50490b52cca6aae194da59
SHA1 (patch-bk) = 7ecaa91aac8ae936600078c41e963ff600613bd5
@@ -26,4 +26,7 @@ SHA1 (patch-bm) = 71156d3bd9dcc02b09db022ee20852f4b52e7306
SHA1 (patch-bn) = d806dc6319568279d79fcc7b14fddd76771aa210
SHA1 (patch-bo) = 3c564fc3854847d26e512ded60082715745a0b1c
SHA1 (patch-bp) = 28363fc5468ef0bc930fe2551a78bed818ec2585
-SHA1 (patch-bq) = 55c71e2c143271fd10afa04b168f94b23acbb982
+SHA1 (patch-bq) = 717d0a01f96c8eac0e4cbc31b294fbfdb3cc3fcf
+SHA1 (patch-br) = 5781be44be29b6dbda01983f6c9b5338bf07210e
+SHA1 (patch-bs) = 49300630717279bc88077afbe78fad6c8628e63b
+SHA1 (patch-bt) = e566da60cf0a88c82ec61e5b2efb08dbafe20cb4
diff --git a/filesystems/glusterfs/files/glusterd.sh b/filesystems/glusterfs/files/glusterd.sh
index e0fe227c4ad..a951dcedace 100755
--- a/filesystems/glusterfs/files/glusterd.sh
+++ b/filesystems/glusterfs/files/glusterd.sh
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# $NetBSD: glusterd.sh,v 1.3 2011/06/06 15:53:14 manu Exp $
+# $NetBSD: glusterd.sh,v 1.4 2011/07/08 08:02:57 manu Exp $
#
# PROVIDE: glusterd
diff --git a/filesystems/glusterfs/files/glusterfsd.sh b/filesystems/glusterfs/files/glusterfsd.sh
index 8284898a36f..7e8594c0a1e 100755
--- a/filesystems/glusterfs/files/glusterfsd.sh
+++ b/filesystems/glusterfs/files/glusterfsd.sh
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# $NetBSD: glusterfsd.sh,v 1.3 2011/05/19 14:54:22 manu Exp $
+# $NetBSD: glusterfsd.sh,v 1.4 2011/07/08 08:02:57 manu Exp $
#
# PROVIDE: glusterfsd
diff --git a/filesystems/glusterfs/files/xattr-init.sh b/filesystems/glusterfs/files/xattr-init.sh
index 38b6b3baa92..416b91886db 100755
--- a/filesystems/glusterfs/files/xattr-init.sh
+++ b/filesystems/glusterfs/files/xattr-init.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-# $NetBSD: xattr-init.sh,v 1.4 2011/06/06 15:53:14 manu Exp $
+# $NetBSD: xattr-init.sh,v 1.5 2011/07/08 08:02:57 manu Exp $
GLUSTERFS_XATTR="
trusted.distribute.linkinfo
@@ -29,18 +29,26 @@ test -d ${VOLUME} || {
exit 1
}
-extattrctl start ${VOLUME} || {
- echo "$0: cannot start extended attributes on ${VOLUME}"
+mkdir -p ${VOLUME}/.attribute/user || {
+ echo "$0: cannot create ${VOLUME}/.attribute/user"
exit 1
}
-mkdir -p ${VOLUME}/.attribute/user || {
- echo "$0: cannot create ${VOLUME}/.attribute/user"
+mkdir -p ${VOLUME}/.attribute/system || {
+ echo "$0: cannot create ${VOLUME}/.attribute/system"
+ exit 1
+}
+
+extattrctl start ${VOLUME} || {
+ echo "$0: cannot start extended attributes on ${VOLUME}"
exit 1
}
for attr in ${GLUSTERFS_XATTR} ; do
- attrfile=${VOLUME}/.attribute/user/${attr}
+ ns="user";
+ echo ${attr} | egrep -q '^(trusted|system|security)\.' && ns="system"
+
+ attrfile=${VOLUME}/.attribute/${ns}/${attr}
test -e ${attrfile} && {
echo "$0: ${attrfile} exists."
@@ -52,7 +60,7 @@ for attr in ${GLUSTERFS_XATTR} ; do
exit 1
}
- extattrctl enable ${VOLUME} user ${attr} ${attrfile} || {
+ extattrctl enable ${VOLUME} ${ns} ${attr} ${attrfile} || {
echo "$0: cannot enable ${attr} backed by ${attrfile}"
exit 1
}
diff --git a/filesystems/glusterfs/patches/patch-aa b/filesystems/glusterfs/patches/patch-aa
index f9cc6336c49..60c6461bf19 100644
--- a/filesystems/glusterfs/patches/patch-aa
+++ b/filesystems/glusterfs/patches/patch-aa
@@ -1,4 +1,4 @@
-$NetBSD: patch-aa,v 1.3 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-aa,v 1.4 2011/07/08 08:02:57 manu Exp $
The == operator is a non-standard bash extension. = should be used instead
--- xlators/mount/fuse/utils/mount_glusterfs.in.orig 2011-04-22 19:37:28.000000000 +0200
diff --git a/filesystems/glusterfs/patches/patch-ab b/filesystems/glusterfs/patches/patch-ab
index 33fa81c4193..f84c6435ed4 100644
--- a/filesystems/glusterfs/patches/patch-ab
+++ b/filesystems/glusterfs/patches/patch-ab
@@ -1,4 +1,4 @@
-$NetBSD: patch-ab,v 1.3 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-ab,v 1.4 2011/07/08 08:02:57 manu Exp $
NetBSD does not have AI_ADDRCONFIG. This patch has a side effect: glusterfsd
listens on IPv6 adresses only by default. Option transport.socket.bind-address
diff --git a/filesystems/glusterfs/patches/patch-ae b/filesystems/glusterfs/patches/patch-ae
index a3d08a167c8..12c32889ffc 100644
--- a/filesystems/glusterfs/patches/patch-ae
+++ b/filesystems/glusterfs/patches/patch-ae
@@ -1,4 +1,4 @@
-$NetBSD: patch-ae,v 1.3 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-ae,v 1.4 2011/07/08 08:02:57 manu Exp $
On NetBSD use libperfuse(3), rename umount2(2) as unmount(2), and skip
inexistant /etc/mtab management.
diff --git a/filesystems/glusterfs/patches/patch-af b/filesystems/glusterfs/patches/patch-af
index 2d8871abcfc..acc5f2432c9 100644
--- a/filesystems/glusterfs/patches/patch-af
+++ b/filesystems/glusterfs/patches/patch-af
@@ -1,4 +1,4 @@
-$NetBSD: patch-af,v 1.3 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-af,v 1.4 2011/07/08 08:02:57 manu Exp $
Works around "error: 'TCP_KEEPALIVE' undeclared" on NetBSD
--- rpc/rpc-transport/socket/src/socket.c.orig 2011-04-22 19:37:28.000000000 +0200
diff --git a/filesystems/glusterfs/patches/patch-an b/filesystems/glusterfs/patches/patch-an
index bff3ec8e4d2..118391221eb 100644
--- a/filesystems/glusterfs/patches/patch-an
+++ b/filesystems/glusterfs/patches/patch-an
@@ -1,4 +1,4 @@
-$NetBSD: patch-an,v 1.3 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-an,v 1.4 2011/07/08 08:02:57 manu Exp $
NetBSD uses libperfuse(3). Also enable debugging (-g) for now.
--- configure.ac.orig 2011-04-22 19:37:28.000000000 +0200
diff --git a/filesystems/glusterfs/patches/patch-ao b/filesystems/glusterfs/patches/patch-ao
index 8abb77926b7..f23229a9f4f 100644
--- a/filesystems/glusterfs/patches/patch-ao
+++ b/filesystems/glusterfs/patches/patch-ao
@@ -1,4 +1,4 @@
-$NetBSD: patch-ao,v 1.3 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-ao,v 1.4 2011/07/08 08:02:57 manu Exp $
NetBSD uses libperfuse(3). Also enable debugging (-g) for now.
--- configure.orig 2011-05-19 12:36:23.000000000 +0200
diff --git a/filesystems/glusterfs/patches/patch-ar b/filesystems/glusterfs/patches/patch-ar
index 5838a63b59a..32fe9e3ebf3 100644
--- a/filesystems/glusterfs/patches/patch-ar
+++ b/filesystems/glusterfs/patches/patch-ar
@@ -1,4 +1,4 @@
-$NetBSD: patch-ar,v 1.3 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-ar,v 1.4 2011/07/08 08:02:57 manu Exp $
Add @GF_FUSE_LDADD@ to fuse.so library dependecies so that -lperfuse is
added at configure time for NetBSD.
diff --git a/filesystems/glusterfs/patches/patch-as b/filesystems/glusterfs/patches/patch-as
index 9b57275539f..04af3453f68 100644
--- a/filesystems/glusterfs/patches/patch-as
+++ b/filesystems/glusterfs/patches/patch-as
@@ -1,4 +1,4 @@
-$NetBSD: patch-as,v 1.3 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-as,v 1.4 2011/07/08 08:02:57 manu Exp $
Add @GF_FUSE_LDADD@ to fuse.so library dependecies so that -lperfuse is
added at configure time for NetBSD.
diff --git a/filesystems/glusterfs/patches/patch-ax b/filesystems/glusterfs/patches/patch-ax
index edd208eb3a2..a2ec5e3548c 100644
--- a/filesystems/glusterfs/patches/patch-ax
+++ b/filesystems/glusterfs/patches/patch-ax
@@ -1,4 +1,4 @@
-$NetBSD: patch-ax,v 1.2 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-ax,v 1.3 2011/07/08 08:02:57 manu Exp $
Do not strip binaries so that we have debug for now.
--- install-sh.orig 2011-04-22 19:37:34.000000000 +0200
@@ -14,3 +14,29 @@ Do not strip binaries so that we have debug for now.
continue;;
-t) dstarg=$2
+--- rpc/rpc-transport/socket/src/Makefile.in.orig 2011-07-07 12:16:41.000000000 +0200
++++ rpc/rpc-transport/socket/src/Makefile.in 2011-07-07 12:19:06.000000000 +0200
+@@ -222,9 +222,9 @@
+ rpctransport_LTLIBRARIES = socket.la
+ rpctransportdir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/rpc-transport
+ socket_la_LDFLAGS = -module -avoidversion
+ socket_la_SOURCES = socket.c name.c
+-socket_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
++socket_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la -lssl
+ AM_CFLAGS = -fPIC -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -Wall -D$(GF_HOST_OS)\
+ -I$(top_srcdir)/libglusterfs/src -I$(top_srcdir)/rpc/rpc-lib/src/ \
+ -I$(top_srcdir)/rpc/xdr/src/ -shared -nostartfiles $(GF_CFLAGS)
+
+--- rpc/rpc-transport/socket/src/Makefile.am.orig 2011-07-07 12:18:15.000000000 +0200
++++ rpc/rpc-transport/socket/src/Makefile.am 2011-07-07 12:18:52.000000000 +0200
+@@ -5,9 +5,9 @@
+
+ socket_la_LDFLAGS = -module -avoidversion
+
+ socket_la_SOURCES = socket.c name.c
+-socket_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
++socket_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la -lssl
+
+ AM_CFLAGS = -fPIC -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -Wall -D$(GF_HOST_OS)\
+ -I$(top_srcdir)/libglusterfs/src -I$(top_srcdir)/rpc/rpc-lib/src/ \
+ -I$(top_srcdir)/rpc/xdr/src/ -shared -nostartfiles $(GF_CFLAGS)
diff --git a/filesystems/glusterfs/patches/patch-ba b/filesystems/glusterfs/patches/patch-ba
index d16891c7e4e..8911d245580 100644
--- a/filesystems/glusterfs/patches/patch-ba
+++ b/filesystems/glusterfs/patches/patch-ba
@@ -1,4 +1,4 @@
-$NetBSD: patch-ba,v 1.3 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-ba,v 1.4 2011/07/08 08:02:57 manu Exp $
glibc dirname() modify the string it is given and returns it.
glusterfs takes this behavior for granted, and assume that if it
diff --git a/filesystems/glusterfs/patches/patch-bb b/filesystems/glusterfs/patches/patch-bb
index 3674c3e1148..89cdbde39a6 100644
--- a/filesystems/glusterfs/patches/patch-bb
+++ b/filesystems/glusterfs/patches/patch-bb
@@ -1,5 +1,6 @@
---- xlators/performance/quick-read/src/quick-read.c.orig 2011-04-22 19:37:28.000000000 +0200
-+++ xlators/performance/quick-read/src/quick-read.c 2011-06-29 15:09:58.000000000 +0200
+$NetBSD: patch-bb,v 1.5 2011/07/08 08:02:57 manu Exp $
+--- xlators/performance/quick-read/src/quick-read.c.orig 2011-07-03 03:59:32.000000000 +0200
++++ xlators/performance/quick-read/src/quick-read.c 2011-07-03 03:59:42.000000000 +0200
@@ -726,9 +726,9 @@
}
}
diff --git a/filesystems/glusterfs/patches/patch-bc b/filesystems/glusterfs/patches/patch-bc
index 8d594776fef..3ae0d3b6163 100644
--- a/filesystems/glusterfs/patches/patch-bc
+++ b/filesystems/glusterfs/patches/patch-bc
@@ -1,4 +1,4 @@
-$NetBSD: patch-bc,v 1.3 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-bc,v 1.4 2011/07/08 08:02:57 manu Exp $
glibc dirname() modify the string it is given and returns it.
glusterfs takes this behavior for granted, and assume that if it
diff --git a/filesystems/glusterfs/patches/patch-be b/filesystems/glusterfs/patches/patch-be
index 2b4cd31dec6..e82b8d7ea67 100644
--- a/filesystems/glusterfs/patches/patch-be
+++ b/filesystems/glusterfs/patches/patch-be
@@ -1,6 +1,12 @@
---- libglusterfs/src/compat.c.orig 2011-04-22 19:37:28.000000000 +0200
-+++ libglusterfs/src/compat.c 2011-05-19 15:27:32.000000000 +0200
-@@ -529,8 +529,285 @@
+$NetBSD: patch-be,v 1.4 2011/07/08 08:02:57 manu Exp $
+
+basename() and dirname() are not supposed to be thread-safe, and NetBSD's
+implementation is not. glusterfs assume the functions are thread-safe.
+Borrow basename() and rdirname() form glibc and make NetBSD use them.
+
+--- libglusterfs/src/compat.c.orig 2011-06-10 16:59:04.000000000 +0000
++++ libglusterfs/src/compat.c 2011-07-08 01:37:36.000000000 +0000
+@@ -529,8 +529,412 @@
}
#endif /* GF_SOLARIS_HOST_OS */
@@ -229,59 +235,186 @@
+
+ return path;
+}
++#ifndef HAVE_SYS_XATTR_H
++
++#define MATCH_NS(ns, key) (strncmp(ns, key, sizeof(ns) - 1) == 0)
++static int
++xattr_native_ns(const char *key) {
++ if (MATCH_NS("system.", key))
++ return EXTATTR_NAMESPACE_SYSTEM;
++ else if (MATCH_NS("user.", key))
++ return EXTATTR_NAMESPACE_USER;
++ else if (MATCH_NS("security.", key))
++ return EXTATTR_NAMESPACE_SYSTEM;
++ else if (MATCH_NS("trusted.", key))
++ return EXTATTR_NAMESPACE_SYSTEM;
++ else
++ return EXTATTR_NAMESPACE_USER;
++
++}
++#undef MATCH_NS
++
++static void
++xattr_native_list(char *data, ssize_t len) {
++ int i;
++ size_t attrlen;
++
++ for (i = 0; i < len; i += attrlen + 1) {
++ attrlen = (size_t)data[i];
++ memmove(data + i, data + i + 1, attrlen);
++ data[i + attrlen] = 0;
++ }
++
++ return;
++}
+
-+/*
-+ * Extended attribute API for NetBSD
-+ */
+int
+removexattr(const char *path, const char *key)
-+{ return extattr_delete_file(path, EXTATTR_NAMESPACE_USER, key); }
++{
++ return extattr_delete_file(path, xattr_native_ns(key), key);
++}
+
+ssize_t
+listxattr(const char *path, void *value, size_t size)
-+{ return extattr_list_file(path, EXTATTR_NAMESPACE_USER, value, size); }
++{
++ ssize_t syslen;
++ ssize_t usrlen;
++
++ usrlen = extattr_list_file(path, EXTATTR_NAMESPACE_USER, value, size);
++ if (usrlen == -1)
++ return -1;
++
++ if (value != NULL) {
++ xattr_native_list(value, usrlen);
++ value += usrlen;
++ size -= usrlen;
++ }
++
++ syslen = extattr_list_file(path, EXTATTR_NAMESPACE_SYSTEM, value, size);
++ if (usrlen == -1)
++ return usrlen;
++
++ if (value != NULL)
++ xattr_native_list(value, syslen);
++
++ return usrlen + syslen;
++}
+
+ssize_t
+getxattr(const char *path, const char *key, void *value, size_t size)
-+{ return extattr_get_file(path, EXTATTR_NAMESPACE_USER, key, value, size); }
++{
++ return extattr_get_file(path, xattr_native_ns(key), key, value, size);
++}
+
+int
+setxattr(const char *path, const char *key, const void *value, size_t size)
-+{ return extattr_set_file(path, EXTATTR_NAMESPACE_USER, key, value, size); }
++{
++ ssize_t ret;
++
++ ret = extattr_set_file(path, xattr_native_ns(key), key, value, size);
++
++ return (ret == -1) ? -1 : 0;
++}
+
+int
+fremovexattr(int fd, const char *key)
-+{ return extattr_delete_fd(fd, EXTATTR_NAMESPACE_USER, key); }
++{
++ return extattr_delete_fd(fd, xattr_native_ns(key), key);
++}
+
+ssize_t
+flistxattr(int fd, void *value, size_t size)
-+{ return extattr_list_fd(fd, EXTATTR_NAMESPACE_USER, value, size); }
++{
++ ssize_t syslen;
++ ssize_t usrlen;
++
++ usrlen = extattr_list_fd(fd, EXTATTR_NAMESPACE_USER, value, size);
++ if (usrlen == -1)
++ return -1;
++
++ if (value != NULL) {
++ xattr_native_list(value, usrlen);
++ value += usrlen;
++ size -= usrlen;
++ }
++
++ syslen = extattr_list_fd(fd, EXTATTR_NAMESPACE_SYSTEM, value, size);
++ if (usrlen == -1)
++ return usrlen;
++
++ if (value != NULL)
++ xattr_native_list(value, syslen);
++
++ return usrlen + syslen;
++}
+
+ssize_t
+fgetxattr(int fd, const char *key, void *value, size_t size)
-+{ return extattr_get_fd(fd, EXTATTR_NAMESPACE_USER, key, value, size); }
++{
++ return extattr_get_fd(fd, xattr_native_ns(key), key, value, size);
++}
+
+int
+fsetxattr(int fd, const char *key, const void *value, size_t size)
-+{ return extattr_set_fd(fd, EXTATTR_NAMESPACE_USER, key, value, size); }
++{
++ ssize_t ret;
++
++ ret = extattr_set_fd(fd, xattr_native_ns(key), key, value, size);
++
++ return (ret == -1) ? -1 : 0;
++}
+
+int
+lremovexattr(const char *path, const char *key)
-+{ return extattr_delete_link(path, EXTATTR_NAMESPACE_USER, key); }
++{
++ return extattr_delete_link(path, xattr_native_ns(key), key);
++}
+
+ssize_t
+llistxattr(const char *path, void *value, size_t size)
-+{ return extattr_list_link(path, EXTATTR_NAMESPACE_USER, value, size); }
++{
++ ssize_t syslen;
++ ssize_t usrlen;
++
++ usrlen = extattr_list_link(path, EXTATTR_NAMESPACE_USER, value, size);
++ if (usrlen == -1)
++ return -1;
++
++ if (value != NULL) {
++ xattr_native_list(value, usrlen);
++ value += usrlen;
++ size -= usrlen;
++ }
++
++ syslen = extattr_list_link(path, EXTATTR_NAMESPACE_SYSTEM, value, size);
++ if (usrlen == -1)
++ return usrlen;
++
++ if (value != NULL)
++ xattr_native_list(value, syslen);
++
++ return usrlen + syslen;
++}
+
+ssize_t
+lgetxattr(const char *path, const char *key, void *value, size_t size)
-+{ return extattr_get_link(path, EXTATTR_NAMESPACE_USER, key, value, size); }
++{
++ return extattr_get_link(path, xattr_native_ns(key), key, value, size);
++}
+
+int
+lsetxattr(const char *path, const char *key, const void *value, size_t size)
-+{ return extattr_set_link(path, EXTATTR_NAMESPACE_USER, key, value, size); }
++{
++ ssize_t ret;
++
++ ret = extattr_set_link(path, xattr_native_ns(key), key, value, size);
+
++ return (ret == -1) ? -1 : 0;
++}
++
++#endif /* HAVE_SYS_XATTR_H */
+#endif /* __NetBSD__ */
++
#ifndef HAVE_STRNLEN
size_t
strnlen(const char *string, size_t maxlen)
diff --git a/filesystems/glusterfs/patches/patch-bf b/filesystems/glusterfs/patches/patch-bf
index 180f350c435..b95561e022d 100644
--- a/filesystems/glusterfs/patches/patch-bf
+++ b/filesystems/glusterfs/patches/patch-bf
@@ -1,12 +1,12 @@
-$NetBSD: patch-bf,v 1.3 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-bf,v 1.4 2011/07/08 08:02:57 manu Exp $
basename() and dirname() are not supposed to be thread-safe, and NetBSD's
implementation is not. glusterfs assume the functions are thread-safe.
Borrow basename() and rdirname() form glibc and make NetBSD use them.
---- libglusterfs/src/compat.h.orig 2011-04-22 19:37:28.000000000 +0200
-+++ libglusterfs/src/compat.h 2011-05-19 12:45:53.000000000 +0200
-@@ -57,9 +57,9 @@
+--- libglusterfs/src/compat.h.orig 2011-06-10 18:59:04.000000000 +0200
++++ libglusterfs/src/compat.h 2011-07-07 18:30:56.000000000 +0200
+@@ -57,26 +57,31 @@
#endif /* HAVE_LLISTXATTR */
#endif /* GF_LINUX_HOST_OS */
@@ -17,7 +17,29 @@ Borrow basename() and rdirname() form glibc and make NetBSD use them.
#define UNIX_PATH_MAX 104
#include <sys/types.h>
-@@ -110,8 +110,15 @@
+ #include <sys/un.h>
+ #include <sys/endian.h>
+ #include <sys/extattr.h>
++#ifdef HAVE_SYS_XATTR_H
++#include <sys/xattr.h>
++#endif /* HAVE_SYS_XATTR_H */
+ #include <limits.h>
+
+ #include <libgen.h>
+
++#ifndef XATTR_CREATE
+ enum {
+ ATTR_CREATE = 1,
+ #define XATTR_CREATE ATTR_CREATE
+ ATTR_REPLACE = 2
+ #define XATTR_REPLACE ATTR_REPLACE
+ };
++#endif /* XATTR_CREATE */
+
+
+ #ifndef sighandler_t
+ #define sighandler_t sig_t
+@@ -110,8 +115,15 @@
#define F_GETLK64 F_GETLK
#define F_SETLK64 F_SETLK
#define F_SETLKW64 F_SETLKW
diff --git a/filesystems/glusterfs/patches/patch-bh b/filesystems/glusterfs/patches/patch-bh
index e1359dcb987..fbc1ec5b9df 100644
--- a/filesystems/glusterfs/patches/patch-bh
+++ b/filesystems/glusterfs/patches/patch-bh
@@ -1,4 +1,4 @@
-$NetBSD: patch-bh,v 1.2 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-bh,v 1.3 2011/07/08 08:02:57 manu Exp $
NetBSD's <dirent.h> does a #defiine d_ino d_fileno. Since glusterfs
declares structs with d_ino members, we must include <dirent.h> early
diff --git a/filesystems/glusterfs/patches/patch-bj b/filesystems/glusterfs/patches/patch-bj
index 9a20f9505e1..b8eb2c85b45 100644
--- a/filesystems/glusterfs/patches/patch-bj
+++ b/filesystems/glusterfs/patches/patch-bj
@@ -1,4 +1,4 @@
-$NetBSD: patch-bj,v 1.2 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-bj,v 1.3 2011/07/08 08:02:57 manu Exp $
Make sure NetBSD pulls proper FUSE header
--- xlators/mount/fuse/src/fuse-bridge.h.orig 2011-04-22 19:37:28.000000000 +0200
+++ xlators/mount/fuse/src/fuse-bridge.h 2011-05-19 12:48:31.000000000 +0200
diff --git a/filesystems/glusterfs/patches/patch-bk b/filesystems/glusterfs/patches/patch-bk
index 15c9dce795f..badf1337393 100644
--- a/filesystems/glusterfs/patches/patch-bk
+++ b/filesystems/glusterfs/patches/patch-bk
@@ -1,4 +1,4 @@
-$NetBSD: patch-bk,v 1.2 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-bk,v 1.3 2011/07/08 08:02:57 manu Exp $
Add missing xdr_sizeof() in NetBSD. Stollen from
http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/xdr/xdr_sizeof.c?rev=1.1
diff --git a/filesystems/glusterfs/patches/patch-bl b/filesystems/glusterfs/patches/patch-bl
index c00b040a96c..d3fb9c5c35f 100644
--- a/filesystems/glusterfs/patches/patch-bl
+++ b/filesystems/glusterfs/patches/patch-bl
@@ -1,4 +1,4 @@
-$NetBSD: patch-bl,v 1.1 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-bl,v 1.2 2011/07/08 08:02:57 manu Exp $
#include <signal.h> for SIGTERM
diff --git a/filesystems/glusterfs/patches/patch-bm b/filesystems/glusterfs/patches/patch-bm
index d7b35fb1731..b7477719f7c 100644
--- a/filesystems/glusterfs/patches/patch-bm
+++ b/filesystems/glusterfs/patches/patch-bm
@@ -1,4 +1,4 @@
-$NetBSD: patch-bm,v 1.1 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-bm,v 1.2 2011/07/08 08:02:57 manu Exp $
Add xdr-sizeof() to the build
diff --git a/filesystems/glusterfs/patches/patch-bn b/filesystems/glusterfs/patches/patch-bn
index 865ab49fdb4..9b4035a4509 100644
--- a/filesystems/glusterfs/patches/patch-bn
+++ b/filesystems/glusterfs/patches/patch-bn
@@ -1,4 +1,4 @@
-$NetBSD: patch-bn,v 1.1 2011/05/19 14:54:23 manu Exp $
+$NetBSD: patch-bn,v 1.2 2011/07/08 08:02:57 manu Exp $
Add xdr-sizeof() to the build
diff --git a/filesystems/glusterfs/patches/patch-bp b/filesystems/glusterfs/patches/patch-bp
index b1b5c424317..f3b4e765619 100644
--- a/filesystems/glusterfs/patches/patch-bp
+++ b/filesystems/glusterfs/patches/patch-bp
@@ -1,4 +1,4 @@
-$NetBSD: patch-bp,v 1.1 2011/06/06 15:53:14 manu Exp $
+$NetBSD: patch-bp,v 1.2 2011/07/08 08:02:57 manu Exp $
NetBSD does not have umount(2), but unmount(2)
diff --git a/filesystems/glusterfs/patches/patch-bq b/filesystems/glusterfs/patches/patch-bq
index 3773bbd965d..26708d3e9f2 100644
--- a/filesystems/glusterfs/patches/patch-bq
+++ b/filesystems/glusterfs/patches/patch-bq
@@ -1,16 +1,5 @@
-$NetBSD: patch-bq,v 1.2 2011/06/07 07:27:11 manu Exp $
-
-Make sur glusterfsd uses the same address family as glusterd.
-
-glusterfsd uses getaddrinfo and picks the first entry for its
-listening address. The first entry is of inet6 family on
-NetBSD. Even if glusterd was started with option
-transport.address-family inet, we ended with glusterfsd
-using inet6. Since the client assumes glusterd and glusterfsd
-use the same address family, it could not reach glusterfsd.
-
---- xlators/mgmt/glusterd/src/glusterd-utils.c.orig 2011-06-06 10:28:42.000000000 +0200
-+++ xlators/mgmt/glusterd/src/glusterd-utils.c 2011-06-06 16:17:30.000000000 +0200
+--- xlators/mgmt/glusterd/src/glusterd-utils.c.orig 2011-06-10 18:59:07.000000000 +0200
++++ xlators/mgmt/glusterd/src/glusterd-utils.c 2011-07-03 03:37:40.000000000 +0200
@@ -88,8 +88,52 @@
//TODO: set timestamp
return 0;
@@ -64,8 +53,8 @@ use the same address family, it could not reach glusterfsd.
glusterd_is_loopback_localhost (const struct sockaddr *sa, char *hostname)
{
GF_ASSERT (sa);
-@@ -1026,8 +1070,10 @@
- int port = 0;
+@@ -1027,8 +1071,10 @@
+ int rdma_port = 0;
FILE *file = NULL;
gf_boolean_t is_locked = _gf_false;
char socketpath[PATH_MAX] = {0};
@@ -75,27 +64,25 @@ use the same address family, it could not reach glusterfsd.
GF_ASSERT (volinfo);
GF_ASSERT (brickinfo);
-@@ -1106,14 +1152,19 @@
+@@ -1107,14 +1153,19 @@
port = brickinfo->port;
if (!port)
port = pmap_registry_alloc (THIS);
-+ if ((family_name = glusterd_listener_family_name()) != NULL)
-+ snprintf (family_option, 8192,
++ if ((family_name = glusterd_listener_family_name()) != NULL)
++ snprintf (family_option, 8192,
+ "--xlator-option %s-server.transport.address-family=%s ",
+ volinfo->volname, family_name);
+
- snprintf (cmd_str, 8192,
- "%s/sbin/glusterfsd --xlator-option %s-server.listen-port=%d "
-- "-s localhost --volfile-id %s -p %s -S %s --brick-name %s "
-- "--brick-port %d -l %s", GFS_PREFIX, volinfo->volname,
-- port, volfile, pidfile, socketpath, brickinfo->path, port,
-- brickinfo->logfile);
-+ "%s -s localhost --volfile-id %s -p %s -S %s --brick-name %s "
-+ "--brick-port %d -l %s", GFS_PREFIX, volinfo->volname, port,
-+ family_option, volfile, pidfile, socketpath, brickinfo->path,
-+ port, brickinfo->logfile);
-
- gf_log ("",GF_LOG_DEBUG,"Starting GlusterFS Command Executed: \n %s \n", cmd_str);
- ret = gf_system (cmd_str);
-
+ if (volinfo->transport_type != GF_TRANSPORT_BOTH_TCP_RDMA) {
+ snprintf (cmd_str, 8192,
+ "%s/sbin/glusterfsd --xlator-option %s-server.listen-port=%d "
+- "-s localhost --volfile-id %s -p %s -S %s --brick-name %s "
++ "%s -s localhost --volfile-id %s -p %s -S %s --brick-name %s "
+ "--brick-port %d -l %s", GFS_PREFIX, volinfo->volname,
+- port, volfile, pidfile, socketpath, brickinfo->path, port,
++ port, family_option, volfile, pidfile, socketpath, brickinfo->path, port,
+ brickinfo->logfile);
+ } else {
+ rdma_port = brickinfo->rdma_port;
+ if (!rdma_port)
diff --git a/filesystems/glusterfs/patches/patch-br b/filesystems/glusterfs/patches/patch-br
new file mode 100644
index 00000000000..96e7d0afe0c
--- /dev/null
+++ b/filesystems/glusterfs/patches/patch-br
@@ -0,0 +1,28 @@
+$NetBSD: patch-br,v 1.1 2011/07/08 08:02:57 manu Exp $
+
+Hide .attribute to glusterfs clients in order to make sure it will
+not be distributed by the cluster/dht xlator
+--- xlators/storage/posix/src/posix.c.orig 2011-06-19 11:02:41.000000000 +0200
++++ xlators/storage/posix/src/posix.c 2011-06-19 11:05:41.000000000 +0200
+@@ -4094,8 +4094,21 @@
+
+ if ((!strcmp(real_path, base_path))
+ && (!strcmp(entry->d_name, GF_REPLICATE_TRASH_DIR)))
+ continue;
++#ifdef __NetBSD__
++ /*
++ * NetBSD with UFS1 backend uses backing files for
++ * extended attributes. They can be found in a
++ * .attribute file located at the root of the filesystem
++ * We hide it to glusterfs clients, since chaos will occur
++ * when the cluster/dht xlator decides to distribute
++ * exended attribute backing file accross storage servers.
++ */
++ if ((!strcmp(real_path, base_path))
++ && (!strcmp(entry->d_name, ".attribute")))
++ continue;
++#endif /* __NetBSD__ */
+
+ if ((!strcmp (real_path, base_path))
+ && (!strncmp (GF_HIDDEN_PATH, entry->d_name,
+ strlen(GF_HIDDEN_PATH)))) {
diff --git a/filesystems/glusterfs/patches/patch-bs b/filesystems/glusterfs/patches/patch-bs
new file mode 100644
index 00000000000..cac82f9a1ed
--- /dev/null
+++ b/filesystems/glusterfs/patches/patch-bs
@@ -0,0 +1,84 @@
+$NetBSD: patch-bs,v 1.1 2011/07/08 08:02:57 manu Exp $
+
+Actually use the Linux [lf]?(set|get|list|remove)xattr reimplementation
+we have in libglusterfs/src/compat.c
+
+--- libglusterfs/src/syscall.c.orig 2011-06-25 03:34:26.000000000 +0200
++++ libglusterfs/src/syscall.c 2011-06-25 03:39:37.000000000 +0200
+@@ -267,9 +267,9 @@
+ sys_lsetxattr (const char *path, const char *name, const void *value,
+ size_t size, int flags)
+ {
+
+-#ifdef GF_LINUX_HOST_OS
++#if defined(GF_LINUX_HOST_OS) || defined(__NetBSD__)
+ return lsetxattr (path, name, value, size, flags);
+ #endif
+
+ #ifdef GF_BSD_HOST_OS
+@@ -292,9 +292,9 @@
+ ssize_t
+ sys_llistxattr (const char *path, char *list, size_t size)
+ {
+
+-#ifdef GF_LINUX_HOST_OS
++#if defined(GF_LINUX_HOST_OS) || defined(__NetBSD__)
+ return llistxattr (path, list, size);
+ #endif
+
+ #ifdef GF_BSD_HOST_OS
+@@ -315,9 +315,9 @@
+ ssize_t
+ sys_lgetxattr (const char *path, const char *name, void *value, size_t size)
+ {
+
+-#ifdef GF_LINUX_HOST_OS
++#if defined(GF_LINUX_HOST_OS) || defined(__NetBSD__)
+ return lgetxattr (path, name, value, size);
+ #endif
+
+ #ifdef GF_BSD_HOST_OS
+@@ -339,9 +339,9 @@
+ ssize_t
+ sys_fgetxattr (int filedes, const char *name, void *value, size_t size)
+ {
+
+-#ifdef GF_LINUX_HOST_OS
++#if defined(GF_LINUX_HOST_OS) || defined(__NetBSD__)
+ return fgetxattr (filedes, name, value, size);
+ #endif
+
+ #ifdef GF_BSD_HOST_OS
+@@ -364,9 +364,9 @@
+ sys_fsetxattr (int filedes, const char *name, const void *value,
+ size_t size, int flags)
+ {
+
+-#ifdef GF_LINUX_HOST_OS
++#if defined(GF_LINUX_HOST_OS) || defined(__NetBSD__)
+ return fsetxattr (filedes, name, value, size, flags);
+ #endif
+
+ #ifdef GF_BSD_HOST_OS
+@@ -388,9 +388,9 @@
+ ssize_t
+ sys_flistxattr (int filedes, char *list, size_t size)
+ {
+
+-#ifdef GF_LINUX_HOST_OS
++#if defined(GF_LINUX_HOST_OS) || defined(__NetBSD__)
+ return flistxattr (filedes, list, size);
+ #endif
+
+ #ifdef GF_BSD_HOST_OS
+@@ -411,9 +411,9 @@
+ int
+ sys_lremovexattr (const char *path, const char *name)
+ {
+
+-#ifdef GF_LINUX_HOST_OS
++#if defined(GF_LINUX_HOST_OS) || defined(__NetBSD__)
+ return lremovexattr (path, name);
+ #endif
+
+ #ifdef GF_BSD_HOST_OS
diff --git a/filesystems/glusterfs/patches/patch-bt b/filesystems/glusterfs/patches/patch-bt
new file mode 100644
index 00000000000..9bab8419ba0
--- /dev/null
+++ b/filesystems/glusterfs/patches/patch-bt
@@ -0,0 +1,28 @@
+$NetBSD: patch-bt,v 1.1 2011/07/08 08:02:57 manu Exp $
+
+Fix the io-threads xlator, which forgot to initialize its pthread
+condition and mutex.
+
+--- xlators/performance/io-threads/src/io-threads.c.orig
++++ xlators/performance/io-threads/src/io-threads.c
+@@ -2181,8 +2181,20 @@
+ "out of memory");
+ goto out;
+ }
+
++ if ((ret = pthread_cond_init(&conf->cond, NULL)) != 0) {
++ gf_log (this->name, GF_LOG_ERROR,
++ "pthread_cond_init failed (%d)", ret);
++ goto out;
++ }
++
++ if ((ret = pthread_mutex_init(&conf->mutex, NULL)) != 0) {
++ gf_log (this->name, GF_LOG_ERROR,
++ "pthread_mutex_init failed (%d)", ret);
++ goto out;
++ }
++
+ set_stack_size (conf);
+
+ thread_count = IOT_DEFAULT_THREADS;
+