diff mbox series

[nft,v1] py: nftables.py: fix python3

Message ID 20190524184950.468164-1-shekhar250198@gmail.com
State Changes Requested
Delegated to: Pablo Neira
Headers show
Series [nft,v1] py: nftables.py: fix python3 | expand

Commit Message

Shekhar Sharma May 24, 2019, 6:49 p.m. UTC
This patch converts the 'nftables.py' file (nftables/py/nftables.py) to run on both python2 and python3.


Signed-off-by: Shekhar Sharma <shekhar250198@gmail.com>
---
 py/nftables.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Eric Garver May 28, 2019, 2:09 p.m. UTC | #1
On Sat, May 25, 2019 at 12:19:50AM +0530, Shekhar Sharma wrote:
> This patch converts the 'nftables.py' file (nftables/py/nftables.py) to run on both python2 and python3.
> 
> 
> Signed-off-by: Shekhar Sharma <shekhar250198@gmail.com>
> ---
>  py/nftables.py | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/py/nftables.py b/py/nftables.py
> index 33cd2dfd..badcfa5c 100644
> --- a/py/nftables.py
> +++ b/py/nftables.py
> @@ -297,7 +297,7 @@ class Nftables:
>          val = self.nft_ctx_output_get_debug(self.__ctx)
>  
>          names = []
> -        for n,v in self.debug_flags.items():
> +        for n,v in list(self.debug_flags.items()):
>              if val & v:
>                  names.append(n)
>                  val &= ~v

Are you fixing an issue here? I don't think the conversion to list is
necessary. The dictionary view can still be iterated. The dictionary is
not being modified.
Shekhar Sharma May 28, 2019, 2:15 p.m. UTC | #2
On Tue, May 28, 2019 at 7:40 PM Eric Garver <eric@garver.life> wrote:
>
> On Sat, May 25, 2019 at 12:19:50AM +0530, Shekhar Sharma wrote:
> > This patch converts the 'nftables.py' file (nftables/py/nftables.py) to run on both python2 and python3.
> >
> >
> > Signed-off-by: Shekhar Sharma <shekhar250198@gmail.com>
> > ---
> >  py/nftables.py | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/py/nftables.py b/py/nftables.py
> > index 33cd2dfd..badcfa5c 100644
> > --- a/py/nftables.py
> > +++ b/py/nftables.py
> > @@ -297,7 +297,7 @@ class Nftables:
> >          val = self.nft_ctx_output_get_debug(self.__ctx)
> >
> >          names = []
> > -        for n,v in self.debug_flags.items():
> > +        for n,v in list(self.debug_flags.items()):
> >              if val & v:
> >                  names.append(n)
> >                  val &= ~v
>
> Are you fixing an issue here? I don't think the conversion to list is
> necessary. The dictionary view can still be iterated. The dictionary is
> not being modified.

Yes, when i compiled the code with python3 in my computer, it ran
without the conversion to list
but when i used an online compiler, it complained about it and i read
online that methods like .items and .keys()
do not return iterables in python3 as they do in python2.
I think the conversion is not necessary. We can omit it.

Shekhar
diff mbox series

Patch

diff --git a/py/nftables.py b/py/nftables.py
index 33cd2dfd..badcfa5c 100644
--- a/py/nftables.py
+++ b/py/nftables.py
@@ -297,7 +297,7 @@  class Nftables:
         val = self.nft_ctx_output_get_debug(self.__ctx)
 
         names = []
-        for n,v in self.debug_flags.items():
+        for n,v in list(self.debug_flags.items()):
             if val & v:
                 names.append(n)
                 val &= ~v