Moved packet display options to olsr_cnf
authorSven-Ola Tuecke <sven-ola@gmx.de>
Sun, 18 Jan 2009 08:39:51 +0000 (09:39 +0100)
committerSven-Ola Tuecke <sven-ola@gmx.de>
Sun, 18 Jan 2009 08:39:51 +0000 (09:39 +0100)
gui/win32/win32verify.c
src/net_olsr.c
src/net_olsr.h
src/olsr_cfg.c
src/olsr_cfg.h
src/parser.c
src/parser.h

index ef5931a..96fc03f 100644 (file)
@@ -46,7 +46,7 @@
 #include "olsr_cfg.h"
 #include "olsr_cfg_gen.h"
 
-bool disp_pack_out = false;
+/************ GLOBALS(begin) ***********/
 
 #ifndef NODEBUG
 FILE *debug_handle = NULL;
@@ -74,9 +74,7 @@ char *olsr_strndup(const char *s, size_t n)
   return ret;
 }
 
-void parser_set_disp_pack_in(bool val __attribute__ ((unused)))
-{
-}
+/************ GLOBALS(end) ***********/
 
 static int write_cnf(struct olsr_config *cnf, const char *fname)
 {
index feca9dd..76f4c6c 100644 (file)
@@ -52,8 +52,6 @@
 #include <limits.h>
 #include <errno.h>
 
-bool disp_pack_out = false;
-
 static void olsr_add_invalid_address(const union olsr_ip_addr *);
 
 #ifdef WIN32
@@ -360,7 +358,7 @@ net_output(struct interface *ifp)
    * if the -dispout option was given
    * we print the content of the packets
    */
-  if (disp_pack_out) {
+  if (olsr_cnf->disp_packets_out) {
     print_olsr_serialized_packet(stdout,
                                 (union olsr_packet *)ifp->netbuf.buff,
                                 ifp->netbuf.pending, &ifp->ip_addr);
index 75c4114..d4e9273 100644 (file)
@@ -71,10 +71,6 @@ AVLNODE2STRUCT(filter_tree2filter, struct filter_entry, filter_node);
     filter = filter_tree2filter(filter_tree_node);
 #define OLSR_FOR_ALL_FILTERS_END(filter) }}
 
-extern bool disp_pack_out;
-
-static INLINE void net_set_disp_pack_out(bool val) { disp_pack_out = val; }
-
 void init_net(void);
 
 void deinit_netfilters(void);
index b314532..7e42f5e 100644 (file)
@@ -814,12 +814,12 @@ parse_cfg_option(const int optint, char *argstr, const int line, struct olsr_con
     PARSER_DEBUG_PRINTF("del_gws set to %d\n", rcfg->del_gws);
     break;
   case 'X':                    /* dispin */
-    PARSER_DEBUG_PRINTF("Calling parser_set_disp_pack_in(true)\n");
-    parser_set_disp_pack_in(true);
+    rcfg->disp_packets_in = true;
+    PARSER_DEBUG_PRINTF("disp_packets_in set to %d\n", rcfg->disp_packets_in);
     break;
   case 'O':                    /* dispout */
-    PARSER_DEBUG_PRINTF("Calling net_set_disp_pack_out(true)\n");
-    net_set_disp_pack_out(true);
+    rcfg->disp_packets_out = true;
+    PARSER_DEBUG_PRINTF("disp_packets_out set to %d\n", rcfg->disp_packets_out);
     break;
   case 'i':                    /* iface */
     /* Ignored */
@@ -1462,6 +1462,8 @@ olsr_get_default_cfg(void)
   cfg->clear_screen = DEF_CLEAR_SCREEN;
   assert(cfg->del_gws == false);
   assert(cfg->fixed_origaddr == false);
+  assert(cfg->disp_packets_in == false);
+  assert(cfg->disp_packets_out == false);
 
   cfg->tos = DEF_TOS;
   assert(cfg->rtproto == 0);
index 1c9d38d..9c0bb15 100644 (file)
@@ -179,6 +179,8 @@ struct olsr_config {
   unsigned char clear_screen:1;        /* Clear screen during debug output? */
   unsigned char del_gws:1;             /* Delete InternetGWs at startup? */
   unsigned char fixed_origaddr:1;      /* Use a fixed originator addr == Node ID? */
+  unsigned char disp_packets_in:1;     /* Display incoming packets? */
+  unsigned char disp_packets_out:1;    /* Display outgoing packets? */
 
   uint16_t tos;                        /* IP Type of Service Byte */
   uint8_t rtproto;                     /* Policy routing proto, 0 == operating sys default */
@@ -193,7 +195,7 @@ struct olsr_config {
   bool log_target_stderr;              /* Log output to stderr? */
   char *log_target_file;               /* Filename for log output file, NULL if unused */
   bool log_target_syslog;              /* Log output also to syslog? */
-
+  
   struct plugin_entry *plugins;        /* List of plugins to load with plparams */
   struct list_node hna_entries;        /* List of manually configured HNA entries */
   struct ip_acl ipc_nets;              /* List of allowed IPC peer IPs */
index 8618d7e..1ef7f97 100644 (file)
@@ -77,13 +77,6 @@ static struct parse_function_entry *parse_functions;
 static struct preprocessor_function_entry *preprocessor_functions;
 static struct packetparser_function_entry *packetparser_functions;
 
-static bool disp_pack_in = false;
-
-void parser_set_disp_pack_in(bool val)
-{
-  disp_pack_in = val;
-}
-
 /**
  *Initialize the parser.
  *
@@ -278,7 +271,7 @@ static void parse_packet(struct olsr *olsr, int size, struct interface *in_if, u
   //printf("Message from %s\n\n", olsr_ip_to_string(&buf, from_addr));
 
   /* Display packet */
-  if (disp_pack_in) {
+  if (olsr_cnf->disp_packets_in) {
     print_olsr_serialized_packet(stdout, (union olsr_packet *)olsr, size, from_addr);
   }
   msgsize = ntohs(olsr_cnf->ip_version == AF_INET ? m->v4.olsr_msgsize : m->v6.olsr_msgsize);
index ebf0956..c811f32 100644 (file)
@@ -73,9 +73,6 @@ struct packetparser_function_entry {
 };
 
 void
-parser_set_disp_pack_in(bool);
-
-void
 olsr_init_parser(void);
 
 void