From 3e3cb22b2c55d29ed5ffc780c77feda2f7ef4564 Mon Sep 17 00:00:00 2001
From: gpotter2 <gabriel@potter.fr>
Date: Sat, 13 May 2017 14:34:21 +0200
Subject: [PATCH] Update/Add missing licences/status flags

---
 scapy/contrib/HomePlugAV.py      | 19 +++++++++++++
 scapy/contrib/avs.py             | 16 +++++++++--
 scapy/contrib/bgp.py             | 15 ++++++++--
 scapy/contrib/carp.py            | 15 +++++++++-
 scapy/contrib/cdp.py             |  3 +-
 scapy/contrib/chdlc.py           | 16 +++++++++--
 scapy/contrib/coap.py            |  5 ++++
 scapy/contrib/dtp.py             | 16 ++++++++++-
 scapy/contrib/eigrp.py           | 24 +++++++++-------
 scapy/contrib/etherip.py         | 15 ++++++++--
 scapy/contrib/gsm_um.py          | 31 ++++++++++-----------
 scapy/contrib/gtp_v2.py          | 16 +++++++++--
 scapy/contrib/http2.py           |  3 +-
 scapy/contrib/icmp_extensions.py | 19 +++++++++++++
 scapy/contrib/igmp.py            | 16 ++++++++++-
 scapy/contrib/igmpv3.py          | 16 +++++++++--
 scapy/contrib/ikev2.py           | 16 +++++++++--
 scapy/contrib/isis.py            | 14 ++++++++++
 scapy/contrib/ldp.py             |  2 +-
 scapy/contrib/modbus.py          |  3 ++
 scapy/contrib/mpls.py            | 14 +++++++++-
 scapy/contrib/nsh.py             | 18 ++++++++++--
 scapy/contrib/openflow.py        |  2 +-
 scapy/contrib/openflow3.py       |  2 +-
 scapy/contrib/ospf.py            | 26 +++++++++--------
 scapy/contrib/ppi.py             | 19 ++++++++++---
 scapy/contrib/ppi_cace.py        | 21 ++++++++++----
 scapy/contrib/ppi_geotag.py      | 19 ++++++++++---
 scapy/contrib/ripng.py           | 16 +++++++++--
 scapy/contrib/rsvp.py            | 16 +++++++++--
 scapy/contrib/send.py            | 19 +++++++++++--
 scapy/contrib/skinny.py          |  5 ++--
 scapy/contrib/spbm.py            | 48 ++++++++++++++++++++++----------
 scapy/contrib/ubberlogger.py     | 15 +++++++++-
 scapy/contrib/vqp.py             | 17 +++++++++--
 scapy/contrib/vtp.py             | 16 +++++++++--
 scapy/contrib/wpa_eapol.py       | 17 +++++++++--
 37 files changed, 461 insertions(+), 109 deletions(-)

diff --git a/scapy/contrib/HomePlugAV.py b/scapy/contrib/HomePlugAV.py
index 76ebb95e..7248d694 100644
--- a/scapy/contrib/HomePlugAV.py
+++ b/scapy/contrib/HomePlugAV.py
@@ -1,3 +1,22 @@
+#! /usr/bin/env python
+
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
+
+# scapy.contrib.description = HomePlugAV Layer
+# scapy.contrib.status = loads
+
 from scapy.packet import *
 from scapy.fields import *
 from scapy.layers.l2 import Ether
diff --git a/scapy/contrib/avs.py b/scapy/contrib/avs.py
index 8f40aff1..0188deb9 100644
--- a/scapy/contrib/avs.py
+++ b/scapy/contrib/avs.py
@@ -1,9 +1,21 @@
 #! /usr/bin/env python
 
-# http://trac.secdev.org/scapy/ticket/82
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = AVS WLAN Monitor Header
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 from scapy.packet import *
 from scapy.fields import *
diff --git a/scapy/contrib/bgp.py b/scapy/contrib/bgp.py
index d24dd58e..c67a4db9 100644
--- a/scapy/contrib/bgp.py
+++ b/scapy/contrib/bgp.py
@@ -1,7 +1,16 @@
 # This file is part of Scapy
-# See http://www.secdev.org/projects/scapy for more information
-# Copyright (C) Philippe Biondi <phil@secdev.org>
-# This program is published under a GPLv2 license
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = BGP v0.1
 # scapy.contrib.status = loads
