Patchwork ipset: Fix syntax error of bash completion in Debian environment

login
register
mail settings
Submitter Neutron Soutmun
Date May 12, 2013, 9:28 a.m.
Message ID <20130512092829.GA9286@nitrogen.neutroncom.local>
Download mbox | patch
Permalink /patch/243163/
State Not Applicable
Headers show

Comments

Neutron Soutmun - May 12, 2013, 9:28 a.m.
Debian packaging tool (lintian) warns the syntax error of bash completion
as it uses the extglob shell option that should be run in
the ** #!/usr/bin/env bash ** and the shell option set should be moved to
global scope.

Signed-off-by: Neutron Soutmun <neo.neutron@gmail.com>
---
 utils/ipset_bash_completion/ipset_bash_completion |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
Neutron Soutmun - May 12, 2013, 12:07 p.m.
Cc-d script's author

On Sun, May 12, 2013 at 4:28 PM, Neutron Soutmun <neo.neutron@gmail.com> wrote:
> Debian packaging tool (lintian) warns the syntax error of bash completion
> as it uses the extglob shell option that should be run in
> the ** #!/usr/bin/env bash ** and the shell option set should be moved to
> global scope.
>
> Signed-off-by: Neutron Soutmun <neo.neutron@gmail.com>
> ---
>  utils/ipset_bash_completion/ipset_bash_completion |    5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/utils/ipset_bash_completion/ipset_bash_completion b/utils/ipset_bash_completion/ipset_bash_completion
> index cc7ea7b..8a0b91d 100644
> --- a/utils/ipset_bash_completion/ipset_bash_completion
> +++ b/utils/ipset_bash_completion/ipset_bash_completion
> @@ -1,4 +1,4 @@
> -#!/bin/bash
> +#!/usr/bin/env bash
>
>  # -----------------------------------------------------------------
>  # Programmable completion code for ipset (netfilter.org)
> @@ -47,6 +47,8 @@
>  #
>  # -----------------------------------------------------------------
>
> +shopt -s extglob
> +
>  # -----------------------------------------------------------------
>  # Functions
>  # -----------------------------------------------------------------
> @@ -537,7 +539,6 @@ done < "${_IPSET_IPLIST_FILE}"
>  # -----------------------------------------------------------------
>
>  _ipset_complete() {
> -shopt -s extglob
>  local cur prev cword words ips_version
>  local str_action str_setname str_type str_filename
>  local str_glob str_regex str_prefix str_suffix
> --
> 1.7.10.4
>
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Bourne Without - May 15, 2013, 7:24 p.m.
On 12.05.2013 14:07, Neutron Soutmun wrote:
> Cc-d script's author
>

Hello,

thanks for reporting.

> On Sun, May 12, 2013 at 4:28 PM, Neutron Soutmun <neo.neutron@gmail.com> wrote:
>> Debian packaging tool (lintian) warns the syntax error of bash completion
>> as it uses the extglob shell option that should be run in
>> the ** #!/usr/bin/env bash ** and the shell option set should be moved to
>> global scope.
>>
>> Signed-off-by: Neutron Soutmun <neo.neutron@gmail.com>
>> ---
>>   utils/ipset_bash_completion/ipset_bash_completion |    5 +++--
>>   1 file changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/utils/ipset_bash_completion/ipset_bash_completion b/utils/ipset_bash_completion/ipset_bash_completion
>> index cc7ea7b..8a0b91d 100644
>> --- a/utils/ipset_bash_completion/ipset_bash_completion
>> +++ b/utils/ipset_bash_completion/ipset_bash_completion
>> @@ -1,4 +1,4 @@
>> -#!/bin/bash
>> +#!/usr/bin/env bash

Actually I think the shebang isn't required at all.
Does the debian tool just warn?

>>
>>   # -----------------------------------------------------------------
>>   # Programmable completion code for ipset (netfilter.org)
>> @@ -47,6 +47,8 @@
>>   #
>>   # -----------------------------------------------------------------
>>
>> +shopt -s extglob
>> +

updated this in the dev branch (github / sourceforge).

[...]

Best regards
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Neutron Soutmun - May 16, 2013, 9:46 a.m.
Hello,

On Thu, May 16, 2013 at 2:24 AM, Bourne Without <blackhole@airpost.net> wrote:
> On 12.05.2013 14:07, Neutron Soutmun wrote:
>>
>> Cc-d script's author
>>
>
> Hello,
>
> thanks for reporting.
>
>
>> On Sun, May 12, 2013 at 4:28 PM, Neutron Soutmun <neo.neutron@gmail.com>
>> wrote:
>>>
>>> Debian packaging tool (lintian) warns the syntax error of bash completion
>>> as it uses the extglob shell option that should be run in
>>> the ** #!/usr/bin/env bash ** and the shell option set should be moved to
>>> global scope.
>>>
>>> Signed-off-by: Neutron Soutmun <neo.neutron@gmail.com>
>>> ---
>>>   utils/ipset_bash_completion/ipset_bash_completion |    5 +++--
>>>   1 file changed, 3 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/utils/ipset_bash_completion/ipset_bash_completion
>>> b/utils/ipset_bash_completion/ipset_bash_completion
>>> index cc7ea7b..8a0b91d 100644
>>> --- a/utils/ipset_bash_completion/ipset_bash_completion
>>> +++ b/utils/ipset_bash_completion/ipset_bash_completion
>>> @@ -1,4 +1,4 @@
>>> -#!/bin/bash
>>> +#!/usr/bin/env bash
>
>
> Actually I think the shebang isn't required at all.
> Does the debian tool just warn?

Sorry for the noise, I just search the BTS and found this
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=699410

It seems to be the false positive of lintian.
However, the #!/usr/bin/env bash is the workaround for this issue :)

Thanks for your kindness to review it.

Best regards,
Neutron Soutmun
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/utils/ipset_bash_completion/ipset_bash_completion b/utils/ipset_bash_completion/ipset_bash_completion
index cc7ea7b..8a0b91d 100644
--- a/utils/ipset_bash_completion/ipset_bash_completion
+++ b/utils/ipset_bash_completion/ipset_bash_completion
@@ -1,4 +1,4 @@ 
-#!/bin/bash
+#!/usr/bin/env bash
 
 # -----------------------------------------------------------------
 # Programmable completion code for ipset (netfilter.org)
@@ -47,6 +47,8 @@ 
 #
 # -----------------------------------------------------------------
 
+shopt -s extglob
+
 # -----------------------------------------------------------------
 # Functions
 # -----------------------------------------------------------------
@@ -537,7 +539,6 @@  done < "${_IPSET_IPLIST_FILE}"
 # -----------------------------------------------------------------
 
 _ipset_complete() {
-shopt -s extglob
 local cur prev cword words ips_version
 local str_action str_setname str_type str_filename
 local str_glob str_regex str_prefix str_suffix