diff --git a/scapy/contrib/bgp.py b/scapy/contrib/bgp.py
index 48fcace7f43a8b1d78d4841d897119194702874f..1f8a9f2164d7309b7c47ab3fd7fc4ce9112473cf 100644
--- a/scapy/contrib/bgp.py
+++ b/scapy/contrib/bgp.py
@@ -627,7 +627,9 @@ class BGPCapability(six.with_metaclass(_BGPCapability_metaclass, Packet)):
                        for fldname, fldvalue in flt.iteritems()):
                     return self
         else:
-            return Packet.getlayer(self, cls, nb, _track, **flt)
+            return super(BGPCapability, self).getlayer(
+                cls, nb=nb, _track=_track, **flt
+            )
 
     def post_build(self, p, pay):
         length = 0
diff --git a/scapy/layers/eap.py b/scapy/layers/eap.py
index d86b78a1c5e8053de97fb83faf3ce28cc1ec026d..0213d2ffc903f5d8a7ddeb1e856a6cf0897d0622 100644
--- a/scapy/layers/eap.py
+++ b/scapy/layers/eap.py
@@ -256,7 +256,7 @@ class EAP(Packet):
                        for fldname, fldvalue in flt.iteritems()):
                     return self
         else:
-            return Packet.getlayer(self, cls, nb, _track, **flt)
+            return super(EAP, self).getlayer(cls, nb=nb, _track=_track, **flt)
 
     def answers(self, other):
         if isinstance(other, EAP):
diff --git a/scapy/layers/ntp.py b/scapy/layers/ntp.py
index a9512d5fc70ace5fd029ca3fead2eab2a7fb06ba..5a72a9de90efa910c5055eb2074673da2603eb9a 100644
--- a/scapy/layers/ntp.py
+++ b/scapy/layers/ntp.py
@@ -268,7 +268,7 @@ class NTP(Packet):
                        for fldname, fldvalue in flt.iteritems()):
                     return self
         else:
-            return Packet.getlayer(self, cls, nb, _track, **flt)
+            return super(NTP, self).getlayer(cls, nb=nb, _track=_track, **flt)
 
     def mysummary(self):
         return self.sprintf("NTP v%ir,NTP.version%, %NTP.mode%")
diff --git a/scapy/layers/radius.py b/scapy/layers/radius.py
index 118233c37510d8644acc9760ff42b55bfac8f10a..7fa569d551b9e32a90a7f38eefbc3c2ff8012e1b 100644
--- a/scapy/layers/radius.py
+++ b/scapy/layers/radius.py
@@ -286,7 +286,9 @@ class RadiusAttribute(Packet):
                        for fldname, fldvalue in flt.iteritems()):
                     return self
         else:
-            return Packet.getlayer(self, cls, nb, _track, **flt)
+            return super(RadiusAttribute, self).getlayer(
+                cls, nb=nb, _track=_track, **flt
+            )
 
     def post_build(self, p, pay):
         length = self.len