Hmm. The problem I was having is that if we wrap 'command' in quotes
here, and 'command' itself includes quotes (eg, command='echo "foo" |
bar'), then rather than quoting "foo", the command ends up quoting
everything up to 'foo', then unquoting 'foo', then quoting everything
after 'foo'. The ICMP related test in the conntrack branch has an
instance of this.

Maybe the right solution is to have two variants: NS_CHECK_EXEC() and
NS_CHECK_EXEC_UNQUOTED(). I've seen this other places in OVS
testsuite.

On 10 August 2015 at 11:40, Daniele Di Proietto <diproiet...@vmware.com> wrote:
> I guess you need this to use quotes("") inside 'command'.
>
> One effect of this change is that if 'command' contains a pipe
> (or &&, or ||) just the first command will be executed inside
> the namespace.  I'm not sure if it's a big problem.  What do you
> think?
>
> On 08/08/2015 00:28, "Joe Stringer" <joestrin...@nicira.com> wrote:
>
>>ip netns exec $namespace $command doesn't need to use bash to execute
>>the command. Remove it.
>>
>>Signed-off-by: Joe Stringer <joestrin...@nicira.com>
>>---
>> tests/system-common-macros.at | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>>diff --git a/tests/system-common-macros.at b/tests/system-common-macros.at
>>index 1321e58..fdc2bc7 100644
>>--- a/tests/system-common-macros.at
>>+++ b/tests/system-common-macros.at
>>@@ -25,7 +25,7 @@ m4_define([ADD_NAMESPACES],
>> #
>> # Execute 'command' in 'namespace'
>> m4_define([NS_EXEC],
>>-    [ip netns exec $1 bash -c "$2"]
>>+    [ip netns exec $1 $2]
>> )
>>
>> # NS_CHECK_EXEC([namespace], [command], other_params...)
>>--
>>2.1.4
>>
>
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to