mbox series

[v3,0/3] selftests: netfilter: introduce test cases for ipvs

Message ID 1569939599-1872-1-git-send-email-yanhaishuang@cmss.chinamobile.com
Headers show
Series selftests: netfilter: introduce test cases for ipvs | expand

Message

Haishuang Yan Oct. 1, 2019, 2:19 p.m. UTC
This series patch include test cases for ipvs.

The test topology is who as below:
+--------------------------------------------------------------+
|                      |                                       |
|         ns0          |         ns1                           |
|      -----------     |     -----------    -----------        |
|      | veth01  | --------- | veth10  |    | veth12  |        |
|      -----------    peer   -----------    -----------        |
|           |          |                        |              |
|      -----------     |                        |              |
|      |  br0    |     |-----------------  peer |--------------|
|      -----------     |                        |              |
|           |          |                        |              |
|      ----------     peer   ----------      -----------       |
|      |  veth02 | --------- |  veth20 |     | veth12  |       |
|      ----------      |     ----------      -----------       |
|                      |         ns2                           |
|                      |                                       |
+--------------------------------------------------------------+

Test results:
# selftests: netfilter: ipvs.sh
# Testing DR mode...
# Testing NAT mode...
# Testing Tunnel mode...
# ipvs.sh: PASS
ok 6 selftests: netfilter: ipvs.sh

Haishuang Yan (3):
  selftests: netfilter: add ipvs test script
  selftests: netfilter: add ipvs nat test case
  selftests: netfilter: add ipvs tunnel test case

 tools/testing/selftests/netfilter/Makefile |   2 +-
 tools/testing/selftests/netfilter/ipvs.sh  | 234 +++++++++++++++++++++++++++++
 2 files changed, 235 insertions(+), 1 deletion(-)
 create mode 100755 tools/testing/selftests/netfilter/ipvs.sh

Comments

Julian Anastasov Oct. 1, 2019, 6:34 p.m. UTC | #1
Hello,

On Tue, 1 Oct 2019, Haishuang Yan wrote:

> This series patch include test cases for ipvs.
> 
> The test topology is who as below:
> +--------------------------------------------------------------+
> |                      |                                       |
> |         ns0          |         ns1                           |
> |      -----------     |     -----------    -----------        |
> |      | veth01  | --------- | veth10  |    | veth12  |        |
> |      -----------    peer   -----------    -----------        |
> |           |          |                        |              |
> |      -----------     |                        |              |
> |      |  br0    |     |-----------------  peer |--------------|
> |      -----------     |                        |              |
> |           |          |                        |              |
> |      ----------     peer   ----------      -----------       |
> |      |  veth02 | --------- |  veth20 |     | veth12  |       |
> |      ----------      |     ----------      -----------       |
> |                      |         ns2                           |
> |                      |                                       |
> +--------------------------------------------------------------+
> 
> Test results:
> # selftests: netfilter: ipvs.sh
> # Testing DR mode...
> # Testing NAT mode...
> # Testing Tunnel mode...
> # ipvs.sh: PASS
> ok 6 selftests: netfilter: ipvs.sh
> 
> Haishuang Yan (3):
>   selftests: netfilter: add ipvs test script
>   selftests: netfilter: add ipvs nat test case
>   selftests: netfilter: add ipvs tunnel test case

Acked-by: Julian Anastasov <ja@ssi.bg>

>  tools/testing/selftests/netfilter/Makefile |   2 +-
>  tools/testing/selftests/netfilter/ipvs.sh  | 234 +++++++++++++++++++++++++++++
>  2 files changed, 235 insertions(+), 1 deletion(-)
>  create mode 100755 tools/testing/selftests/netfilter/ipvs.sh

Regards

--
Julian Anastasov <ja@ssi.bg>
Duncan Roe Oct. 2, 2019, 1:27 a.m. UTC | #2
On Tue, Oct 01, 2019 at 09:34:13PM +0300, Julian Anastasov wrote:
>
> 	Hello,
>
> On Tue, 1 Oct 2019, Haishuang Yan wrote:
>
> > This series patch include test cases for ipvs.
> >
> > The test topology is who as below:
> > +--------------------------------------------------------------+
> > |                      |                                       |
> > |         ns0          |         ns1                           |
> > |      -----------     |     -----------    -----------        |
> > |      | veth01  | --------- | veth10  |    | veth12  |        |
> > |      -----------    peer   -----------    -----------        |
> > |           |          |                        |              |
> > |      -----------     |                        |              |
> > |      |  br0    |     |-----------------  peer |--------------|
> > |      -----------     |                        |              |
> > |           |          |                        |              |
> > |      ----------     peer   ----------      -----------       |
> > |      |  veth02 | --------- |  veth20 |     | veth12  |       |
> > |      ----------      |     ----------      -----------       |
> > |                      |         ns2                           |
> > |                      |                                       |
> > +--------------------------------------------------------------+
> >
> > Test results:
> > # selftests: netfilter: ipvs.sh
> > # Testing DR mode...
> > # Testing NAT mode...
> > # Testing Tunnel mode...
> > # ipvs.sh: PASS
> > ok 6 selftests: netfilter: ipvs.sh
> >
> > Haishuang Yan (3):
> >   selftests: netfilter: add ipvs test script
> >   selftests: netfilter: add ipvs nat test case
> >   selftests: netfilter: add ipvs tunnel test case
>
> Acked-by: Julian Anastasov <ja@ssi.bg>
>
> >  tools/testing/selftests/netfilter/Makefile |   2 +-
> >  tools/testing/selftests/netfilter/ipvs.sh  | 234 +++++++++++++++++++++++++++++
> >  2 files changed, 235 insertions(+), 1 deletion(-)
> >  create mode 100755 tools/testing/selftests/netfilter/ipvs.sh
>
> Regards
>
> --
> Julian Anastasov <ja@ssi.bg>

