|
NETWORK ATTACKS FRAMEWORK
1.0.0
A NETwork Attacks framework. Making network attacks impact evaluation easier!
|
#include <NA_defs_aodv.h>
Public Member Functions | |
| AODV_msg (const char *name=NULL) | |
| ~AODV_msg () | |
| AODV_msg (const AODV_msg &m) | |
| AODV_msg & | operator= (const AODV_msg &m) |
| virtual AODV_msg * | dup () const |
| uint8_t | getType () const |
| uint8_t | getTtl () const |
| bool | getPrevFix () const |
| AODV_ext * | addExtension (int, int, char *) |
| void | clearExtension () |
| AODV_ext * | getExtension (int i) |
| AODV_ext & | getExtensionRef (int i) |
| AODV_ext * | getFirstExtension () |
| AODV_ext * | getNexExtension (AODV_ext *) |
| int | getNumExtension () |
Public Attributes | |
| u_int8_t | type |
| uint8_t | ttl |
| bool | prevFix |
Private Member Functions | |
| void | copy (const AODV_msg &other) |
Private Attributes | |
| AODV_ext * | extension |
| int | extensionsize |
Definition at line 216 of file NA_defs_aodv.h.
| AODV_msg::AODV_msg | ( | const char * | name = NULL | ) | [inline, explicit] |
Definition at line 37 of file NA_aodv_msg_struct.h.
: cPacket(name) {extensionsize=0; extension=NULL;}
Definition at line 76 of file NA_aodv_msg_struct.cc.
{
clearExtension();
}
| AODV_msg::AODV_msg | ( | const AODV_msg & | m | ) |
Definition at line 23 of file NA_aodv_msg_struct.cc.
: cPacket(m)
{
copy(m);
}
| AODV_ext * AODV_msg::addExtension | ( | int | type, |
| int | len, | ||
| char * | data | ||
| ) |
Definition at line 81 of file NA_aodv_msg_struct.cc.
{
AODV_ext* extension_aux;
if (len<0)
{
return NULL;
}
extension_aux = new AODV_ext [extensionsize+1];
for (int i=0; i < extensionsize; i++)
{
extension_aux[i].type = extension[i].type;
extension_aux[i].length = extension[i].length;
extension_aux[i].pointer = extension[i].pointer;
}
if (extensionsize>0)
delete [] extension;
extension = extension_aux;
extensionsize++;
extension[extensionsize-1].type = type;
extension[extensionsize-1].length = len;
extension[extensionsize-1].pointer = new char[len];
memcpy(extension_aux[extensionsize-1].pointer, data, len);
setBitLength(getBitLength()+((AODV_EXT_HDR_SIZE+len) *8));
return & extension[extensionsize-1];
}
| void AODV_msg::clearExtension | ( | ) |
Definition at line 61 of file NA_aodv_msg_struct.cc.
{
if (extensionsize==0)
{
return;
}
for (int i=0; i < extensionsize; i++)
{
delete extension[i].pointer;
}
delete [] extension;
extensionsize = 0;
extension = NULL;
}
| void AODV_msg::copy | ( | const AODV_msg & | other | ) | [private] |
Definition at line 40 of file NA_aodv_msg_struct.cc.
{
type = m.type;
ttl = m.ttl;
prevFix = m.prevFix;
extensionsize = m.extensionsize;
if (extensionsize==0)
{
extension = NULL;
return;
}
extension = new AODV_ext [extensionsize];
for (int i=0; i < extensionsize; i++)
{
extension[i].type = m.extension[i].type;
extension[i].length = m.extension[i].length;
extension[i].pointer = new char[extension[i].length];
memcpy(extension[i].pointer, m.extension[i].pointer, extension[i].length);
}
}
| virtual AODV_msg* AODV_msg::dup | ( | ) | const [inline, virtual] |
| AODV_ext* AODV_msg::getExtension | ( | int | i | ) | [inline] |
Definition at line 47 of file NA_aodv_msg_struct.h.
{return &extension[i];}
| AODV_ext& AODV_msg::getExtensionRef | ( | int | i | ) | [inline] |
Definition at line 48 of file NA_aodv_msg_struct.h.
{return extension[i];}
| AODV_ext* AODV_msg::getFirstExtension | ( | ) | [inline] |
Definition at line 49 of file NA_aodv_msg_struct.h.
{return extension;}
| AODV_ext * AODV_msg::getNexExtension | ( | AODV_ext * | aodv_ext | ) |
Definition at line 108 of file NA_aodv_msg_struct.cc.
{
if ((&extension[extensionsize-1]>aodv_ext+1) && (aodv_ext >= extension))
return aodv_ext+1;
else
return NULL;
}
| int AODV_msg::getNumExtension | ( | ) | [inline] |
Definition at line 51 of file NA_aodv_msg_struct.h.
{return extensionsize;}
| bool AODV_msg::getPrevFix | ( | ) | const [inline] |
Definition at line 44 of file NA_aodv_msg_struct.h.
{return prevFix;}
| uint8_t AODV_msg::getTtl | ( | ) | const [inline] |
Definition at line 43 of file NA_aodv_msg_struct.h.
{return ttl;}
| uint8_t AODV_msg::getType | ( | ) | const [inline] |
Definition at line 42 of file NA_aodv_msg_struct.h.
{return type;}
Definition at line 29 of file NA_aodv_msg_struct.cc.
{
if (this==&m) return *this;
clearExtension();
cPacket::operator=(m);
copy(m);
return *this;
}
AODV_ext* AODV_msg::extension [private] |
Reimplemented in RREP.
Definition at line 31 of file NA_aodv_msg_struct.h.
int AODV_msg::extensionsize [private] |
Definition at line 32 of file NA_aodv_msg_struct.h.
| bool AODV_msg::prevFix |
Definition at line 29 of file NA_aodv_msg_struct.h.
| uint8_t AODV_msg::ttl |
Definition at line 28 of file NA_aodv_msg_struct.h.
| u_int8_t AODV_msg::type |