diff --git a/scapy/contrib/carp.py b/scapy/contrib/carp.py
index 17fc37df..dc27b903 100644
--- a/scapy/contrib/carp.py
+++ b/scapy/contrib/carp.py
@@ -1,6 +1,19 @@
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = CARP
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 import struct, hmac, hashlib
 
diff --git a/scapy/contrib/cdp.py b/scapy/contrib/cdp.py
index 93d1ed86..aebc16b6 100644
--- a/scapy/contrib/cdp.py
+++ b/scapy/contrib/cdp.py
@@ -11,7 +11,8 @@
 ##                       Arnaud Ebalard  <arnaud.ebalard AT eads DOT net>  ##
 ##                       EADS/CRC security team                            ##
 ##                                                                         ##
-## This program is free software; you can redistribute it and/or modify it ##
+## This file is part of Scapy                                              ##
+## Scapy is free software: you can redistribute it and/or modify it        ##
 ## under the terms of the GNU General Public License version 2 as          ##
 ## published by the Free Software Foundation; version 2.                   ##
 ##                                                                         ##
diff --git a/scapy/contrib/chdlc.py b/scapy/contrib/chdlc.py
index 6e483762..9aaf73b9 100644
--- a/scapy/contrib/chdlc.py
+++ b/scapy/contrib/chdlc.py
@@ -1,7 +1,19 @@
-# http://trac.secdev.org/scapy/ticket/88
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = Cisco HDLC and SLARP
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 # This layer is based on information from http://www.nethelp.no/net/cisco-hdlc.txt
 
diff --git a/scapy/contrib/coap.py b/scapy/contrib/coap.py
index aa2a1f6f..939aa53e 100644
--- a/scapy/contrib/coap.py
+++ b/scapy/contrib/coap.py
@@ -1,3 +1,5 @@
+#! /usr/bin/env python
+
 # This file is part of Scapy.
 # See http://www.secdev.org/projects/scapy for more information.
 #
@@ -16,6 +18,9 @@
 #
 # Copyright (C) 2016 Anmol Sarma <me@anmolsarma.in>
 
+# scapy.contrib.description = Constrained Application Protocol (CoAP)
+# scapy.contrib.status = loads
+
 """
 RFC 7252 - Constrained Application Protocol (CoAP) layer for Scapy
 """
