/home/aaron/olsrd-current/olsrd/lib/obamp/src/obamp.h File Reference

#include "common/list.h"
#include "plugin.h"
#include "parser.h"
Include dependency graph for obamp.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ObampNode
struct  ObampSniffingIf
struct  ObampNodeState
struct  OBAMP_data_message4
struct  OBAMP_data_message6
struct  OBAMP_tree_destroy
struct  OBAMP_tree_create
struct  OBAMP_tree_link_req
struct  OBAMP_tree_link_ack
struct  OBAMP_hello
struct  OBAMP_alive

Defines

#define MESSAGE_TYPE   133
#define PARSER_TYPE   MESSAGE_TYPE
#define EMISSION_INTERVAL   10
#define EMISSION_JITTER   25
#define OBAMP_VALID_TIME   1800
#define PLUGIN_NAME   "OLSRD OBAMP plugin"
#define PLUGIN_NAME_SHORT   "OLSRD OBAMP"
#define PLUGIN_VERSION   "1.0.0 (" __DATE__ " " __TIME__ ")"
#define PLUGIN_COPYRIGHT   " (C) Ninux.org"
#define PLUGIN_AUTHOR   " Saverio Proto (zioproto@gmail.com)"
#define MOD_DESC   PLUGIN_NAME " " PLUGIN_VERSION "\n" PLUGIN_COPYRIGHT "\n" PLUGIN_AUTHOR
#define PLUGIN_INTERFACE_VERSION   5
#define PLUGIN_DESCR   "OBAMP"
#define OBAMP_JITTER   25
#define OBAMP_ALIVE_EIVAL   3
#define OBAMP_MESH_CREATE_IVAL   1
#define OBAMP_TREE_CREATE_IVAL   2
#define TREE_HEARTBEAT   5
#define OBAMP_OUTER_TREE_CREATE_IVAL   6
#define _MESH_LOCK_   3
#define _Texpire_   18
#define _Texpire_timer_   1
#define _TREE_REQUEST_DELAY_   5
#define OBAMP_DATA   0
#define OBAMP_HELLO   1
#define OBAMP_TREECREATE   2
#define OBAMP_ALIVE   3
#define OBAMP_TREE_REQ   4
#define OBAMP_TREE_ACK   5
#define OBAMP_TREE_DESTROY   6
#define OBAMP_SIGNALLING_PORT   6226

Functions

union olsr_ip_addrMainAddressOf (union olsr_ip_addr *ip)
void ObampSignalling (int sd, void *x, unsigned int y)
void EncapFlowInObamp (int sd, void *x, unsigned int y)
int AddObampSniffingIf (const char *ifName, void *data, set_plugin_parameter_addon addon)
int InitOBAMP (void)
int PreInitOBAMP (void)
void CloseOBAMP (void)
void olsr_obamp_gen (void *packet, int len)
void obamp_hello_gen (void *para)
void obamp_alive_gen (void *para)
void purge_nodes (void *para)
void mesh_create (void *para)
void tree_create (void *para)
void outer_tree_create (void *para)
void unsolicited_tree_destroy (void *para)
int addObampNode4 (struct in_addr *ipv4, u_int8_t status)
void olsr_parser (struct olsr_message *, struct interface *, union olsr_ip_addr *, enum duplicate_status)

Variables

struct ObampNodeStatemyState
struct OBAMP_data_message4 __packed__

Define Documentation

#define _MESH_LOCK_   3

Definition at line 75 of file obamp.h.

Referenced by manage_hello().

#define _Texpire_   18

Definition at line 77 of file obamp.h.

Referenced by addObampNode4(), and init_overlay_neighbor().

#define _Texpire_timer_   1

Definition at line 78 of file obamp.h.

Referenced by InitOBAMP().

#define _TREE_REQUEST_DELAY_   5

Definition at line 80 of file obamp.h.

Referenced by tree_link_req().

#define EMISSION_INTERVAL   10

Definition at line 54 of file obamp.h.

#define EMISSION_JITTER   25

Definition at line 55 of file obamp.h.

#define MESSAGE_TYPE   133

Definition at line 52 of file obamp.h.

#define MOD_DESC   PLUGIN_NAME " " PLUGIN_VERSION "\n" PLUGIN_COPYRIGHT "\n" PLUGIN_AUTHOR

Definition at line 64 of file obamp.h.

#define OBAMP_ALIVE   3

Definition at line 87 of file obamp.h.

Referenced by obamp_alive_gen(), and PacketReceivedFromOLSR().

#define OBAMP_ALIVE_EIVAL   3

Definition at line 70 of file obamp.h.

Referenced by InitOBAMP().

#define OBAMP_DATA   0

Definition at line 84 of file obamp.h.

