Permalink
Browse files

Fixed READMEs

  • Loading branch information...
1 parent 0ed4ad9 commit 9b68a5dc08c9c13f57e569be5caf398baf9c9891 @allfro committed Jul 24, 2011
Showing with 132 additions and 7 deletions.
  1. +76 −0 README
  2. +56 −7 examples/README
View
76 README
@@ -1,6 +1,15 @@
pylibnet - Python module for the libnet packet injection library
Copyright (C) 2009 Nadeem Douba
+WELCOME
+
+Thank you for trying out pylibnet. I hope it will be of
+great value to you. The examples in this directory come
+from the efforts of you (the people) and I have been
+inspired as of late to contribute to it as well.
+
+INSTALL
+
To install this module you will need to install the following:
* libnet-1.1.x: to inject your packets.
@@ -30,3 +39,70 @@ documentation is embedded in the library and can be accessed via
the help() function in the Python interpretter or pydoc.
Happy Injecting!
+
+LIBNETERPRETER
+
+lnsh is now part of the standard package for pylibnet. As part
+of this package lnsh will be automatically installed to
+/usr/local/bin/lnsh for your hacking convenience. More details
+about lnsh below.
+
+EXAMPLES
+
+The following examples require pylibnet, libnet and root
+access in order for them to work. The newest addition to
+the examples directory is 'lnsh'. It is an interactive
+pylibnet console that provides a lot of shortcuts.
+
+Take a look at the example scripts in the lnsh directory.
+You can use this interpretter in interactive as well as
+scripted mode. A few things to note:
+
+- In interactive mode functions with no parameters can
+ be called without the round brackets. For example,
+ 'ipv4' would create an ipv4 packet header with all
+ sorts of random defaults. However, In scripted mode
+ functions require paranthesis.
+
+- The builders can be called without the 'autobuild_' and
+ 'build_' prefixes. For automatic functions use 'auto_<name>',
+ and for non-automatic functions use just the '<name>'. For
+ example, autobuild_arp translates to auto_arp, while
+ build_ipv4 translates to ipv4. The old function names are
+ available as well for backwards compatibility.
+
+- The diagnostic functions can be used without the 'get'
+ prefixes. For example, 'getpacket' translates to 'packet'
+ and so on. Also the 'diag_*' functions can be called
+ without the 'diag_' prefix. For example, 'diag_dump_context'
+ is just 'dump_context'.
+
+- Finally, the injection and device parameters for the context
+ is specified at runtime. No need to build it within the
+ script itself. In script mode you will need to either modify
+ the she-bang (#!) line to specify the appropriate settings or
+ specify them at runtime. For example, 'tcpsyn.libnet' can be
+ run using the '-i' parameter ('./tcpsyn.libnet -i eth1') or
+ without the '-i' parameter ('./tcpsyn.libnet') because of the
+ she-bang ('#!/usr/local/bin/lnsh -i eth0 -t RAW4'). Additionally,
+ lnsh scripts can have their own parameters. Take a look at how
+ the dnsv4.libnet example script looks like for reference. The
+ she-bang must have a '--' appended to the end of it to accept
+ parameters (yes I know... it's ugly. but it works). For help in
+ interactive mode just run lnsh with -h for help or type 'help'
+ at the command line.
+
+Hope you will enjoy using lnsh as I thoroughly enjoyed coding
+it (yes... I have no life).
+
+
+YOUR CONTRIBUTIONS OR IDEAS
+
+Please feel free to contribute examples or ideas to this project.
+Your effort would be greatly appreciated by myself and most
+importantly, the open source community. I can be reached at
+<ndouba at gmail dot com>.
+
+THANK YOU
+
+To all those who have contributed and provided bug reports.
View
@@ -1,10 +1,52 @@
+pylibnet - Python module for the libnet packet injection library
+Copyright (C) 2009 Nadeem Douba
+
WELCOME
Thank you for trying out pylibnet. I hope it will be of
great value to you. The examples in this directory come
from the efforts of you (the people) and I have been
inspired as of late to contribute to it as well.
+INSTALL
+
+To install this module you will need to install the following:
+ * libnet-1.1.x: to inject your packets.
+
+All these prerequisites can be installed using apt-get, port, or fink.
+Debian users can install the following packages to meet the pre-
+requisite requirements:
+ * build-essential
+ * libnet1-dev
+ * python-dev
+
+For Mac OS/X users, please use the libnet libraries that come from
+the Fink or MacPorts distribution. If you try to compile libnet in
+Mac OS/X you will run into a bug that causes "pblock not found" errors.
+Mac OS/X users will have to install the following prerequisites
+in MacPorts:
+ * libnet11
+ * python25 (this is essential since Mac OS/X Python only runs
+ in 64-bit mode and the libnet lib is 32-bit only)
+
+After installing python25 use the following command to make the
+MacPorts distro of Python active:
+
+sudo python_select python25
+
+Please let me know if we can improve this wrapper in any way. The
+documentation is embedded in the library and can be accessed via
+the help() function in the Python interpretter or pydoc.
+
+Happy Injecting!
+
+LIBNETERPRETER
+
+lnsh is now part of the standard package for pylibnet. As part
+of this package lnsh will be automatically installed to
+/usr/local/bin/lnsh for your hacking convenience. More details
+about lnsh below.
+
EXAMPLES
The following examples require pylibnet, libnet and root
@@ -42,18 +84,25 @@ scripted mode. A few things to note:
specify them at runtime. For example, 'tcpsyn.libnet' can be
run using the '-i' parameter ('./tcpsyn.libnet -i eth1') or
without the '-i' parameter ('./tcpsyn.libnet') because of the
- she-bang ('#!./lnsh -i eth0 -t RAW4'). In interactive mode
- just run lnsh with -h for help.
+ she-bang ('#!/usr/local/bin/lnsh -i eth0 -t RAW4'). Additionally,
+ lnsh scripts can have their own parameters. Take a look at how
+ the dnsv4.libnet example script looks like for reference. The
+ she-bang must have a '--' appended to the end of it to accept
+ parameters (yes I know... it's ugly. but it works). For help in
+ interactive mode just run lnsh with -h for help or type 'help'
+ at the command line.
Hope you will enjoy using lnsh as I thoroughly enjoyed coding
it (yes... I have no life).
-YOUR CONTRIBUTIONS
+YOUR CONTRIBUTIONS OR IDEAS
-Please feel free to contribute examples to this project.
-Your effort would be greatly appreciated by myself and
-most importantly, the open source community. I can be reached
-at <ndouba at gmail dot com>.
+Please feel free to contribute examples or ideas to this project.
+Your effort would be greatly appreciated by myself and most
+importantly, the open source community. I can be reached at
+<ndouba at gmail dot com>.
THANK YOU
+
+To all those who have contributed and provided bug reports.

0 comments on commit 9b68a5d

Please sign in to comment.