diff --git a/scapy/contrib/dtp.py b/scapy/contrib/dtp.py
index 9996118a..05776582 100644
--- a/scapy/contrib/dtp.py
+++ b/scapy/contrib/dtp.py
@@ -1,7 +1,21 @@
 #!/usr/bin/env python
 
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
+
 # scapy.contrib.description = DTP
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 """
     DTP Scapy Extension
diff --git a/scapy/contrib/eigrp.py b/scapy/contrib/eigrp.py
index 55b48f8d..2c8196a2 100644
--- a/scapy/contrib/eigrp.py
+++ b/scapy/contrib/eigrp.py
@@ -1,5 +1,19 @@
 #!/usr/bin/env python
 
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
+
 # scapy.contrib.description = EIGRP
 # scapy.contrib.status = loads
 
@@ -12,16 +26,6 @@
     :e-mail:    lobo@c3a.de / jochen.bartl@gmail.com
     :license:   GPL v2
 
-        This program is free software; you can redistribute it and/or
-        modify it under the terms of the GNU General Public License
-        as published by the Free Software Foundation; either version 2
-        of the License, or (at your option) any later version.
-
-        This program is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
     :TODO
 
     - Replace TLV code with a more generic solution
diff --git a/scapy/contrib/etherip.py b/scapy/contrib/etherip.py
index e331c146..61089718 100644
--- a/scapy/contrib/etherip.py
+++ b/scapy/contrib/etherip.py
@@ -1,5 +1,16 @@
-
-# http://trac.secdev.org/scapy/ticket/297
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = EtherIP
 # scapy.contrib.status = loads
diff --git a/scapy/contrib/gsm_um.py b/scapy/contrib/gsm_um.py
index 4d1bd330..738e9e6d 100644
--- a/scapy/contrib/gsm_um.py
+++ b/scapy/contrib/gsm_um.py
@@ -1,22 +1,21 @@
 #!/usr/bin/env python
 
-# scapy.contrib.description = PPI
-# scapy.contrib.status = loads
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
-"""
-    This program is free software: you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation, either version 3 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-"""
+# scapy.contrib.description = PPI
+# scapy.contrib.status = untested
 
     ####################################################################
     # This file holds the GSM UM interface implementation for Scapy    #
diff --git a/scapy/contrib/gtp_v2.py b/scapy/contrib/gtp_v2.py
index f656b121..b7ee9f39 100644
--- a/scapy/contrib/gtp_v2.py
+++ b/scapy/contrib/gtp_v2.py
@@ -2,8 +2,20 @@
 
 # Copyright (C) 2017 Alessio Deiana <adeiana@gmail.com>
 # 2017 Alexis Sultan <alexis.sultan@sfr.com>
-##
-# This program is published under a GPLv2 license
+
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = GTPv2
 # scapy.contrib.status = loads
diff --git a/scapy/contrib/http2.py b/scapy/contrib/http2.py
index 7c632856..9a6498fa 100644
--- a/scapy/contrib/http2.py
+++ b/scapy/contrib/http2.py
@@ -6,7 +6,8 @@
 ##                                                                         ##
 ## Copyright (C) 2016  Florian Maury <florian.maury@ssi.gouv.fr>           ##
 ##                                                                         ##
-## This program is free software; you can redistribute it and/or modify it ##
+## This file is part of Scapy                                              ##
+## Scapy is free software: you can redistribute it and/or modify it        ##
 ## under the terms of the GNU General Public License version 2 as          ##
 ## published by the Free Software Foundation.                              ##
 ##                                                                         ##
diff --git a/scapy/contrib/icmp_extensions.py b/scapy/contrib/icmp_extensions.py
index 3dcaf8d2..ef73f049 100644
--- a/scapy/contrib/icmp_extensions.py
+++ b/scapy/contrib/icmp_extensions.py
@@ -1,3 +1,22 @@
+#! /usr/bin/env python
+
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
+
+# scapy.contrib.description = ICMP Extensions
+# scapy.contrib.status = untested
+
 import scapy
 from scapy.packet import Packet, bind_layers
 from scapy.fields import *
diff --git a/scapy/contrib/igmp.py b/scapy/contrib/igmp.py
index 705e0de5..4af1640b 100644
--- a/scapy/contrib/igmp.py
+++ b/scapy/contrib/igmp.py
@@ -1,7 +1,21 @@
 #! /usr/bin/env python
 
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
+
 # scapy.contrib.description = IGMP/IGMPv2
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 
 #  TODO: scapy 2 has function getmacbyip, maybe it can replace igmpize
diff --git a/scapy/contrib/igmpv3.py b/scapy/contrib/igmpv3.py
index e7037291..1542e30d 100644
--- a/scapy/contrib/igmpv3.py
+++ b/scapy/contrib/igmpv3.py
@@ -1,9 +1,21 @@
 #! /usr/bin/env python
 
-# http://trac.secdev.org/scapy/ticket/31
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = IGMPv3
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 from scapy.packet import *
 from scapy.fields import *
diff --git a/scapy/contrib/ikev2.py b/scapy/contrib/ikev2.py
index 34d21da7..b4b7f7ba 100644
--- a/scapy/contrib/ikev2.py
+++ b/scapy/contrib/ikev2.py
@@ -1,9 +1,21 @@
 #!/usr/bin/env python
 
-# http://trac.secdev.org/scapy/ticket/353
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = IKEv2
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 import logging
 import struct
diff --git a/scapy/contrib/isis.py b/scapy/contrib/isis.py
index 3b7122e3..818acba8 100644
--- a/scapy/contrib/isis.py
+++ b/scapy/contrib/isis.py
@@ -1,3 +1,17 @@
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
+
 # scapy.contrib.description = ISIS
 # scapy.contrib.status = loads
 
diff --git a/scapy/contrib/ldp.py b/scapy/contrib/ldp.py
index b27b3969..6340903b 100644
--- a/scapy/contrib/ldp.py
+++ b/scapy/contrib/ldp.py
@@ -1,5 +1,5 @@
 # scapy.contrib.description = Label Distribution Protocol (LDP)
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 # http://git.savannah.gnu.org/cgit/ldpscapy.git/snapshot/ldpscapy-5285b81d6e628043df2a83301b292f24a95f0ba1.tar.gz
 
diff --git a/scapy/contrib/modbus.py b/scapy/contrib/modbus.py
index a6be7ff5..55640711 100644
--- a/scapy/contrib/modbus.py
+++ b/scapy/contrib/modbus.py
@@ -14,6 +14,9 @@
 # You should have received a copy of the GNU General Public License
 # along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
+# scapy.contrib.description = ModBus Protocol
+# scapy.contrib.status = loads
+
 # Copyright (C) 2016 Arthur Gervais, Ken LE PRADO, Sébastien Mainand
 
 from scapy.packet import *
diff --git a/scapy/contrib/mpls.py b/scapy/contrib/mpls.py
index 6af1d4ac..8041562a 100644
--- a/scapy/contrib/mpls.py
+++ b/scapy/contrib/mpls.py
@@ -1,4 +1,16 @@
-# http://trac.secdev.org/scapy/ticket/31
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = MPLS
 # scapy.contrib.status = loads
diff --git a/scapy/contrib/nsh.py b/scapy/contrib/nsh.py
index 42c1f3a8..86abe6e8 100644
--- a/scapy/contrib/nsh.py
+++ b/scapy/contrib/nsh.py
@@ -1,6 +1,20 @@
-#! /usr/bin/env python
-# scapy.contrib.description = nsh
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
+
+# scapy.contrib.description = NSH Protocol
 # scapy.contrib.status = loads
+
 from scapy.all import bind_layers
 from scapy.fields import BitField, ByteField, ByteEnumField
 from scapy.fields import ShortField, X3BytesField, XIntField
diff --git a/scapy/contrib/openflow.py b/scapy/contrib/openflow.py
index 62c0f031..0809ebe9 100755
--- a/scapy/contrib/openflow.py
+++ b/scapy/contrib/openflow.py
@@ -8,7 +8,7 @@
 ## Based on OpenFlow v1.0.1
 ## Specifications can be retrieved from https://www.opennetworking.org/
 
-# scapy.contrib.description = openflow v1.0
+# scapy.contrib.description = Openflow v1.0
 # scapy.contrib.status = loads
 
 import struct
diff --git a/scapy/contrib/openflow3.py b/scapy/contrib/openflow3.py
index df8ed5aa..0d8a6e6d 100755
--- a/scapy/contrib/openflow3.py
+++ b/scapy/contrib/openflow3.py
@@ -8,7 +8,7 @@
 ## Based on OpenFlow v1.3.4
 ## Specifications can be retrieved from https://www.opennetworking.org/
 
-# scapy.contrib.description = openflow v1.3
+# scapy.contrib.description = Openflow v1.3
 # scapy.contrib.status = loads
 
 import struct
diff --git a/scapy/contrib/ospf.py b/scapy/contrib/ospf.py
index 15b2d5e9..e05c109b 100644
--- a/scapy/contrib/ospf.py
+++ b/scapy/contrib/ospf.py
@@ -1,7 +1,21 @@
 #!/usr/bin/env python
 
 # scapy.contrib.description = OSPF
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
+
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 """
 OSPF extension for Scapy <http://www.secdev.org/scapy>
