From 90a6b3b8ac493ac5531ae84eab77f34111aef495 Mon Sep 17 00:00:00 2001
From: Pierre LALET <pierre.lalet@cea.fr>
Date: Mon, 2 May 2016 08:44:22 +0200
Subject: [PATCH] Add default destination addresses for OSPF and HSRP

---
 scapy/contrib/ospf.py | 2 ++
 scapy/layers/hsrp.py  | 6 +++++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/scapy/contrib/ospf.py b/scapy/contrib/ospf.py
index 362e467e..dc2fca1f 100644
--- a/scapy/contrib/ospf.py
+++ b/scapy/contrib/ospf.py
@@ -726,6 +726,7 @@ bind_layers(OSPF_Hdr, OSPF_DBDesc, type=2)
 bind_layers(OSPF_Hdr, OSPF_LSReq, type=3)
 bind_layers(OSPF_Hdr, OSPF_LSUpd, type=4)
 bind_layers(OSPF_Hdr, OSPF_LSAck, type=5)
+DestIPField.bind_addr(OSPF_Hdr, "224.0.0.5")
 
 bind_layers(IPv6, OSPFv3_Hdr, nh=89)
 bind_layers(OSPFv3_Hdr, OSPFv3_Hello, type=1)
@@ -733,6 +734,7 @@ bind_layers(OSPFv3_Hdr, OSPFv3_DBDesc, type=2)
 bind_layers(OSPFv3_Hdr, OSPFv3_LSReq, type=3)
 bind_layers(OSPFv3_Hdr, OSPFv3_LSUpd, type=4)
 bind_layers(OSPFv3_Hdr, OSPFv3_LSAck, type=5)
+DestIP6Field.bind_addr(OSPFv3_Hdr, "ff02::5")
 
 
 if __name__ == "__main__":
diff --git a/scapy/layers/hsrp.py b/scapy/layers/hsrp.py
index 7193b97e..2b169c56 100644
--- a/scapy/layers/hsrp.py
+++ b/scapy/layers/hsrp.py
@@ -34,7 +34,8 @@ HSRP (Hot Standby Router Protocol): proprietary redundancy protocol for Cisco ro
 
 from scapy.fields import *
 from scapy.packet import *
-from scapy.layers.inet import UDP
+from scapy.layers.inet import DestIPField, UDP
+from scapy.layers.inet6 import DestIP6Field
 
 
 class HSRP(Packet):
@@ -77,3 +78,6 @@ class HSRPmd5(Packet):
         return p
 
 bind_layers(UDP, HSRP, dport=1985, sport=1985)
+bind_layers(UDP, HSRP, dport=2029, sport=2029)
+DestIPField.bind_addr(UDP, "224.0.0.2", dport=1985)
+DestIP6Field.bind_addr(UDP, "ff02::66", dport=2029)
-- 
GitLab