From 607f8e622d0e7916f591cd79aef3cab0e0c1f227 Mon Sep 17 00:00:00 2001 From: eadler Date: Mon, 16 Dec 2013 01:20:18 +0000 Subject: MFC r259132,r259133,r259143: Per the resolution of POSIX bug 0000779 (note 0002050) add support for using 'i' as a case insensitive flag. Add regression test for recently added 'i' flag in r259132. the i modifier was added in r259132 since POSIX recently agreed to add it. Switch uses of /I to /i. PR: standards/184641 --- tools/regression/usr.bin/sed/regress.icase4.out | 4 ++++ tools/regression/usr.bin/sed/regress.sh | 1 + usr.bin/sed/compile.c | 1 + usr.bin/sed/sed.1 | 6 +++--- usr.sbin/bsdinstall/scripts/services | 2 +- 5 files changed, 10 insertions(+), 4 deletions(-) create mode 100644 tools/regression/usr.bin/sed/regress.icase4.out diff --git a/tools/regression/usr.bin/sed/regress.icase4.out b/tools/regression/usr.bin/sed/regress.icase4.out new file mode 100644 index 0000000..b803373 --- /dev/null +++ b/tools/regression/usr.bin/sed/regress.icase4.out @@ -0,0 +1,4 @@ +input +data +for validation +of Foo(1) diff --git a/tools/regression/usr.bin/sed/regress.sh b/tools/regression/usr.bin/sed/regress.sh index 98282ef..37dc037 100644 --- a/tools/regression/usr.bin/sed/regress.sh +++ b/tools/regression/usr.bin/sed/regress.sh @@ -66,6 +66,7 @@ REGRESSION_TEST_FREEFORM(`inplace5', `inplace_test "3x;6G"') REGRESSION_TEST(`icase1', `sed /SED/Id < regress.in') REGRESSION_TEST(`icase2', `sed s/SED/Foo/I < regress.in') REGRESSION_TEST(`icase3', `sed s/SED/Foo/ < regress.in') +REGRESSION_TEST(`icase4', `sed s/SED/Foo/i < regress.in') REGRESSION_TEST(`hanoi', `echo ":abcd: : :" | sed -f hanoi.sed') REGRESSION_TEST(`math', `echo "4+7*3+2^7/3" | sed -f math.sed') diff --git a/usr.bin/sed/compile.c b/usr.bin/sed/compile.c index cea8e07..e146668 100644 --- a/usr.bin/sed/compile.c +++ b/usr.bin/sed/compile.c @@ -582,6 +582,7 @@ compile_flags(char *p, struct s_subst *s) case 'p': s->p = 1; break; + case 'i': case 'I': s->icase = 1; break; diff --git a/usr.bin/sed/sed.1 b/usr.bin/sed/sed.1 index 0759889..cf27496 100644 --- a/usr.bin/sed/sed.1 +++ b/usr.bin/sed/sed.1 @@ -31,7 +31,7 @@ .\" @(#)sed.1 8.2 (Berkeley) 12/30/93 .\" $FreeBSD$ .\" -.Dd May 24, 2009 +.Dd December 9, 2013 .Dt SED 1 .Os .Sh NAME @@ -196,7 +196,7 @@ option was specified); a context address that consists of a regular expression preceded and followed by a delimiter. The closing delimiter can also optionally be followed by the -.Dq I +.Dq i character, to indicate that the regular expression is to be matched in a case-insensitive way. .El @@ -507,7 +507,7 @@ Append the pattern space to if a replacement was made. If the replacement string is identical to that which it replaces, it is still considered to have been a replacement. -.It I +.It i or I Match the regular expression in a case-insensitive way. .El .Pp diff --git a/usr.sbin/bsdinstall/scripts/services b/usr.sbin/bsdinstall/scripts/services index cf6e739..8ce9e7b 100755 --- a/usr.sbin/bsdinstall/scripts/services +++ b/usr.sbin/bsdinstall/scripts/services @@ -29,7 +29,7 @@ : ${DIALOG_OK=0} if [ -f $BSDINSTALL_TMPETC/rc.conf.services ]; then - eval `sed -e s/YES/on/I -e s/NO/off/I $BSDINSTALL_TMPETC/rc.conf.services` + eval `sed -e s/YES/on/i -e s/NO/off/i $BSDINSTALL_TMPETC/rc.conf.services` else # Default service states. Everything is off if not enabled. sshd_enable="on" -- cgit v1.1