@@ -11,16 +25,6 @@ routing protocol as defined in RFC 2328 and RFC 5340.
 
 Copyright (c) 2008 Dirk Loss  :  mail dirk-loss de
 Copyright (c) 2010 Jochen Bartl  :  jochen.bartl gmail com
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
 """
 
 
diff --git a/scapy/contrib/ppi.py b/scapy/contrib/ppi.py
index 07fa6f13..95d39ed4 100644
--- a/scapy/contrib/ppi.py
+++ b/scapy/contrib/ppi.py
@@ -1,7 +1,18 @@
-## This file is (hopefully) part of Scapy
-## See http://www.secdev.org/projects/scapy for more informations
-## <jellch@harris.com>
-## This program is published under a GPLv2 license
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
+
+# author: <jellch@harris.com>
 
 # scapy.contrib.description = PPI
 # scapy.contrib.status = loads
diff --git a/scapy/contrib/ppi_cace.py b/scapy/contrib/ppi_cace.py
index dee51d10..62df1f0e 100644
--- a/scapy/contrib/ppi_cace.py
+++ b/scapy/contrib/ppi_cace.py
@@ -1,10 +1,21 @@
-## This file is (hopefully) part of Scapy
-## See http://www.secdev.org/projects/scapy for more informations
-## <jellch@harris.com>
-## This program is published under a GPLv2 license
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
+
+# author: <jellch@harris.com>
 
 # scapy.contrib.description = PPI CACE
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 """
 CACE PPI types 