Referenced by ObampSignalling(), and SendOBAMPData().

#define OBAMP_HELLO   1

Definition at line 85 of file obamp.h.

Referenced by obamp_hello(), and ObampSignalling().

#define OBAMP_JITTER   25

Definition at line 69 of file obamp.h.

Referenced by InitOBAMP().

#define OBAMP_MESH_CREATE_IVAL   1

Definition at line 71 of file obamp.h.

Referenced by InitOBAMP().

#define OBAMP_OUTER_TREE_CREATE_IVAL   6

Definition at line 74 of file obamp.h.

Referenced by InitOBAMP().

#define OBAMP_SIGNALLING_PORT   6226
#define OBAMP_TREE_ACK   5

Definition at line 89 of file obamp.h.

Referenced by ObampSignalling(), and tree_link_ack().

#define OBAMP_TREE_CREATE_IVAL   2

Definition at line 72 of file obamp.h.

Referenced by InitOBAMP().

#define OBAMP_TREE_DESTROY   6

Definition at line 90 of file obamp.h.

Referenced by ObampSignalling(), and send_destroy_tree_link().

#define OBAMP_TREE_REQ   4

Definition at line 88 of file obamp.h.

Referenced by ObampSignalling(), and tree_link_req().

#define OBAMP_TREECREATE   2

Definition at line 86 of file obamp.h.

Referenced by manage_tree_create(), ObampSignalling(), and tree_create_gen().

#define OBAMP_VALID_TIME   1800

Definition at line 56 of file obamp.h.

Referenced by olsr_obamp_gen().

#define PARSER_TYPE   MESSAGE_TYPE

Definition at line 53 of file obamp.h.

#define PLUGIN_AUTHOR   " Saverio Proto (zioproto@gmail.com)"

Definition at line 63 of file obamp.h.

#define PLUGIN_COPYRIGHT   " (C) Ninux.org"

Definition at line 62 of file obamp.h.

#define PLUGIN_DESCR   "OBAMP"

Definition at line 67 of file obamp.h.

#define PLUGIN_INTERFACE_VERSION   5

Definition at line 65 of file obamp.h.

#define PLUGIN_NAME   "OLSRD OBAMP plugin"

Definition at line 59 of file obamp.h.

#define PLUGIN_NAME_SHORT   "OLSRD OBAMP"

Definition at line 60 of file obamp.h.

#define PLUGIN_VERSION   "1.0.0 (" __DATE__ " " __TIME__ ")"

Definition at line 61 of file obamp.h.

#define TREE_HEARTBEAT   5

Definition at line 73 of file obamp.h.

Referenced by activate_tree_link(), manage_tree_create(), and outer_tree_create().


Function Documentation

int addObampNode4 ( struct in_addr *  ipv4,
u_int8_t  status 
)
int AddObampSniffingIf ( const char *  ifName,
void *  data,
set_plugin_parameter_addon  addon 
)
void CloseOBAMP ( void   ) 

Definition at line 1707 of file obamp.c.

Referenced by olsr_plugin_exit().

void EncapFlowInObamp ( int  sd,
void *  x,
unsigned int  y 
)
int InitOBAMP ( void   ) 
union olsr_ip_addr* MainAddressOf ( union olsr_ip_addr ip  )  [write]

Definition at line 94 of file Bmf.c.

References olsr_lookup_main_addr_by_alias().

Referenced by BmfPacketCaptured(), and FindNeighbors().

Here is the call graph for this function:

void mesh_create ( void *  para  ) 
void obamp_alive_gen ( void *  para  ) 
void obamp_hello_gen ( void *  para  ) 
void ObampSignalling ( int  sd,
void *  x,
unsigned int  y 
)
void olsr_obamp_gen ( void *  packet,
int  len 
)
void olsr_parser ( struct olsr_message ,
struct interface ,
union olsr_ip_addr ,
enum  duplicate_status 
)
void outer_tree_create ( void *  para  ) 
int PreInitOBAMP ( void   ) 

Definition at line 1579 of file obamp.c.

References list_init_head(), and ListOfObampSniffingIf.

Referenced by obamp_init().

Here is the call graph for this function:

void purge_nodes ( void *  para  ) 
void tree_create ( void *  para  ) 
void unsolicited_tree_destroy ( void *  para  ) 

Definition at line 566 of file obamp.c.

References ObampNode::isTree, ObampNode::neighbor_ip_addr, OLSR_FOR_ALL_OBAMPNODE_ENTRIES, send_destroy_tree_link(), and olsr_ip_addr::v4.

Referenced by InitOBAMP().

Here is the call graph for this function:


Variable Documentation

Definition at line 81 of file obamp.c.

Generated on Wed Jun 19 06:00:04 2013 for olsrd by  doxygen 1.6.3