22 lines
738 B
Diff
22 lines
738 B
Diff
|
diff --git a/scapy/contrib/mpls.py b/scapy/contrib/mpls.py
|
||
|
index 8daddf2..a9dc7fe 100644
|
||
|
--- a/scapy/contrib/mpls.py
|
||
|
+++ b/scapy/contrib/mpls.py
|
||
|
@@ -18,6 +18,7 @@
|
||
|
from scapy.packet import Packet, bind_layers, Padding
|
||
|
from scapy.fields import BitField,ByteField
|
||
|
from scapy.layers.inet import IP
|
||
|
+from scapy.contrib.bier import BIER
|
||
|
from scapy.layers.inet6 import IPv6
|
||
|
from scapy.layers.l2 import Ether, GRE
|
||
|
from scapy.compat import orb
|
||
|
@@ -36,6 +37,8 @@ class MPLS(Packet):
|
||
|
ip_version = (orb(payload[0]) >> 4) & 0xF
|
||
|
if ip_version == 4:
|
||
|
return IP
|
||
|
+ elif ip_version == 5:
|
||
|
+ return BIER
|
||
|
elif ip_version == 6:
|
||
|
return IPv6
|
||
|
return Padding
|