diff --git a/scapy/contrib/ppi_geotag.py b/scapy/contrib/ppi_geotag.py
index 60a84571..a7f30c98 100644
--- a/scapy/contrib/ppi_geotag.py
+++ b/scapy/contrib/ppi_geotag.py
@@ -1,7 +1,18 @@
-## This file is (hopefully) part of Scapy
-## See http://www.secdev.org/projects/scapy for more informations
-## <jellch@harris.com>
-## This program is published under a GPLv2 license
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
+
+# author: <jellch@harris.com>
 
 # scapy.contrib.description = PPI GEOLOCATION
 # scapy.contrib.status = loads
diff --git a/scapy/contrib/ripng.py b/scapy/contrib/ripng.py
index 47e17bc4..584c3a32 100644
--- a/scapy/contrib/ripng.py
+++ b/scapy/contrib/ripng.py
@@ -1,9 +1,21 @@
 #!/usr/bin/env python
 
-# http://trac.secdev.org/scapy/ticket/301
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = RIPng
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 from scapy.packet import *
 from scapy.fields import *
diff --git a/scapy/contrib/rsvp.py b/scapy/contrib/rsvp.py
index e2b1247e..c2e0a0dc 100644
--- a/scapy/contrib/rsvp.py
+++ b/scapy/contrib/rsvp.py
@@ -1,9 +1,21 @@
 ## RSVP layer
 
-# http://trac.secdev.org/scapy/ticket/197
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = RSVP
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 from scapy.packet import *
 from scapy.fields import *
diff --git a/scapy/contrib/send.py b/scapy/contrib/send.py
index 676158a4..317563dc 100644
--- a/scapy/contrib/send.py
+++ b/scapy/contrib/send.py
@@ -1,12 +1,25 @@
 #! /usr/bin/env python
 
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
+
 ## Copyright (C) 2009 Adline Stephane <adline.stephane@gmail.com>
 ##
-## This program is published under a GPLv2 license
 
 # Partial support of RFC3971
-# scapy.contrib.description = SEND
-# scapy.contrib.status = loads
+# scapy.contrib.description = SEND (ICMPv6)
+# scapy.contrib.status = untested
 
 import socket
 
diff --git a/scapy/contrib/skinny.py b/scapy/contrib/skinny.py
index 215602db..f3ca78f4 100644
--- a/scapy/contrib/skinny.py
+++ b/scapy/contrib/skinny.py
@@ -1,7 +1,7 @@
 #! /usr/bin/env python
 
 # scapy.contrib.description = Skinny Call Control Protocol (SCCP)
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 
 #############################################################################
@@ -11,7 +11,8 @@
 ## Copyright (C) 2006    Nicolas Bareil      <nicolas.bareil@ eads.net>    ##
 ##                       EADS/CRC security team                            ##
 ##                                                                         ##
-## This program is free software; you can redistribute it and/or modify it ##
+## This file is part of Scapy                                              ##
+## Scapy is free software: you can redistribute it and/or modify           ##
 ## under the terms of the GNU General Public License version 2 as          ##
 ## published by the Free Software Foundation; version 2.                   ##
 ##                                                                         ##
diff --git a/scapy/contrib/spbm.py b/scapy/contrib/spbm.py
index 44ae942d..447bd218 100644
--- a/scapy/contrib/spbm.py
+++ b/scapy/contrib/spbm.py
@@ -1,22 +1,40 @@
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
+
 # IEEE 802.1aq - Shorest Path Bridging Mac-in-mac (SPBM):
 # Ethernet based link state protocol that enables Layer 2 Unicast, Layer 2 Multicast, Layer 3 Unicast, and Layer 3 Multicast virtualized services
 # https://en.wikipedia.org/wiki/IEEE_802.1aq
 # Modeled after the scapy VXLAN contribution
