diff --git a/scapy/__init__.py b/scapy/__init__.py index 9e773ac6c9e420c75899cf506275efe553ab0e74..443b36753f7f543c88564c4b8abe0f9bd5fd84ad 100644 --- a/scapy/__init__.py +++ b/scapy/__init__.py @@ -3,7 +3,12 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Scapy: create, send, sniff, dissect and manipulate network packets. +Usable either from an interactive console or as a Python library. +http://www.secdev.org/projects/scapy +""" if __name__ == "__main__": from scapy.main import interact diff --git a/scapy/all.py b/scapy/all.py index f6cf00eca839d1459b97df485e0ab394bf5ddffa..e0af8b14967f162195eead29c768fdbb232439c3 100644 --- a/scapy/all.py +++ b/scapy/all.py @@ -3,6 +3,9 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Aggregate top level objects from all Scapy modules. +""" from base_classes import * from config import * diff --git a/scapy/ansmachine.py b/scapy/ansmachine.py index 88c7f5d2e55d1b4d9ed98a5c817a979c5fc33aa4..2a90adcc65780577f9dac4fc38faf41efa2b1cf8 100644 --- a/scapy/ansmachine.py +++ b/scapy/ansmachine.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Answering machines. +""" + ######################## ## Answering machines ## ######################## diff --git a/scapy/arch/__init__.py b/scapy/arch/__init__.py index 0963c8d0bf45bf04abd4e6bc76200c8f69065aa6..95f95ecfb89895b68edbfead95d66a1b2d34b807 100644 --- a/scapy/arch/__init__.py +++ b/scapy/arch/__init__.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Operating system specific functionality. +""" + import sys,os,socket from scapy.error import * diff --git a/scapy/arch/bsd.py b/scapy/arch/bsd.py index 0bcb3ae98138b7deb4c62e9a392247a0168acd2f..1be7bd731acdff9f79f5d7eda4afe905cac415d2 100644 --- a/scapy/arch/bsd.py +++ b/scapy/arch/bsd.py @@ -3,7 +3,9 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license - +""" +Support for BSD-like operating systems such as FreeBSD, OpenBSD and Mac OS X. +""" LOOPBACK_NAME="lo0" diff --git a/scapy/arch/linux.py b/scapy/arch/linux.py index 4f5bb13155b2d1121ae58e614229780bace397a5..4321bda1fa2dd945371dbb07497d772b94371701 100644 --- a/scapy/arch/linux.py +++ b/scapy/arch/linux.py @@ -3,6 +3,9 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Linux specific functions. +""" from __future__ import with_statement import sys,os,struct,socket,time diff --git a/scapy/arch/pcapdnet.py b/scapy/arch/pcapdnet.py index 60fe74258636181cd7972bb2f246d4bb055b86de..bb2419f915f16e433a87287b85b2ee4a7da10089 100644 --- a/scapy/arch/pcapdnet.py +++ b/scapy/arch/pcapdnet.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Packet sending and receiving with libdnet and libpcap/WinPcap. +""" + import time,struct,sys if not sys.platform.startswith("win"): from fcntl import ioctl diff --git a/scapy/arch/solaris.py b/scapy/arch/solaris.py index 3b7e2fe6aafebc4e565433e14211a63db9a931da..3117076a277ab5a90a36c124f00f4bf3a24dc478 100644 --- a/scapy/arch/solaris.py +++ b/scapy/arch/solaris.py @@ -3,6 +3,9 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Customization for the Solaris operation system. +""" # IPPROTO_GRE is missing on Solaris import socket diff --git a/scapy/arch/unix.py b/scapy/arch/unix.py index b13418cf9daee617fb18948b3e353937470f2fb8..151a08f530a137b1c46e679b91cd50280035c59a 100644 --- a/scapy/arch/unix.py +++ b/scapy/arch/unix.py @@ -3,6 +3,9 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Common customizations for all Unix-like operating systems other than Linux +""" import sys,os,struct,socket,time from fcntl import ioctl diff --git a/scapy/arch/windows/__init__.py b/scapy/arch/windows/__init__.py index 06b7d2fa47adf0cd01019f5cefe4e609ea6a25ec..31808eb8df09701866854377e3f184aa8d2ce774 100755 --- a/scapy/arch/windows/__init__.py +++ b/scapy/arch/windows/__init__.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Customizations needed to support Microsoft Windows. +""" + import os,re,sys,socket,time from glob import glob from scapy.config import conf,ConfClass diff --git a/scapy/as_resolvers.py b/scapy/as_resolvers.py index 7a82ee0780905fa271384920bb5ff8fea8f4c042..24573c209de83491f4b34479dbd6186f6f5eff1b 100644 --- a/scapy/as_resolvers.py +++ b/scapy/as_resolvers.py @@ -3,6 +3,11 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Resolve Autonomous Systems (AS). +""" + + import socket from config import conf diff --git a/scapy/asn1/__init__.py b/scapy/asn1/__init__.py index a02c899908b29344a70236d1d40aa80fb7377b90..4827a588e20aec8524bf440cb7d5fb3dc8b795e2 100644 --- a/scapy/asn1/__init__.py +++ b/scapy/asn1/__init__.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Package holding ASN.1 related modules. +""" + # We do not import mib.py because it is more bound to scapy and # less prone to be used in a standalone fashion __all__ = ["asn1","ber"] diff --git a/scapy/asn1/asn1.py b/scapy/asn1/asn1.py index f333cbe3ca646fa393556ff4a87e03920204fb25..bad7b2cfd62ae4d1d8e3e419136fb6f461ab444a 100644 --- a/scapy/asn1/asn1.py +++ b/scapy/asn1/asn1.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +ASN.1 (Abstract Syntax Notation One) +""" + import random from scapy.config import conf from scapy.error import Scapy_Exception,warning diff --git a/scapy/asn1/ber.py b/scapy/asn1/ber.py index 1e66ffd7dc5ad98fb18fe40d06c9cc4efddef0d3..2312e025ae348ce527d113ab9f96f2dad6b4a5f0 100644 --- a/scapy/asn1/ber.py +++ b/scapy/asn1/ber.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Basic Encoding Rules (BER) for ASN.1 +""" + from scapy.error import warning from scapy.utils import inet_aton,inet_ntoa from asn1 import ASN1_Decoding_Error,ASN1_Encoding_Error,ASN1_BadTag_Decoding_Error,ASN1_Codecs,ASN1_Class_UNIVERSAL,ASN1_Error,ASN1_DECODING_ERROR,ASN1_BADTAG diff --git a/scapy/asn1/mib.py b/scapy/asn1/mib.py index c5396556ef46b288bd6b7ef7c686117788df265f..8531fcf21479667f80d9f7bd0bbc3e36edfeca96 100644 --- a/scapy/asn1/mib.py +++ b/scapy/asn1/mib.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Management Information Base (MIB) parsing +""" + import re from glob import glob from scapy.dadict import DADict,fixname diff --git a/scapy/asn1fields.py b/scapy/asn1fields.py index c32fbe31b6bcb86fa6116478d217ec48a05e63d2..6849ffed6d027ff1f7d8b77ecee2041442b26885 100644 --- a/scapy/asn1fields.py +++ b/scapy/asn1fields.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Classes that implement ASN.1 data structures. +""" + from asn1.asn1 import * from asn1.ber import * from volatile import * diff --git a/scapy/asn1packet.py b/scapy/asn1packet.py index dc900b0a2f99ca7a3d51c1ae3010bbc2d163b52b..57287491047e7ec5da28e2f9d38098417c30e67a 100644 --- a/scapy/asn1packet.py +++ b/scapy/asn1packet.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Packet holding data in Abstract Syntax Notation (ASN.1). +""" + from packet import * class ASN1_Packet(Packet): diff --git a/scapy/automaton.py b/scapy/automaton.py index 332709d31d2fcc3b268d896672177423af6b56d1..7502ac51d8a8243df303d892adf08bcf2f67008b 100644 --- a/scapy/automaton.py +++ b/scapy/automaton.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Automata with states, transitions and actions. +""" + from __future__ import with_statement import types,itertools,time,os,sys,socket from select import select diff --git a/scapy/autorun.py b/scapy/autorun.py index 85eec936bef900b1fdeb8438e5c0ce1eb403bee9..a45349497708b8dfec3fbb9b66b9dd43475b2ff8 100644 --- a/scapy/autorun.py +++ b/scapy/autorun.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Run commands when the Scapy interpreter starts. +""" + import code,sys from config import conf from themes import * diff --git a/scapy/base_classes.py b/scapy/base_classes.py index c2fa4b73aa9611f6ddd6a296d1092b988047770c..e54428a2566436d9579ea44fe5490468b2512f47 100644 --- a/scapy/base_classes.py +++ b/scapy/base_classes.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Generators and packet meta classes. +""" + ############### ## Generators ## ################ diff --git a/scapy/config.py b/scapy/config.py index 394221db9976cfd4325e6e1211a67c04548d5662..ae9ae17a6f837f27f235097a5b49a25c7012bc69 100644 --- a/scapy/config.py +++ b/scapy/config.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Implementation for of the configuration object. +""" + import os,time,socket,sys from data import * import base_classes diff --git a/scapy/crypto/__init__.py b/scapy/crypto/__init__.py index a29ecf8da77e55ce98073d5bfe6859c5466f625b..b441863e820e6711a0aeaa73e46cc9222a261937 100644 --- a/scapy/crypto/__init__.py +++ b/scapy/crypto/__init__.py @@ -3,7 +3,9 @@ ## Copyright (C) Arnaud Ebalard <arno@natisbad.org> ## This program is published under a GPLv2 license - +""" +Tools for handling with digital certificates. +""" try: import Crypto diff --git a/scapy/crypto/cert.py b/scapy/crypto/cert.py index b10b4ee5851749112b123ac7cecc22561fd18c1e..3d254fa3935662f6a5d1a3322a11af908a4c4460 100644 --- a/scapy/crypto/cert.py +++ b/scapy/crypto/cert.py @@ -3,6 +3,10 @@ ## Copyright (C) Arnaud Ebalard <arno@natisbad.org> ## This program is published under a GPLv2 license +""" +Cryptographic certificates. +""" + import os, sys, math, socket, struct, sha, hmac, string, time import random, popen2, tempfile from scapy.utils import strxor diff --git a/scapy/dadict.py b/scapy/dadict.py index 0ba66a6e40f1bb1c601da85e386abb2d59e78482..dcfd2a775ed9bf90a5f1c6e5299aad3b522bb1a1 100644 --- a/scapy/dadict.py +++ b/scapy/dadict.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Direct Access dictionary. +""" + from error import Scapy_Exception ############################### diff --git a/scapy/data.py b/scapy/data.py index 820232f92d7af69913f303a644c115df4307d407..de01cfc9cf1458a089a53da53c441b1495376fe4 100644 --- a/scapy/data.py +++ b/scapy/data.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Global variables and functions for handling external data sets. +""" + import os,sys,re from dadict import DADict from error import log_loading diff --git a/scapy/error.py b/scapy/error.py index b97c8a9453bdf4b8b18ca9d44acd39753f3067b5..29ebc1ba036c60485723fb9793e416a30f15dd3e 100644 --- a/scapy/error.py +++ b/scapy/error.py @@ -3,6 +3,9 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Logging subsystem and basic exception class. +""" ############################# ##### Logging subsystem ##### diff --git a/scapy/fields.py b/scapy/fields.py index 7989a6737d4a106808023077b1c2dcd2655f0d57..a700a73d9182a32de1a81654690011ac6efac8b8 100644 --- a/scapy/fields.py +++ b/scapy/fields.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Fields: basic data structures that make up parts of packets. +""" + import struct,copy,socket from config import conf from volatile import * diff --git a/scapy/layers/__init__.py b/scapy/layers/__init__.py index 881e0e302bc284d44d1e638209a9ed503bf07d6e..a3f2afb9b73e6853d60bc4bcf7775e2da56b66dc 100644 --- a/scapy/layers/__init__.py +++ b/scapy/layers/__init__.py @@ -2,3 +2,7 @@ ## See http://www.secdev.org/projects/scapy for more informations ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license + +""" +Layer package. +""" diff --git a/scapy/layers/all.py b/scapy/layers/all.py index 6251c2a594fe6c00cfc7be66889ea6a4308dcc6a..c6bb3791ef02ed2eabc3c16a85044d8b7b18f1d9 100644 --- a/scapy/layers/all.py +++ b/scapy/layers/all.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +All layers. Configurable with conf.load_layers. +""" + from scapy.config import conf from scapy.error import log_loading diff --git a/scapy/layers/bluetooth.py b/scapy/layers/bluetooth.py index 89757a98daeb7901c65e25148bd20d8aa8c858a0..40828f4be839c640844a6823ea7001fa6bb26169 100644 --- a/scapy/layers/bluetooth.py +++ b/scapy/layers/bluetooth.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Bluetooth layers, sockets and send/receive functions. +""" + import socket,struct from scapy.config import conf diff --git a/scapy/layers/dhcp.py b/scapy/layers/dhcp.py index a542e889c05a9fbb474ea8d76a878ae8d52595e2..ee8645d686a1b6bdf1be838012c89e4008e5c1f5 100644 --- a/scapy/layers/dhcp.py +++ b/scapy/layers/dhcp.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +DHCP (Dynamic Host Configuration Protocol) d BOOTP +""" + import struct from scapy.packet import * diff --git a/scapy/layers/dhcp6.py b/scapy/layers/dhcp6.py index 07eee8afb38e309352e7014d6795ca233b8f3b17..8fa8999e63f32a8b807f453eeba4e5fb8c57aa9b 100644 --- a/scapy/layers/dhcp6.py +++ b/scapy/layers/dhcp6.py @@ -6,6 +6,10 @@ ## Copyright (C) 2005 Guillaume Valadon <guedou@hongo.wide.ad.jp> ## Arnaud Ebalard <arnaud.ebalard@eads.net> +""" +DHCPv6: Dynamic Host Configuration Protocol for IPv6. [RFC 3315] +""" + import socket from scapy.packet import * from scapy.fields import * diff --git a/scapy/layers/dns.py b/scapy/layers/dns.py index 7ca570e1a4afc7913970920ef9318deaa1043d21..29c8fbebd640a7cb0b89aff01bfbb2c7f7c78b2f 100644 --- a/scapy/layers/dns.py +++ b/scapy/layers/dns.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +DNS: Domain Name System. +""" + import socket,struct from scapy.packet import * diff --git a/scapy/layers/dot11.py b/scapy/layers/dot11.py index 5fbf5121f0f435282dabd889e8f65cea542c9c27..a96def3622020b2bba14d5e814154315a94fb091 100644 --- a/scapy/layers/dot11.py +++ b/scapy/layers/dot11.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Wireless LAN according to IEEE 802.11. +""" + import re,struct from scapy.packet import * diff --git a/scapy/layers/gprs.py b/scapy/layers/gprs.py index fa944d8ad78a75aadfde0c31e0e4770e716979c7..31a931fe82c3bd7479f79f546c81f7d87a1f1a8b 100644 --- a/scapy/layers/gprs.py +++ b/scapy/layers/gprs.py @@ -3,6 +3,9 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +GPRS (General Packet Radio Service) for mobile data communication. +""" from scapy.fields import * from scapy.packet import * diff --git a/scapy/layers/hsrp.py b/scapy/layers/hsrp.py index 2e7e4a42fe12903ebcb7e9f6faed2fe01859e6ef..c981f39b84206b1b7775c2e28d049974e9780126 100644 --- a/scapy/layers/hsrp.py +++ b/scapy/layers/hsrp.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +HSRP (Hot Standby Router Protocol): proprietary redundancy protocol for Cisco routers. +""" + from scapy.fields import * from scapy.packet import * from scapy.layers.inet import UDP diff --git a/scapy/layers/inet.py b/scapy/layers/inet.py index b26a0cd8f8b6faddfe935b9ff48daee5f018a3d4..0de93e73f8f9d5b14e79c47c1df4f072ee1055e0 100644 --- a/scapy/layers/inet.py +++ b/scapy/layers/inet.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +IPv4 (Internet Protocol v4). +""" + import os,time,struct,re,socket,new from select import select from collections import defaultdict diff --git a/scapy/layers/inet6.py b/scapy/layers/inet6.py index f30ac79a7f7aec004e74b9d64737b4f46ba676f4..372dac7598a7469c3a6e9525ef9d67407804dad0 100644 --- a/scapy/layers/inet6.py +++ b/scapy/layers/inet6.py @@ -19,6 +19,10 @@ ## ## ############################################################################# +""" +IPv6 (Internet Protocol v6). +""" + import socket if not socket.has_ipv6: diff --git a/scapy/layers/ir.py b/scapy/layers/ir.py index daf49a63dcee041b153b88d821947acf7d84a271..fc738c559f1286061ac7e88444cc047244a6bfbb 100644 --- a/scapy/layers/ir.py +++ b/scapy/layers/ir.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +IrDA infrared data communication. +""" + from scapy.packet import * from scapy.fields import * from scapy.layers.l2 import CookedLinux diff --git a/scapy/layers/isakmp.py b/scapy/layers/isakmp.py index ccbad10deb2a29906499abfb01122d423b20dc95..8fab225ce7c51103f95b89929a03c4bb374ff38c 100644 --- a/scapy/layers/isakmp.py +++ b/scapy/layers/isakmp.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +ISAKMP (Internet Security Association and Key Management Protocol). +""" + import struct from scapy.packet import * from scapy.fields import * diff --git a/scapy/layers/l2.py b/scapy/layers/l2.py index 6fd1141f51698bd5eea17f3a63b0fdcde5efbb72..c90545d69694c5ef31093df03450f7e9e4076685 100644 --- a/scapy/layers/l2.py +++ b/scapy/layers/l2.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Classes and functions for layer 2 protocols. +""" + import os,struct,time from scapy.base_classes import Net from scapy.config import conf diff --git a/scapy/layers/l2tp.py b/scapy/layers/l2tp.py index 62c39f4af1b373389d7a0008cc8affa6eda3ec05..0b56db2114bc79cac6462d0de782cd5a964439b5 100644 --- a/scapy/layers/l2tp.py +++ b/scapy/layers/l2tp.py @@ -3,6 +3,12 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +L2TP (Layer 2 Tunneling Protocol) for VPNs. + +[RFC 2661] +""" + import struct from scapy.packet import * diff --git a/scapy/layers/llmnr.py b/scapy/layers/llmnr.py index 561729c876fa4547d6e91f0102edf4928d976be7..f87425ff3d452255d64dfddb11e03fbaec73bf1d 100644 --- a/scapy/layers/llmnr.py +++ b/scapy/layers/llmnr.py @@ -3,6 +3,11 @@ from scapy.packet import * from scapy.layers.inet import UDP from scapy.layers.dns import DNSQRField, DNSRRField, DNSRRCountField +""" +LLMNR (Link Local Multicast Node Resolution). + +[RFC 4795] +""" ############################################################################# ### LLMNR (RFC4795) ### diff --git a/scapy/layers/mgcp.py b/scapy/layers/mgcp.py index aee14cabdd9d194e5f788879bcc6ec5a621d7619..5d8a064ec3500d7a5a3ad57db4a65778ebdb2141 100644 --- a/scapy/layers/mgcp.py +++ b/scapy/layers/mgcp.py @@ -3,6 +3,12 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +MGCP (Media Gateway Control Protocol) + +[RFC 2805] +""" + from scapy.packet import * from scapy.fields import * from scapy.layers.inet import UDP diff --git a/scapy/layers/mobileip.py b/scapy/layers/mobileip.py index af8186605b3781efbb99c005b067863e60b6cafc..bbaa8ce7659f87f7dac228ffe1bb2d6a001ee688 100644 --- a/scapy/layers/mobileip.py +++ b/scapy/layers/mobileip.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Mobile IP. +""" + from scapy.fields import * from scapy.packet import * from scapy.layers.inet import IP,UDP diff --git a/scapy/layers/netbios.py b/scapy/layers/netbios.py index 3253c52f04487ad665fcefaa03938a8acd28ec07..605e06f15c432859dded8bba5da08b61b86ee64b 100644 --- a/scapy/layers/netbios.py +++ b/scapy/layers/netbios.py @@ -3,6 +3,12 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +NetBIOS over TCP/IP + +[RFC 1001/1002] +""" + import struct from scapy.packet import * from scapy.fields import * diff --git a/scapy/layers/netflow.py b/scapy/layers/netflow.py index 02addee51b691a4b5631f821ee7aa8c0c92c79a9..44567737a5c08a4edccd491145757a8970bd8816 100644 --- a/scapy/layers/netflow.py +++ b/scapy/layers/netflow.py @@ -3,6 +3,11 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Cisco NetFlow protocol v1 +""" + + from scapy.fields import * from scapy.packet import * diff --git a/scapy/layers/ntp.py b/scapy/layers/ntp.py index ffebdfc6b3b5e54fc0b53a1fdc138e991e99e483..6d11966c9a51825cc443e213dbbfb2db862b9fb0 100644 --- a/scapy/layers/ntp.py +++ b/scapy/layers/ntp.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +NTP (Network Time Protocol). +""" + import time from scapy.packet import * from scapy.fields import * diff --git a/scapy/layers/pflog.py b/scapy/layers/pflog.py index 3c62941a7722b0bb93a4d7692d82d6bef517d3d0..a8fc9fe057affe04d2c8b65a1e3d65a31be35389 100644 --- a/scapy/layers/pflog.py +++ b/scapy/layers/pflog.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +PFLog: OpenBSD PF packet filter logging. +""" + from scapy.packet import * from scapy.fields import * from scapy.layers.inet import IP diff --git a/scapy/layers/ppp.py b/scapy/layers/ppp.py index 67fc3f2fb89509e34ac196310299aa0fad377a83..50c68465565ff77e57e130e9d8db9347023297a7 100644 --- a/scapy/layers/ppp.py +++ b/scapy/layers/ppp.py @@ -3,6 +3,12 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +PPP (Point to Point Protocol) + +[RFC 1661] +""" + import struct from scapy.packet import * from scapy.layers.l2 import * diff --git a/scapy/layers/radius.py b/scapy/layers/radius.py index e3661e013fa473b975e6a8c66025291d7f6230d7..132396036c6704032187bfb77473d8bce88c129b 100644 --- a/scapy/layers/radius.py +++ b/scapy/layers/radius.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +RADIUS (Remote Authentication Dial In User Service) +""" + import struct from scapy.packet import * from scapy.fields import * diff --git a/scapy/layers/rip.py b/scapy/layers/rip.py index 51eab6658b35dc68478f9a3ac6dedef675173b4a..baf323360e35cc2a01ab719a6c4c3bfbc68ffd4b 100644 --- a/scapy/layers/rip.py +++ b/scapy/layers/rip.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +RIP (Routing Information Protocol). +""" + from scapy.packet import * from scapy.fields import * from scapy.layers.inet import UDP diff --git a/scapy/layers/rtp.py b/scapy/layers/rtp.py index 83116f4b8e5c3443f5e9649ed148e53a354453ad..629dccdd0a6e5c2b681c5ce25effe8a076f892ab 100644 --- a/scapy/layers/rtp.py +++ b/scapy/layers/rtp.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +RTP (Real-time Transport Protocol). +""" + from scapy.packet import * from scapy.fields import * diff --git a/scapy/layers/sctp.py b/scapy/layers/sctp.py index 82e4e4fbd7dc69b5cd1307f9a2b105a096d2af5e..5e3a1820ce04d27b68489a471144b44302e8f65d 100644 --- a/scapy/layers/sctp.py +++ b/scapy/layers/sctp.py @@ -4,6 +4,10 @@ ## Copyright (C) 6WIND <olivier.matz@6wind.com> ## This program is published under a GPLv2 license +""" +SCTP (Stream Control Transmission Protocol). +""" + import struct from scapy.packet import * diff --git a/scapy/layers/sebek.py b/scapy/layers/sebek.py index 2459ae87acf13899fb6f2b1683821868cb5ead5a..c54e6728f2e0a3f9e4e34d2267afb16b75a02cd6 100644 --- a/scapy/layers/sebek.py +++ b/scapy/layers/sebek.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Sebek: Linux kernel module for data collection on honeypots. +""" + from scapy.fields import * from scapy.packet import * from scapy.layers.inet import UDP diff --git a/scapy/layers/skinny.py b/scapy/layers/skinny.py index 827c6bc332d4baa13616fd8b1c4d108fc23db32c..9fb6ac060f218c5bf513b87aeb3f3c2eaf999810 100644 --- a/scapy/layers/skinny.py +++ b/scapy/layers/skinny.py @@ -3,12 +3,14 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Cisco Skinny protocol. +""" + from scapy.packet import * from scapy.fields import * from scapy.layers.inet import TCP -# Cisco Skinny protocol - # shamelessly ripped from Ethereal dissector skinny_messages = { # Station -> Callmanager diff --git a/scapy/layers/smb.py b/scapy/layers/smb.py index b851f51bcbddda01f5246d49e459623e0fa386be..73ebe5b15160cfb36d69145bf27c1af36d0a8eb9 100644 --- a/scapy/layers/smb.py +++ b/scapy/layers/smb.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +SMB (Server Message Block), also known as CIFS. +""" + from scapy.packet import * from scapy.fields import * from scapy.layers.netbios import NBTSession diff --git a/scapy/layers/snmp.py b/scapy/layers/snmp.py index 0681825c1ae9613cdf9da1746bcf7704eb15f9e5..2c58825036b0351a94e187aba23db7cd43127d69 100644 --- a/scapy/layers/snmp.py +++ b/scapy/layers/snmp.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +SNMP (Simple Network Management Protocol). +""" + from scapy.asn1packet import * from scapy.asn1fields import * from scapy.layers.inet import UDP diff --git a/scapy/layers/tftp.py b/scapy/layers/tftp.py index 28c569eddec4e2519715fcfc06d0016574081d6a..16a782c21eeab9efab31c357994e4affd32c1f7e 100644 --- a/scapy/layers/tftp.py +++ b/scapy/layers/tftp.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +TFTP (Trivial File Transfer Protocol). +""" + import os,random from scapy.packet import * from scapy.fields import * diff --git a/scapy/layers/vrrp.py b/scapy/layers/vrrp.py index a08a42f7d0a8412fba881dc1e81820ff99cf4466..f874b352ab8c2ef6a2e03e4d303acd5a23af8e6c 100644 --- a/scapy/layers/vrrp.py +++ b/scapy/layers/vrrp.py @@ -4,6 +4,10 @@ ## Copyright (C) 6WIND <olivier.matz@6wind.com> ## This program is published under a GPLv2 license +""" +VRRP (Virtual Router Redundancy Protocol). +""" + from scapy.packet import * from scapy.fields import * from scapy.layers.inet import IP diff --git a/scapy/layers/x509.py b/scapy/layers/x509.py index f8388d1d4f4ebe8e9b93ae013407bede00add393..18aaa5e3391d401bdf95150cf1f8305c67f87a85 100644 --- a/scapy/layers/x509.py +++ b/scapy/layers/x509.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +X.509 certificates. +""" + from scapy.asn1packet import * from scapy.asn1fields import * diff --git a/scapy/main.py b/scapy/main.py index beb70afa7c29861602d264c94c49d8f38b705a5e..ec9aee2ca34fec817544e8765f7a899b2768016e 100644 --- a/scapy/main.py +++ b/scapy/main.py @@ -3,6 +3,9 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Main module for interactive startup. +""" from __future__ import generators import os,sys diff --git a/scapy/modules/__init__.py b/scapy/modules/__init__.py index 881e0e302bc284d44d1e638209a9ed503bf07d6e..6303dad0d69d78df1ae20426177f90e38311bba0 100644 --- a/scapy/modules/__init__.py +++ b/scapy/modules/__init__.py @@ -2,3 +2,7 @@ ## See http://www.secdev.org/projects/scapy for more informations ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license + +""" +Package of extension modules that have to be loaded explicitly. +""" diff --git a/scapy/modules/geoip.py b/scapy/modules/geoip.py index e63596923828c3814d93dbf3cf3f393664b08147..8b308a4ce4ed0a99d759bdefeed0e20ce14d108c 100644 --- a/scapy/modules/geoip.py +++ b/scapy/modules/geoip.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +GeoIP: find out the geographical location of IP addresses +""" + from scapy.data import KnowledgeBase from scapy.config import conf diff --git a/scapy/modules/nmap.py b/scapy/modules/nmap.py index ffed334a63a80918f7e90391c4afa56b902677fa..fc53f427584ef28b3cf98d4d0021d4526a9d330f 100644 --- a/scapy/modules/nmap.py +++ b/scapy/modules/nmap.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Clone of Nmap's first generation OS fingerprinting. +""" + import os from scapy.data import KnowledgeBase diff --git a/scapy/modules/p0f.py b/scapy/modules/p0f.py index ebcf68d05940be09298b95365ccd5d3692906b78..21bbd925380704df5e446198e4d925df2ae7d032 100644 --- a/scapy/modules/p0f.py +++ b/scapy/modules/p0f.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Clone of p0f passive OS fingerprinting +""" + from scapy.data import KnowledgeBase from scapy.config import conf from scapy.layers.inet import IP, TCP, TCPOptions diff --git a/scapy/modules/queso.py b/scapy/modules/queso.py index 6284cd90815bfa0e2ee389304b90f2c0410ee4e0..ebc5486e13878b1a853612707ae910c5db0264e4 100644 --- a/scapy/modules/queso.py +++ b/scapy/modules/queso.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Clone of queso OS fingerprinting +""" + from scapy.data import KnowledgeBase from scapy.config import conf from scapy.layers.inet import IP,TCP diff --git a/scapy/modules/voip.py b/scapy/modules/voip.py index 0d0b4daf93c50cc450d20c849fbdb6a2059f2399..d221ecf24675e3e8d7e74c7a03deadf7a066cda4 100644 --- a/scapy/modules/voip.py +++ b/scapy/modules/voip.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +VoIP (Voice over IP) related functions +""" + import os ################### ## Testing stuff ## diff --git a/scapy/packet.py b/scapy/packet.py index 1f51f3181109c046f84d0df4c34a66d92c63afba..0accd354dc91a06ad3be6f57f1a2fce9ff1647ae 100644 --- a/scapy/packet.py +++ b/scapy/packet.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Packet class. Binding mechanism. fuzz() method. +""" + import time,itertools,os from fields import StrField,ConditionalField,Emph,PacketListField from config import conf diff --git a/scapy/plist.py b/scapy/plist.py index 4cb01a7aa88eab6460773d8a590e1d14669f47e5..0abe460ebed4d4f1ba8ae92f5431137276a289c0 100644 --- a/scapy/plist.py +++ b/scapy/plist.py @@ -3,6 +3,11 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +PacketList: holds several packets and allows to do operations on them. +""" + + import os,subprocess from config import conf from base_classes import BasePacket,BasePacketList diff --git a/scapy/pton_ntop.py b/scapy/pton_ntop.py index 8f83697d31d81f31e946bd3eb2ee6149047e11b4..1bd88920e15f939725030eed1e22ce366b7e7dae 100644 --- a/scapy/pton_ntop.py +++ b/scapy/pton_ntop.py @@ -3,11 +3,14 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Convert IPv6 addresses between textual representation and binary. -import socket,struct +These functions are missing when python is compiled +without IPv6 support, on Windows for instance. +""" -# These functions are missing when python is compiled -# without IPv6 support, on Windows for instance +import socket,struct def inet_pton(af, addr): """Convert an IP address from text representation into binary form""" diff --git a/scapy/route.py b/scapy/route.py index d63176c0be56f43b8299910a2083b95343fa5931..52a95629388f0c050ec2f58fa3abd95b59cc3377 100644 --- a/scapy/route.py +++ b/scapy/route.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Routing and handling of network interfaces. +""" + import socket from arch import read_routes,get_if_addr,LOOPBACK_NAME from utils import atol,ltoa,itom diff --git a/scapy/route6.py b/scapy/route6.py index 953339905820363c3ba8014a42162fedaaf0fae4..51116aaf54d519ad510cd9a9f236083454054d3d 100644 --- a/scapy/route6.py +++ b/scapy/route6.py @@ -6,6 +6,9 @@ ## Copyright (C) 2005 Guillaume Valadon <guedou@hongo.wide.ad.jp> ## Arnaud Ebalard <arnaud.ebalard@eads.net> +""" +Routing and network interface handling for IPv6. +""" ############################################################################# ############################################################################# diff --git a/scapy/sendrecv.py b/scapy/sendrecv.py index b72d96541f7c487b05d66a0187ba8272910b781f..a50bd7e1b731da04aeb47ea9029945cf9f003a70 100644 --- a/scapy/sendrecv.py +++ b/scapy/sendrecv.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Functions to send and receive packets. +""" + import cPickle,os,sys,time,subprocess from select import select from data import * diff --git a/scapy/supersocket.py b/scapy/supersocket.py index acd498929f9b8c34aab559cbc03b84facfad4b6b..c5ebe46a6253c9668377d063f83016290e16ce31 100644 --- a/scapy/supersocket.py +++ b/scapy/supersocket.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +SuperSocket. +""" + import socket,time from config import conf from data import * diff --git a/scapy/themes.py b/scapy/themes.py index 866de0e151e5dc5cf6e670c9ffcd91926741f158..188fd5470b75f6b98b86f7ad0a070219139d7f4b 100644 --- a/scapy/themes.py +++ b/scapy/themes.py @@ -3,6 +3,9 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Color themes for the interactive console. +""" ################## ## Color themes ## diff --git a/scapy/tools/UTscapy.py b/scapy/tools/UTscapy.py index f8790ac8f73e7a8c5b04f9eb741ba1544df0174d..ff8460c52010f53d4adf41a336f378105929cd51 100755 --- a/scapy/tools/UTscapy.py +++ b/scapy/tools/UTscapy.py @@ -3,6 +3,9 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Unit testing infrastructure for Scapy +""" import sys,getopt,imp import bz2, base64, os.path, time, traceback, zlib, sha diff --git a/scapy/tools/__init__.py b/scapy/tools/__init__.py index 881e0e302bc284d44d1e638209a9ed503bf07d6e..af6eec747b2d7c2aa22810ed69591d52396298f1 100644 --- a/scapy/tools/__init__.py +++ b/scapy/tools/__init__.py @@ -2,3 +2,7 @@ ## See http://www.secdev.org/projects/scapy for more informations ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license + +""" +Additional tools to be run separately +""" diff --git a/scapy/utils.py b/scapy/utils.py index 06f451e07cfa7d500c1684078b126165aae24425..07e3a8ae89af2d99124fc94ad0f0e0c7323ef422 100644 --- a/scapy/utils.py +++ b/scapy/utils.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +General utility functions. +""" + import os,sys,socket,types import random,time import gzip,zlib,cPickle diff --git a/scapy/utils6.py b/scapy/utils6.py index eab813b35019a6576812f9cc60dddea42736d06f..9d12081f5214691cd2fb614bc9a39df43d7126ca 100644 --- a/scapy/utils6.py +++ b/scapy/utils6.py @@ -6,6 +6,9 @@ ## Copyright (C) 2005 Guillaume Valadon <guedou@hongo.wide.ad.jp> ## Arnaud Ebalard <arnaud.ebalard@eads.net> +""" +Utility functions for IPv6. +""" from config import conf from data import * diff --git a/scapy/volatile.py b/scapy/volatile.py index de2945935e6f5f87e2fbf611664c652c9bec2532..dcb704c1c8b5fa5f9928df182a938835f7a5d599 100644 --- a/scapy/volatile.py +++ b/scapy/volatile.py @@ -3,6 +3,10 @@ ## Copyright (C) Philippe Biondi <phil@secdev.org> ## This program is published under a GPLv2 license +""" +Fields that hold random numbers. +""" + import random,time,math from base_classes import Net from utils import corrupt_bits,corrupt_bytes diff --git a/setup.py b/setup.py index 92a0c53cfeb4266833d3da82f727ea1dd1c683bf..aecd37fb4fcef23358ac38f8b85b6a84fc8529cb 100755 --- a/setup.py +++ b/setup.py @@ -1,5 +1,9 @@ #! /usr/bin/env python +""" +Distutils setup file for Scapy. +""" + from distutils import archive_util from distutils import sysconfig