diff options
Diffstat (limited to 'tests/bugs/rpc/bug-921072.t')
-rwxr-xr-x | tests/bugs/rpc/bug-921072.t | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/tests/bugs/rpc/bug-921072.t b/tests/bugs/rpc/bug-921072.t new file mode 100755 index 00000000000..46a3442f180 --- /dev/null +++ b/tests/bugs/rpc/bug-921072.t @@ -0,0 +1,124 @@ +#!/bin/bash + +. $(dirname $0)/../../include.rc +. $(dirname $0)/../../nfs.rc +. $(dirname $0)/../../volume.rc + +cleanup; + +#1 +TEST glusterd +TEST pidof glusterd + +TEST $CLI volume create $V0 $H0:$B0/$V0 +TEST $CLI volume start $V0 +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available +TEST mount_nfs $H0:/$V0 $N0 nolock +EXPECT_WITHIN $UMOUNT_TIMEOUT "Y" force_umount $N0 + +# based on ip addresses (1-4) +# case 1: allow only localhost ip +TEST $CLI volume set $V0 nfs.rpc-auth-allow 127.0.0.1 +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available + +TEST mount_nfs localhost:/$V0 $N0 nolock +EXPECT_WITHIN $UMOUNT_TIMEOUT "Y" force_umount $N0 + +# case 2: allow only non-localhost ip +TEST $CLI volume set $V0 nfs.rpc-auth-allow 192.168.1.1 +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available +#11 +TEST ! mount_nfs localhost:/$V0 $N0 nolock +TEST $CLI volume reset --mode=script $V0 +# case 3: reject only localhost ip +TEST $CLI volume set $V0 nfs.rpc-auth-reject 127.0.0.1 +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available + +TEST ! mount_nfs localhost:/$V0 $N0 nolock + +# case 4: reject only non-localhost ip +TEST $CLI volume set $V0 nfs.rpc-auth-reject 192.168.1.1 +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available + +TEST mount_nfs localhost:/$V0 $N0 nolock +EXPECT_WITHIN $UMOUNT_TIMEOUT "Y" force_umount $N0 + + + +# NEED TO CHECK BOTH IP AND NAME BASED AUTH. +# CASES WITH NFS.ADDR-NAMELOOKUP ON (5-12) +TEST $CLI volume reset --mode=script $V0 +TEST $CLI volume set $V0 nfs.addr-namelookup on +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available +#20 +TEST mount_nfs localhost:/$V0 $N0 nolock +EXPECT_WITHIN $UMOUNT_TIMEOUT "Y" force_umount $N0 + +# case 5: allow only localhost +TEST $CLI volume set $V0 nfs.rpc-auth-allow localhost +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available + +TEST mount_nfs localhost:/$V0 $N0 nolock +EXPECT_WITHIN $UMOUNT_TIMEOUT "Y" force_umount $N0 + +# case 6: allow only somehost +TEST $CLI volume set $V0 nfs.rpc-auth-allow somehost +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available + +TEST ! mount_nfs localhost:/$V0 $N0 nolock + +# case 7: reject only localhost +TEST $CLI volume reset --mode=script $V0 +TEST $CLI volume set $V0 nfs.addr-namelookup on +TEST $CLI volume set $V0 nfs.rpc-auth-reject localhost +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available +#30 +TEST ! mount_nfs localhost:/$V0 $N0 nolock + +# case 8: reject only somehost +TEST $CLI volume set $V0 nfs.rpc-auth-reject somehost +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available + +TEST mount_nfs localhost:/$V0 $N0 nolock +EXPECT_WITHIN $UMOUNT_TIMEOUT "Y" force_umount $N0 + +# based on ip addresses: repeat of cases 1-4 +# case 9: allow only localhost ip +TEST $CLI volume reset --mode=script $V0 +TEST $CLI volume set $V0 nfs.addr-namelookup on +TEST $CLI volume set $V0 nfs.rpc-auth-allow 127.0.0.1 +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available + +TEST mount_nfs localhost:/$V0 $N0 nolock +TEST mkdir -p $N0/subdir +EXPECT_WITHIN $UMOUNT_TIMEOUT "Y" force_umount $N0 + +# case 10: allow a non-localhost ip +TEST $CLI volume set $V0 nfs.rpc-auth-allow 192.168.1.1 +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available +#41 +TEST ! mount_nfs localhost:/$V0 $N0 nolock + +# case 11: reject only localhost ip +TEST $CLI volume reset --mode=script $V0 +TEST $CLI volume set $V0 nfs.addr-namelookup on +TEST $CLI volume set $V0 nfs.rpc-auth-reject 127.0.0.1 +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available + +TEST ! mount_nfs localhost:/$V0 $N0 nolock +TEST ! mount_nfs localhost:/$V0/subdir $N0 nolock + +# case 12: reject only non-localhost ip +TEST $CLI volume set $V0 nfs.rpc-auth-reject 192.168.1.1 +EXPECT_WITHIN $NFS_EXPORT_TIMEOUT 1 is_nfs_export_available + +TEST mount_nfs localhost:/$V0 $N0 nolock +EXPECT_WITHIN $UMOUNT_TIMEOUT "Y" force_umount $N0 + +TEST mount_nfs localhost:/$V0/subdir $N0 nolock +EXPECT_WITHIN $UMOUNT_TIMEOUT "Y" force_umount $N0 + +TEST $CLI volume stop --mode=script $V0 +#52 +TEST $CLI volume delete --mode=script $V0 +cleanup |