From 9f0dda1685ae75c88edbeea2323408e3e8fc9c7b Mon Sep 17 00:00:00 2001
From: Pierre LALET <pierre.lalet@cea.fr>
Date: Thu, 28 Sep 2017 14:22:40 +0200
Subject: [PATCH] Python 3 / VolatileValue: add __radd__ and __rsub__ methods

---
 scapy/volatile.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/scapy/volatile.py b/scapy/volatile.py
index 7e108888..16d9043e 100644
--- a/scapy/volatile.py
+++ b/scapy/volatile.py
@@ -113,8 +113,12 @@ class RandNum(RandField):
         return int(self)
     def __add__(self, other):
         return self._fix() + other
+    def __radd__(self, other):
+        return other + self._fix()
     def __sub__(self, other):
         return self._fix() - other
+    def __rsub__(self, other):
+        return other - self._fix()
     def __mul__(self, other):
         return self._fix() * other
     def __floordiv__(self, other):
@@ -356,7 +360,7 @@ class RandOID(RandString):
             return "<%s [%s]>" % (self.__class__.__name__, self.ori_fmt)
     def _fix(self):
         if self.fmt is None:
-            return ".".join(map(str, [self.idnum for i in range(1+self.depth)]))
+            return ".".join(str(self.idnum) for _ in range(1 + self.depth))
         else:
             oid = []
             for i in self.fmt:
-- 
GitLab