-
Notifications
You must be signed in to change notification settings - Fork 26
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit bef7a2b
Showing
445 changed files
with
71,263 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
# protolib | ||
protolib/ | ||
|
||
# build executables | ||
makefiles/mgen | ||
makefiles/mpmgr | ||
|
||
# OS generated files # | ||
.DS_Store | ||
.DS_Store? | ||
._* | ||
.Spotlight-V100 | ||
.Trashes | ||
ehthumbs.db | ||
Thumbs.db |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
/********************************************************************* | ||
* | ||
* AUTHORIZATION TO USE AND DISTRIBUTE | ||
* | ||
* Redistribution and use in source and binary forms, with or without | ||
* modification, are permitted provided that: | ||
* | ||
* (1) source code distributions retain this paragraph in its entirety, | ||
* | ||
* (2) distributions including binary code include this paragraph in | ||
* its entirety in the documentation or other materials provided | ||
* with the distribution. | ||
* | ||
* "This product includes software written and developed | ||
* by Code 5520 of the Naval Research Laboratory (NRL)." | ||
* | ||
* The name of NRL, the name(s) of NRL employee(s), or any entity | ||
* of the United States Government may not be used to endorse or | ||
* promote products derived from this software, nor does the | ||
* inclusion of the NRL written and developed software directly or | ||
* indirectly suggest NRL or United States Government endorsement | ||
* of this product. | ||
* | ||
* THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR | ||
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED | ||
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. | ||
* | ||
********************************************************************/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
MGEN Version 5.x | ||
|
||
This directory contains source code for the NRL Multi-Generator | ||
(MGEN) Test Tool Set Version 5.x. MGEN Version 5 is based on | ||
MGEN 4.2b6. The transport classes have been abstracted and new | ||
features have been added. | ||
|
||
Primary new features include: | ||
|
||
1) Support for the TCP protocol. | ||
2) New pattern options JITTER and CLONE. | ||
3) Transport buffering has been added (QUEUE option). | ||
4) User defined payload can be specified with the DATA option. | ||
5) Message COUNT support. (Concrete limit for messages sent per flow). | ||
6) Modifications to the log file. (New TCP messages and additional | ||
message content). | ||
7) Works with the RAPR toolkit. <http://cs.itd.nrl.navy.mil/work/rapr/index.php> | ||
8) Compile time option to randomly fill payload buffer. | ||
9) OS can now choose src port. | ||
10) Command line option to log in localtime or gmtime. | ||
11) Includes SO_BROADCAST socket option provided by Erik Auerswald. | ||
12) Includes bug fix for compiling under Visual Studio 6.0 (submitted | ||
by Kevin Wambsganz) | ||
13) Includes bug fix for retaining src port upon flow MOD command. | ||
|
||
Please refer to the Mgen User's Guide for more information on these | ||
and other features at <http://pf.itd.nrl.navy.mil/mgen/mgen.html> or | ||
in the distribution. | ||
|
||
FILES AND DIRECTORIES: | ||
|
||
README.TXT - this file. | ||
|
||
include - Include files | ||
|
||
src - Directory with cross-platform source code files | ||
src/common contains mgen src code files. | ||
src/sim contains ns and opnet src code files. | ||
|
||
doc - Documentation directory. | ||
mgen.[HTML|PDF] (MGEN User's and Reference Guide) | ||
mgen-tech.[HTML|PDF] (MGEN Technical Documentation) | ||
example.mgn (Example MGEN script file) | ||
|
||
protolib - NRL Protolib source tree (See | ||
<http:://protolib.pf.itd.nrl.navy.mil>) | ||
|
||
makefiles - Directory with os-specific Makefiles. | ||
Linux specific makefiles are at the top level, | ||
win32 and wince subdirectories contains windows | ||
build files. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,130 @@ | ||
Version 5.02 | ||
============ | ||
- Contains bug fix to close open UDP sockets | ||
- Contains bug fix to handle incoming tcp connections on windows | ||
correctly | ||
|
||
Version 5.01c | ||
============= | ||
- Contains bug fixes for compilation under Visual Studio 6.0 | ||
- Contains fix to retain src port when flow mod command is | ||
issued. | ||
- Other unenumerated bug fixes. | ||
|
||
Version 5.01b | ||
============= | ||
- Transport classes have been abstracted. Socket, UDP, TCP, and SINK | ||
transport classes now subclass base transport class. | ||
- New SINK class is based on ProtoChannel. | ||
- New pattern options JITTER and CLONE. | ||
- Transport buffering has been added (QUEUE option). | ||
- Message COUNT support added. (Concrete limit for messages sent | ||
per flow.) | ||
- Log file changes (new TCP messages and additional message content) | ||
- Thanks to Laurie Thompson for lots of good work on all of this stuff. | ||
- Changed long/unsigned long/etc types to INT32/UINT32/etc to support | ||
builds on 64-bit and other architectures. | ||
- Applied SO_BROADCAST socket option provided by Eric Auerswald. | ||
|
||
Version 4.2b7 | ||
============= | ||
- Added support for TCP protocol. | ||
- Mgen contains support to enable it to be embedded in a | ||
rapr application. | ||
- Payload can be specified for a specific flow on the command | ||
line. | ||
- Specifying a "0" src port will cause the OS to randomly | ||
assign one. (NOT specifying a src port does the same) | ||
- Support for a mgen "controller" class added. | ||
- Compile option to random fill the payload buffer. | ||
- Added new "localtime" command line option to enable logging | ||
in localtime versus gmtime. gmtime is the default. | ||
- Mgen now a subclass of MgenSocketList | ||
- Various tweaks to keep purify happy. | ||
|
||
Version 4.2b6 | ||
============= | ||
- Tweaks so gcc 4.x compiles will succeed | ||
- Includes ProtoSocket tweaks for NT4 support | ||
|
||
Version 4.2b5 | ||
============= | ||
- Various tweaks and changes | ||
|
||
Version 4.2b4 | ||
============= | ||
- Added several new options and updated documentation | ||
- Added "instance <instanceName>" for run-time control of MGEN | ||
- Added "hostAddr {on|off}" to include "host" source addr | ||
- Added "precise {on|off}" for optional precision timing of | ||
messages at expense of added CPU loading. | ||
- Added short message check to unpacking routine | ||
(prevents segmentation fault possible when checking corrupt UDP packets) | ||
- Performance tweaks and Protolib updates | ||
|
||
Version 4.2b3 | ||
============= | ||
- Some protolib changes | ||
- Performance tweaks (read all available data from recv ready sockets) | ||
|
||
Version 4.2b1 | ||
============= | ||
- Added "flush" option and made per-packet flushing of log | ||
file optional (non-default) behavior | ||
- MGEN ported to new "Protolib 2" ("Protokit") code base | ||
|
||
Version 4.1b1 | ||
============= | ||
- Added "sink/source" options for streaming MGEN messages to | ||
other processes (e.g. ssh, norm, etc - tested on Unix only) | ||
- Changed packet format so that message "length" comes first | ||
- Added "checksum" option | ||
- Added "event" command-line command to insert script flow events | ||
from command-line | ||
- Added option to build ns-2 "Agent/Mgen" simulation agent. | ||
|
||
Version 4.0x6 | ||
============= | ||
- Fixed problem when flows 0.0 pkt/sec were scripted. | ||
- Added script parameter checks | ||
- Added code to detect ambiguous script keyword abbreviations | ||
- Added default tos,ttl,txbuffer,rxbuffer, and interface. | ||
All of the above may be used as command-line and/or | ||
script arguments. Script arguments may be socket-specific | ||
or global. | ||
|
||
|
||
Version 4.0x5 | ||
============= | ||
- Fixed location of gps_status field to match documented (intended) | ||
MGEN message payload format. | ||
|
||
- Added "offset <sec>" command to skip into script by an offset | ||
|
||
- Added "save <saveFile>" command to save flow sequence and | ||
script offset time upon exit. | ||
|
||
- Added binary log file option and "convert" command to convert | ||
binary MGEN logs to default text format. | ||
|
||
- Added new "BURST" pattern. | ||
|
||
- Added IPv6 Flow Label support. | ||
|
||
- Added "MGEN Payload Manager (mpmgr)" support to allow limited | ||
user-defined payload to be added to MGEN 4.x messages. | ||
|
||
Version 4.0x4 | ||
============= | ||
- Fixed bug with MGEN message size logging | ||
|
||
Version 4.0x3 | ||
============= | ||
- Added logging of MGEN START/STOP events | ||
- Added support for START, INPUT, and OUTPUT global commands | ||
|
||
Version 4.0x2 | ||
============= | ||
- Initial working MGENv4 build. | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
Generating doxygen output on Windows: | ||
|
||
1. Make sure the doc/doxy-config file points to the correct location | ||
of graphwiz's "dot" exectuable for your system. (DOT_PATH variable) | ||
2. Load the doxygen configuration file (doc/doxy-config) into the | ||
doxygen wizard. | ||
3. Start, output will be put in /doc/html. | ||
|
||
Generating doxygen output on Linux: | ||
|
||
1. Make sure the doc/doxy-config file points to the correct location of | ||
graphwiz's "dot" exectuable for your system. (DOT_PATH variable) | ||
2. Run "doxygen doxy-config", output will be put in /doc/html | ||
|
||
------------------------------------------------------------------------- | ||
|
||
How to document classes: | ||
|
||
/** | ||
* @class ClassName | ||
* | ||
* @brief Enter a brief description of the | ||
* class, the first sentence | ||
* will be included in the brief description. | ||
* | ||
* Anything after the first sentence, and included | ||
* in the "@class" block will be part of the | ||
* detailed description, available from | ||
* the doxygen class file. | ||
* | ||
* The "@brief" description will be used to | ||
* describe the class on the class list. | ||
* | ||
*/ | ||
|
||
How to document functions: | ||
|
||
/** | ||
* | ||
* @brief Description of the function. Will appear before function | ||
* definition. Don't really need "@brief" as JAVADOC_AUTOBRIEF is | ||
* turned on. | ||
* | ||
* @param Defailed parameter text, if needed. Will appear in | ||
* separate parameter secion. | ||
* | ||
* @retval Detailed text about return value, if needed. | ||
* | ||
*/ | ||
|
||
Other Notes: | ||
|
||
1. Sometimes the html directory has to be cleared out and the entire | ||
doxygen output regenerated if the graphics get screwed up. | ||
|
||
2. Need "dot" from graphwiz. In some doxygen implementations it is | ||
included. | ||
|
||
3. Can generate called/call graphs. To enable or disable call graphs | ||
for each function, toggle CALL_GRAPH and CALLER_GRAPH variables in the | ||
config file. To enable for specific functions when CALL_GRAPH is set | ||
to no, use the @callgraph/@callergraph commands. | ||
|
||
4. @sa "See also" alias. | ||
@note "Note" alias | ||
@exception | ||
@class | ||
@param | ||
@return | ||
@retval | ||
|
||
ProtoGraph::~Vertice has an example of function text and a @note. | ||
|
||
5. Can turn off documentation of inherited functions and properties. | ||
|
||
8. Modify INPUT in config file to add additional code/directories, e.g. | ||
|
||
INPUT = ../common | ||
|
||
#Add protolib to the doxygen output | ||
#INPUT += ../../protolib/common | ||
|
||
#To add files | ||
#INPUT += ../../protolib/common/protoApp.h ../../protolib/common/protoApp.cpp |
Oops, something went wrong.