I still prefer #!/bin/sh in 1/3. You never know what's in someone's environment

Cheers ... Duncan.
Simon Horman Oct. 2, 2019, 7:29 a.m. UTC | #3
On Wed, Oct 02, 2019 at 11:27:26AM +1000, Duncan Roe wrote:
> On Tue, Oct 01, 2019 at 09:34:13PM +0300, Julian Anastasov wrote:
> >
> > 	Hello,
> >
> > On Tue, 1 Oct 2019, Haishuang Yan wrote:
> >
> > > This series patch include test cases for ipvs.
> > >
> > > The test topology is who as below:
> > > +--------------------------------------------------------------+
> > > |                      |                                       |
> > > |         ns0          |         ns1                           |
> > > |      -----------     |     -----------    -----------        |
> > > |      | veth01  | --------- | veth10  |    | veth12  |        |
> > > |      -----------    peer   -----------    -----------        |
> > > |           |          |                        |              |
> > > |      -----------     |                        |              |
> > > |      |  br0    |     |-----------------  peer |--------------|
> > > |      -----------     |                        |              |
> > > |           |          |                        |              |
> > > |      ----------     peer   ----------      -----------       |
> > > |      |  veth02 | --------- |  veth20 |     | veth12  |       |
> > > |      ----------      |     ----------      -----------       |
> > > |                      |         ns2                           |
> > > |                      |                                       |
> > > +--------------------------------------------------------------+
> > >
> > > Test results:
> > > # selftests: netfilter: ipvs.sh
> > > # Testing DR mode...
> > > # Testing NAT mode...
> > > # Testing Tunnel mode...
> > > # ipvs.sh: PASS
> > > ok 6 selftests: netfilter: ipvs.sh
> > >
> > > Haishuang Yan (3):
> > >   selftests: netfilter: add ipvs test script
> > >   selftests: netfilter: add ipvs nat test case
> > >   selftests: netfilter: add ipvs tunnel test case
> >
> > Acked-by: Julian Anastasov <ja@ssi.bg>
> >
> > >  tools/testing/selftests/netfilter/Makefile |   2 +-
> > >  tools/testing/selftests/netfilter/ipvs.sh  | 234 +++++++++++++++++++++++++++++
> > >  2 files changed, 235 insertions(+), 1 deletion(-)
> > >  create mode 100755 tools/testing/selftests/netfilter/ipvs.sh
> >
> > Regards
> >
> > --
> > Julian Anastasov <ja@ssi.bg>
> 
> I still prefer #!/bin/sh in 1/3. You never know what's in someone's environment

That would be my preference too.
Duncan Roe Oct. 4, 2019, 11:47 a.m. UTC | #4
On Thu, Oct 03, 2019 at 10:41:06PM +0800, Haishuang Yan wrote:
>
>
> > On 2019??10??2??, at ????9:27, Duncan Roe <duncan_roe@optusnet.com.au> wrote:
> >
> > On Tue, Oct 01, 2019 at 09:34:13PM +0300, Julian Anastasov wrote:
> >>
> >> 	Hello,
> >>
> >> On Tue, 1 Oct 2019, Haishuang Yan wrote:
> >>
> >>> This series patch include test cases for ipvs.
> >>>
> >>> The test topology is who as below:
> >>> +--------------------------------------------------------------+
> >>> |                      |                                       |
> >>> |         ns0          |         ns1                           |
> >>> |      -----------     |     -----------    -----------        |
> >>> |      | veth01  | --------- | veth10  |    | veth12  |        |
> >>> |      -----------    peer   -----------    -----------        |
> >>> |           |          |                        |              |
> >>> |      -----------     |                        |              |
> >>> |      |  br0    |     |-----------------  peer |--------------|
> >>> |      -----------     |                        |              |
> >>> |           |          |                        |              |
> >>> |      ----------     peer   ----------      -----------       |
> >>> |      |  veth02 | --------- |  veth20 |     | veth12  |       |
> >>> |      ----------      |     ----------      -----------       |
> >>> |                      |         ns2                           |
> >>> |                      |                                       |
> >>> +--------------------------------------------------------------+
> >>>
> >>> Test results:
> >>> # selftests: netfilter: ipvs.sh
> >>> # Testing DR mode...
> >>> # Testing NAT mode...
> >>> # Testing Tunnel mode...
> >>> # ipvs.sh: PASS
> >>> ok 6 selftests: netfilter: ipvs.sh
> >>>
> >>> Haishuang Yan (3):
> >>>  selftests: netfilter: add ipvs test script
> >>>  selftests: netfilter: add ipvs nat test case
> >>>  selftests: netfilter: add ipvs tunnel test case
> >>
> >> Acked-by: Julian Anastasov <ja@ssi.bg>
> >>
> >>> tools/testing/selftests/netfilter/Makefile |   2 +-
> >>> tools/testing/selftests/netfilter/ipvs.sh  | 234 +++++++++++++++++++++++++++++
> >>> 2 files changed, 235 insertions(+), 1 deletion(-)
> >>> create mode 100755 tools/testing/selftests/netfilter/ipvs.sh
> >>
> >> Regards
> >>
> >> --
> >> Julian Anastasov <ja@ssi.bg>
> >
> > I still prefer #!/bin/sh in 1/3. You never know what's in someone's environment
> >
> > Cheers ... Duncan.
> >
>
> It??s also my preference too. "_"	
>
> I have tested both #!/bin/bash and #!/bin/sh script, they all works properly.

