From 15d963d6ce416c29fa7eea225d20d979afdf315c Mon Sep 17 00:00:00 2001 From: Niels de Vos Date: Tue, 19 Jul 2016 12:40:35 +0200 Subject: nfs: allow hostnames with dashes in exports/netgroups files Hostnames with dashes (like "vagrant-testVM") are not correctly parsed when reading the exports/netgroups files. This bacomes obvious when running ./run-tests-in-vagrant.sh because it causes tests/basic/mount-nfs-auth.t and tests/basic/netgroup_parsing.t to fail. The regex for hostname (in exports) and the entry and hostname (netgroups) parsing does not include the "-" sign, and hence the hostnames are splitted at it. Cherry picked from commit e5221d288e41d29d89d52f8deab657d2285a852c: > BUG: 1350237 > Change-Id: I38146a283561e1fa386cc841c43fd3b1e30a87ad > Signed-off-by: Niels de Vos > Reviewed-on: http://review.gluster.org/14809 > Smoke: Gluster Build System > NetBSD-regression: NetBSD Build System > CentOS-regression: Gluster Build System > Reviewed-by: Jeff Darcy Change-Id: I38146a283561e1fa386cc841c43fd3b1e30a87ad BUG: 1357834 Signed-off-by: Niels de Vos Reviewed-on: http://review.gluster.org/14955 Smoke: Gluster Build System CentOS-regression: Gluster Build System NetBSD-regression: NetBSD Build System Reviewed-by: jiffin tony Thottan --- tests/basic/netgroup_parsing.t | 12 +++++++++--- tests/configfiles/netgroups | 1 + 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'tests') diff --git a/tests/basic/netgroup_parsing.t b/tests/basic/netgroup_parsing.t index 73a69c44cea..cf8d871f1f8 100644 --- a/tests/basic/netgroup_parsing.t +++ b/tests/basic/netgroup_parsing.t @@ -21,6 +21,11 @@ function test_ng_3 () glusterfsd --print-netgroups $1 | sed -n 3p } +function test_ng_4 () +{ + glusterfsd --print-netgroups $1 | sed -n 4p +} + function test_bad_ng () { glusterfsd --print-netgroups $1 2>&1 | sed -n 1p @@ -39,9 +44,10 @@ function test_empty_ng () glusterfsd --print-netgroups $1 2>&1 | sed -n 2p } -EXPECT_KEYWORD "ng2 (dev1763.prn2.example.com,,)" test_ng_1 $NG_FILES/netgroups -EXPECT_KEYWORD "ng1 ng2 (dev1763.prn2.example.com,,)" test_ng_2 $NG_FILES/netgroups -EXPECT_KEYWORD "asdf ng1 ng2 (dev1763.prn2.example.com,,)" test_ng_3 $NG_FILES/netgroups +EXPECT_KEYWORD "ng3 (dev-1763.prn-2.example.com,,)" test_ng_1 $NG_FILES/netgroups +EXPECT_KEYWORD "ng2 (dev1763.prn2.example.com,,)" test_ng_2 $NG_FILES/netgroups +EXPECT_KEYWORD "ng1 ng2 (dev1763.prn2.example.com,,)" test_ng_3 $NG_FILES/netgroups +EXPECT_KEYWORD "asdf ng1 ng2 (dev1763.prn2.example.com,,)" test_ng_4 $NG_FILES/netgroups # TODO: get a real-world large netgroup file #EXPECT_KEYWORD "wikipedia001.07.prn1 (wikipedia003.prn1.example.com,,)(wikipedia002.prn1.example.com,,)(wikipedia001.prn1.example.com,,)" test_large_file EXPECT_KEYWORD "Parse error" test_bad_ng $NG_FILES/bad_netgroups diff --git a/tests/configfiles/netgroups b/tests/configfiles/netgroups index a4ed2c53df4..f1f5fcdc145 100644 --- a/tests/configfiles/netgroups +++ b/tests/configfiles/netgroups @@ -1,3 +1,4 @@ asdf ng1 ng1 ng2 ng2 (dev1763.prn2.example.com,,) +ng3 (dev-1763.prn-2.example.com,,) -- cgit