-#
-#############################################################
-# Example SPB Frame Creation
-# 
-# Note the outer Dot1Q Ethertype marking (0x88e7)
-#############################################################
-# backboneEther     = Ether(dst='00:bb:00:00:90:00', src='00:bb:00:00:40:00', type=0x8100)
-# backboneDot1Q     = Dot1Q(vlan=4051,type=0x88e7)
-# backboneServiceID = SPBM(prio=1,isid=20011)
-# customerEther     = Ether(dst='00:1b:4f:5e:ca:00',src='00:00:00:00:00:01',type=0x8100)
-# customerDot1Q     = Dot1Q(prio=1,vlan=11,type=0x0800)
-# customerIP        = IP(src='10.100.11.10',dst='10.100.12.10',id=0x0629,len=106)
-# customerUDP       = UDP(sport=1024,dport=1025,chksum=0,len=86)
-#
-# spb_example = backboneEther/backboneDot1Q/backboneServiceID/customerEther/customerDot1Q/customerIP/customerUDP/"Payload"
+
+# scapy.contrib.description = SBPM
+# scapy.contrib.status = untested
+
+"""
+ Example SPB Frame Creation
+ 
+ Note the outer Dot1Q Ethertype marking (0x88e7)
+
+ backboneEther     = Ether(dst='00:bb:00:00:90:00', src='00:bb:00:00:40:00', type=0x8100)
+ backboneDot1Q     = Dot1Q(vlan=4051,type=0x88e7)
+ backboneServiceID = SPBM(prio=1,isid=20011)
+ customerEther     = Ether(dst='00:1b:4f:5e:ca:00',src='00:00:00:00:00:01',type=0x8100)
+ customerDot1Q     = Dot1Q(prio=1,vlan=11,type=0x0800)
+ customerIP        = IP(src='10.100.11.10',dst='10.100.12.10',id=0x0629,len=106)
+ customerUDP       = UDP(sport=1024,dport=1025,chksum=0,len=86)
+
+ spb_example = backboneEther/backboneDot1Q/backboneServiceID/customerEther/customerDot1Q/customerIP/customerUDP/"Payload"
+"""
 
 from scapy.packet import Packet, bind_layers
 from scapy.fields import *
diff --git a/scapy/contrib/ubberlogger.py b/scapy/contrib/ubberlogger.py
index 1c01db2f..0809eea5 100644
--- a/scapy/contrib/ubberlogger.py
+++ b/scapy/contrib/ubberlogger.py
@@ -1,5 +1,18 @@
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
+
 # Author: Sylvain SARMEJEANNE
-# http://trac.secdev.org/scapy/ticket/1
 
 # scapy.contrib.description = Ubberlogger dissectors
 # scapy.contrib.status = untested
diff --git a/scapy/contrib/vqp.py b/scapy/contrib/vqp.py
index 9328cea4..728f6227 100644
--- a/scapy/contrib/vqp.py
+++ b/scapy/contrib/vqp.py
@@ -1,8 +1,19 @@
-
-# http://trac.secdev.org/scapy/ticket/147
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = VLAN Query Protocol
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 from scapy.packet import *
 from scapy.fields import *
diff --git a/scapy/contrib/vtp.py b/scapy/contrib/vtp.py
index 8c6c8d01..09572edc 100644
--- a/scapy/contrib/vtp.py
+++ b/scapy/contrib/vtp.py
@@ -1,7 +1,19 @@
-#!/usr/bin/env python
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = VLAN Trunking Protocol (VTP)
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 """
     VTP Scapy Extension
diff --git a/scapy/contrib/wpa_eapol.py b/scapy/contrib/wpa_eapol.py
index 084eedd8..a76b4ae8 100644
--- a/scapy/contrib/wpa_eapol.py
+++ b/scapy/contrib/wpa_eapol.py
@@ -1,8 +1,19 @@
-
-# http://trac.secdev.org/scapy/ticket/104
+# This file is part of Scapy
+# Scapy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# any later version.
+#
+# Scapy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Scapy. If not, see <http://www.gnu.org/licenses/>.
 
 # scapy.contrib.description = WPA EAPOL dissector
-# scapy.contrib.status = loads
+# scapy.contrib.status = untested
 
 from scapy.packet import *
 from scapy.fields import *
-- 
GitLab