Enter these 2 lines:
> ip(){ return 0; }
> export -f ip

Now try the #!/bin/bash script. If that now fails, try again with #!/bin/bash
changed to #!/bin/bash -p

Any better now?

Cheers ... Duncan.
Haishuang Yan Oct. 5, 2019, 1:05 a.m. UTC | #5
> On 2019年10月4日, at 下午7:47, Duncan Roe <duncan_roe@optusnet.com.au> wrote:
> 
> On Thu, Oct 03, 2019 at 10:41:06PM +0800, Haishuang Yan wrote:
>> 
>> 
>>> On 2019??10??2??, at ????9:27, Duncan Roe <duncan_roe@optusnet.com.au> wrote:
>>> 
>>> On Tue, Oct 01, 2019 at 09:34:13PM +0300, Julian Anastasov wrote:
>>>> 
>>>> 	Hello,
>>>> 
>>>> On Tue, 1 Oct 2019, Haishuang Yan wrote:
>>>> 
>>>>> This series patch include test cases for ipvs.
>>>>> 
>>>>> The test topology is who as below:
>>>>> +--------------------------------------------------------------+
>>>>> |                      |                                       |
>>>>> |         ns0          |         ns1                           |
>>>>> |      -----------     |     -----------    -----------        |
>>>>> |      | veth01  | --------- | veth10  |    | veth12  |        |
>>>>> |      -----------    peer   -----------    -----------        |
>>>>> |           |          |                        |              |
>>>>> |      -----------     |                        |              |
>>>>> |      |  br0    |     |-----------------  peer |--------------|
>>>>> |      -----------     |                        |              |
>>>>> |           |          |                        |              |
>>>>> |      ----------     peer   ----------      -----------       |
>>>>> |      |  veth02 | --------- |  veth20 |     | veth12  |       |
>>>>> |      ----------      |     ----------      -----------       |
>>>>> |                      |         ns2                           |
>>>>> |                      |                                       |
>>>>> +--------------------------------------------------------------+
>>>>> 
>>>>> Test results:
>>>>> # selftests: netfilter: ipvs.sh
>>>>> # Testing DR mode...
>>>>> # Testing NAT mode...
>>>>> # Testing Tunnel mode...
>>>>> # ipvs.sh: PASS
>>>>> ok 6 selftests: netfilter: ipvs.sh
>>>>> 
>>>>> Haishuang Yan (3):
>>>>> selftests: netfilter: add ipvs test script
>>>>> selftests: netfilter: add ipvs nat test case
>>>>> selftests: netfilter: add ipvs tunnel test case
>>>> 
>>>> Acked-by: Julian Anastasov <ja@ssi.bg>
>>>> 
>>>>> tools/testing/selftests/netfilter/Makefile |   2 +-
>>>>> tools/testing/selftests/netfilter/ipvs.sh  | 234 +++++++++++++++++++++++++++++
>>>>> 2 files changed, 235 insertions(+), 1 deletion(-)
>>>>> create mode 100755 tools/testing/selftests/netfilter/ipvs.sh
>>>> 
>>>> Regards
>>>> 
>>>> --
>>>> Julian Anastasov <ja@ssi.bg>
>>> 
>>> I still prefer #!/bin/sh in 1/3. You never know what's in someone's environment
>>> 
>>> Cheers ... Duncan.
>>> 
>> 
>> It??s also my preference too. "_"	
>> 
>> I have tested both #!/bin/bash and #!/bin/sh script, they all works properly.
> 
> Enter these 2 lines:
>> ip(){ return 0; }
>> export -f ip
> 
> Now try the #!/bin/bash script. If that now fails, try again with #!/bin/bash
> changed to #!/bin/bash -p
> 
> Any better now?
> 
> Cheers ... Duncan.
> 
It’s better now, thanks for your explanation.
In v3 commit I will use #!/bin/bash -p to prevent exporting function from environment variables.