Win32: compile fix. Note: SEVERITY_ERROR also in windows.h
authorSven-Ola Tuecke <sven-ola@gmx.de>
Thu, 22 Jan 2009 11:22:07 +0000 (12:22 +0100)
committerSven-Ola Tuecke <sven-ola@gmx.de>
Thu, 22 Jan 2009 11:22:07 +0000 (12:22 +0100)
13 files changed:
gui/win32/Main/Frontend.cpp
gui/win32/Main/MyDialog2.cpp
gui/win32/Main/MyDialog2.h
gui/win32/Main/StdAfx.h
src/common/autobuf.h
src/config/config-verify.c
src/config/olsr_cfg_lib.c [new file with mode: 0644]
src/config/olsr_cfg_lib.h [new file with mode: 0644]
src/log.h
src/olsr_cfg.c
src/olsr_cfg.h
src/olsr_cfg_data.h
src/olsr_logging.h

index 9e5cc1d..843024d 100644 (file)
@@ -285,6 +285,7 @@ int CFrontendApp::RedirectStdHandles(void)
        // stdout->_file = 1;
        stderr->_file = 2;
 
+       // Initializes stdio redirection in DLL
        win32_stdio_hack((unsigned int)OutWrite);
 
        return 0;
index 986acd7..e9a59f4 100644 (file)
@@ -230,21 +230,21 @@ void MyDialog2::OnEtxCheck()
 
 int MyDialog2::OpenConfigFile(CString PathName)
 {
-       struct ip_prefix_list *Hna;
+       struct ip_prefix_entry *Hna;
        struct olsr_if_config *Int, *PrevInt;
        struct olsr_msg_params *MsgPar;
        int NumInt = m_InterfaceList.GetItemCount();
        int i;
        CString IntName;
        CString Conv;
+    char cfg_message[FILENAME_MAX + 256] = { 0 };
 
        if (Conf != NULL)
-               cfgparser_olsrd_free_cnf(Conf);
+               olsr_free_cfg(Conf);
 
-       Conf = cfgparser_olsrd_parse_cnf(PathName);
-
-       if (Conf == NULL)
+       if (CFG_ERROR == olsr_parse_cfg(0, NULL, PathName, cfg_message, &Conf)) {
                return -1;
+       }
 
        for (i = 0; i < NumInt; i++)
                m_InterfaceList.SetCheck(i, FALSE);
@@ -305,6 +305,20 @@ int MyDialog2::OpenConfigFile(CString PathName)
 
        m_TcRed.SetCurSel(Conf->tc_redundancy);
 
+#if _DEBUG
+       m_LqAlgo.SetCurSel(m_LqAlgo.FindStringExact(-1, "etx_ff"));
+
+       m_HystCheck.SetCheck(false);
+
+       Conv.Format("%.2f", 0.5);
+       m_HystScaling.SetWindowText(Conv);
+
+       Conv.Format("%.2f", 0.8);
+       m_HystThresholdHigh.SetWindowText(Conv);
+
+       Conv.Format("%.2f", 0.3);
+       m_HystThresholdLow.SetWindowText(Conv);
+#else
        m_LqAlgo.SetCurSel(m_LqAlgo.FindStringExact(-1, Conf->lq_algorithm));
 
        m_HystCheck.SetCheck(Conf->use_hysteresis);
@@ -317,29 +331,49 @@ int MyDialog2::OpenConfigFile(CString PathName)
 
        Conv.Format("%.2f", Conf->hysteresis_param.thr_low);
        m_HystThresholdLow.SetWindowText(Conv);
+#endif
 
        OnHystCheck();
 
        m_FishEyeCheck.SetCheck(Conf->lq_fish > 0);
 
+#if _DEBUG
+       m_EtxCheck.SetCheck(2 > 0);
+#else
        m_EtxCheck.SetCheck(Conf->lq_level > 0);
+#endif
 
 #if 0
        Conv.Format("%d", Conf->lq_wsize);
        m_EtxWindowSize.SetWindowText(Conv);
 #endif
 
+#if _DEBUG
+       m_EtxRadio1.SetCheck(2 == 1);
+       m_EtxRadio2.SetCheck(2 == 0 || 2 == 2);
+#else
        m_EtxRadio1.SetCheck(Conf->lq_level == 1);
        m_EtxRadio2.SetCheck(Conf->lq_level == 0 || Conf->lq_level == 2);
+#endif
 
        OnEtxCheckWorker();
 
        m_InternetCheck.SetCheck(FALSE);
 
-       for (Hna = Conf->hna_entries; Hna != NULL; Hna = Hna->next)
-               if (0 == Hna->net.prefix_len &&
-                       m_InternetCheck.IsWindowEnabled())
-               m_InternetCheck.SetCheck(TRUE);
+/*
+{
+  struct list_node *link_head_node, *link_node, *next_link_node;
+  link_head_node = &Conf->hna_entries;
+  for (link_node = link_head_node->next;
+    link_node != link_head_node; link_node = next_link_node) {
+    next_link_node = link_node->next;
+    Hna = list2ipprefix(link_node);
+*/
+    OLSR_FOR_ALL_IPPREFIX_ENTRIES(&Conf->hna_entries, Hna) {
+               if (0 == Hna->net.prefix_len && m_InternetCheck.IsWindowEnabled()) {
+                       m_InternetCheck.SetCheck(TRUE);
+               }
+    } OLSR_FOR_ALL_IPPREFIX_ENTRIES_END()
 
        PrevInt = NULL;
 
@@ -392,10 +426,12 @@ static struct olsr_if_config *AddInterface(struct olsr_config **Conf, CString Na
        ::lstrcpy(Int->name, Name);
 
        Int->config = NULL;
+#ifndef _DEBUG
        Int->configured = false;
+#endif
        Int->interf = NULL;
 
-       Int->cnf = cfgparser_get_default_if_config();
+       Int->cnf = olsr_get_default_if_options();
 
        Int->next = (*Conf)->if_configs;
        (*Conf)->if_configs = Int;
@@ -408,11 +444,9 @@ int MyDialog2::SaveConfigFile(CString PathName, int Real)
        struct olsr_if_config *Int, *PrevInt;
        struct olsr_msg_params *MsgPar;
        CString Conv;
-       struct ip_prefix_list *Hna, *NewHna, *PrevHna;
        int NumInt = m_InterfaceList.GetItemCount();
        int i;
        CString IntName, IntName2;
-       struct ip_prefix_list *IpcHost;
        union olsr_ip_addr Local;
 
        PrevInt = NULL;
@@ -512,36 +546,57 @@ int MyDialog2::SaveConfigFile(CString PathName, int Real)
        Conf->tc_redundancy = (unsigned char)m_TcRed.GetCurSel();
 
        i = m_LqAlgo.GetCurSel();
+#ifndef _DEBUG
        Conf->lq_algorithm = NULL;
+#endif
        if (0 <= i)
        {
                CString str;
                m_LqAlgo.GetLBText(i, str);
+#ifndef _DEBUG
                Conf->lq_algorithm = strdup((LPCTSTR)str);
+#endif
        }
 
        m_MprCov.GetWindowText(Conv);
        Conf->mpr_coverage = (unsigned char)atoi(Conv);
 
+#ifndef _DEBUG
        Conf->use_hysteresis = m_HystCheck.GetCheck() ? true : false;
+#endif
 
        m_HystScaling.GetWindowText(Conv);
+#ifndef _DEBUG
        Conf->hysteresis_param.scaling = (float)atof(Conv);
+#endif
 
        m_HystThresholdHigh.GetWindowText(Conv);
+#ifndef _DEBUG
        Conf->hysteresis_param.thr_high = (float)atof(Conv);
+#endif
 
        m_HystThresholdLow.GetWindowText(Conv);
+#ifndef _DEBUG
        Conf->hysteresis_param.thr_low = (float)atof(Conv);
+#endif
 
-       if (!m_EtxCheck.GetCheck())
+       if (!m_EtxCheck.GetCheck()) {
+#ifndef _DEBUG
                Conf->lq_level = 0;
+#endif
+       }
 
-       else if (m_EtxRadio1.GetCheck())
+       else if (m_EtxRadio1.GetCheck()) {
+#ifndef _DEBUG
                Conf->lq_level = 1;
+#endif
+       }
 
-       else
+       else {
+#ifndef _DEBUG
                Conf->lq_level = 2;
+#endif
+       }
 
        if (!m_FishEyeCheck.GetCheck())
                Conf->lq_fish = 0;
@@ -549,50 +604,23 @@ int MyDialog2::SaveConfigFile(CString PathName, int Real)
        else
                Conf->lq_fish = 1;
 
-       PrevHna = NULL;
-
-       // check for a default gateway HNA4 entry
-
-       for (Hna = Conf->hna_entries; Hna != NULL; Hna = Hna->next)
+       if (m_InternetCheck.GetCheck())
        {
-               if (0 == Hna->net.prefix_len)
-                       break;
-
-               PrevHna = Hna;
+               // add default gateway HNA entry
+               union olsr_ip_addr ip;
+               uint8_t prefix = 0;
+               memset(&ip, 0, sizeof(ip));
+               ip_prefix_list_add(&Conf->hna_entries, &ip, prefix);
        }
-
-       // add default gateway HNA entry
-
-       if (m_InternetCheck.GetCheck() && Hna == NULL)
+       else
        {
-               NewHna = (struct ip_prefix_list * )
-                       win32_olsrd_malloc(sizeof (struct ip_prefix_list));
-
-               if (NewHna == NULL)
-               {
-                       AfxMessageBox("Cannot allocate memory.");
-                       return -1;
+               // remove default gateway HNA entry
+               union olsr_ip_addr ip;
+               uint8_t prefix = 0;
+               memset(&ip, 0, sizeof(ip));
+               while (ip_prefix_list_remove(&Conf->hna_entries, &ip, prefix, Conf->ip_version)) {
                }
-
-               memset(NewHna, 0, sizeof (struct ip_prefix_list));
-
-               NewHna->next = Conf->hna_entries;
-               Conf->hna_entries = NewHna;
-       }
-
-       // remove default gateway HNA4 entry
-
-       if (!m_InternetCheck.GetCheck() && Hna != NULL)
-       {
-               if (PrevHna == NULL)
-                       Conf->hna_entries = Hna->next;
-
-               else
-                       PrevHna->next = Hna->next;
-
-               win32_olsrd_free(Hna);
        }
-
        if (AF_INET == Conf->ip_version)
        {
                Local.v4.s_addr = ::inet_addr("127.0.0.1");
@@ -603,27 +631,12 @@ int MyDialog2::SaveConfigFile(CString PathName, int Real)
                Local.v6.u.Byte[15] = 1;
        }
 
-       for (IpcHost = Conf->ipc_nets; IpcHost != NULL; IpcHost = IpcHost->next)
-               if (0 == memcmp(&IpcHost->net.prefix, &Local, Conf->ipsize))
-                       break;
-
-       if (IpcHost == NULL && Real == 0)
-       {
-               IpcHost = (struct ip_prefix_list *)
-                       win32_olsrd_malloc(sizeof (struct ip_prefix_list));
-
-               if (IpcHost == NULL)
-               {
-                       AfxMessageBox("Cannot allocate memory.");
-                       return -1;
-               }
-
-               IpcHost->net.prefix = Local;
-               IpcHost->net.prefix_len = (uint8_t)Conf->ipsize;
-
-               IpcHost->next = Conf->ipc_nets;
-               Conf->ipc_nets = IpcHost;
-
+       if (Real == 0 && !ip_acl_acceptable(&Conf->ipc_nets, &Local, Conf->ip_version)) {
+        ip_acl_add(
+                       &Conf->ipc_nets, 
+                       &Local, 
+                       8 * Conf->ipsize, 
+                       false);
                Conf->ipc_connections++;
        }
 
index 01c38d7..14cc7b2 100644 (file)
@@ -49,7 +49,9 @@
 
 #define MAKELIB
 #define OLSR_PLUGIN
-#include <cfgparser/olsrd_conf.h>
+#include <olsr_cfg.h>
+#include <olsr_ip_prefix_list.h>
+#include <config/olsr_cfg_lib.h>
 #include "afxwin.h"
 
 class MyDialog2 : public CDialog
index f75d01a..409f959 100644 (file)
 #include <winsock2.h>
 #include <iphlpapi.h>
 
+/* compiler-specific stuff */
+#ifndef __GNUC__
+#define __attribute__(x)
+#endif
+
+#undef EXPORT
+
 //{{AFX_INSERT_LOCATION}}
 // Microsoft Visual C++ fügt unmittelbar vor der vorhergehenden Zeile zusätzliche Deklarationen ein.
 
index 0f15d0a..02c2668 100644 (file)
 #include <stdarg.h>
 #include <time.h>
 
-/* compiler-specific stuff */
-#ifndef __GNUC__
-#define __attribute__(x)
-#endif
-
 #define AUTOBUFCHUNK   4096
 struct autobuf {
     int size;
index c9d6dae..3614081 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon(olsrd)
  * Copyright (c) 2004-2009, the olsr.org team - see HISTORY file
@@ -53,19 +54,22 @@ FILE *debug_handle = NULL;
 struct olsr_config *olsr_cnf;
 #endif
 
-void *olsr_malloc(size_t size, const char *id __attribute__ ((unused)))
+void *
+olsr_malloc(size_t size, const char *id __attribute__ ((unused)))
 {
   return calloc(1, size);
 }
 
-char *olsr_strdup(const char *s)
+char *
+olsr_strdup(const char *s)
 {
   char *ret = olsr_malloc(1 + strlen(s), "olsr_strdup");
   strcpy(ret, s);
   return ret;
 }
 
-char *olsr_strndup(const char *s, size_t n)
+char *
+olsr_strndup(const char *s, size_t n)
 {
   size_t len = n < strlen(s) ? n : strlen(s);
   char *ret = olsr_malloc(1 + len, "olsr_strndup");
@@ -76,7 +80,8 @@ char *olsr_strndup(const char *s, size_t n)
 
 /************ GLOBALS(end) ***********/
 
-int main(int argc, char *argv[])
+int
+main(int argc, char *argv[])
 {
   int i, ret = EXIT_SUCCESS;
 #ifndef NODEBUG
@@ -89,11 +94,18 @@ int main(int argc, char *argv[])
     char cfg_msg[FILENAME_MAX + 256] = { 0 };
     olsr_parse_cfg_result res = olsr_parse_cfg(0, NULL, argv[i], cfg_msg, &cfg_tmp);
 
-    switch(res) {
-      case CFG_ERROR: sres = "ERROR"; break;
-      case CFG_WARN: sres = "WARN"; break;
-      case CFG_EXIT: sres = "EXIT"; break;
-      default: sres = "OK";
+    switch (res) {
+    case CFG_ERROR:
+      sres = "ERROR";
+      break;
+    case CFG_WARN:
+      sres = "WARN";
+      break;
+    case CFG_EXIT:
+      sres = "EXIT";
+      break;
+    default:
+      sres = "OK";
     }
 
     fprintf(stderr, "Reading %s returns %s\n", argv[i], sres);
@@ -108,8 +120,7 @@ int main(int argc, char *argv[])
       fputs(abuf.buf, stdout);
       abuf_free(&abuf);
 
-    }
-    else {
+    } else {
       fprintf(stderr, "Error message: %s\n", cfg_msg);
       ret = EXIT_FAILURE;
     }
diff --git a/src/config/olsr_cfg_lib.c b/src/config/olsr_cfg_lib.c
new file mode 100644 (file)
index 0000000..db1dbc5
--- /dev/null
@@ -0,0 +1,115 @@
+
+/*
+ * The olsr.org Optimized Link-State Routing daemon(olsrd)
+ * Copyright (c) 2004-2009, the olsr.org team - see HISTORY file
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ *   notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
+ *   distribution.
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
+ *   from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * Visit http://www.olsr.org for more information.
+ *
+ * If you find this software useful feel free to make a donation
+ * to the project. For more information see the website or contact
+ * the copyright holders.
+ *
+ */
+
+#include "olsr_cfg_lib.h"
+
+int
+cfgparser_olsrd_write_cnf(const struct olsr_config *cnf, const char *fname)
+{
+  struct autobuf abuf;
+  FILE *fd = fopen(fname, "w");
+  if (fd == NULL) {
+    fprintf(stderr, "Could not open file %s for writing\n%s\n", fname, strerror(errno));
+    return -1;
+  }
+  printf("Writing config to file \"%s\".... ", fname);
+  abuf_init(&abuf, 0);
+  cfgparser_olsrd_write_cnf_buf(&abuf, cnf, false);
+  fputs(abuf.buf, fd);
+  abuf_free(&abuf);
+  fclose(fd);
+  printf("DONE\n");
+  return 1;
+}
+
+#ifdef WIN32
+
+struct ioinfo {
+  unsigned int handle;
+  unsigned char attr;
+  char buff;
+  int flag;
+  CRITICAL_SECTION lock;
+};
+
+void
+win32_stdio_hack(unsigned int handle)
+{
+  HMODULE lib;
+  struct ioinfo **info;
+
+  lib = LoadLibrary("msvcrt.dll");
+
+  info = (struct ioinfo **)GetProcAddress(lib, "__pioinfo");
+
+  // (*info)[1].handle = handle;
+  // (*info)[1].attr = 0x89; // FOPEN | FTEXT | FPIPE;
+
+  (*info)[2].handle = handle;
+  (*info)[2].attr = 0x89;
+
+  // stdout->_file = 1;
+  stderr->_file = 2;
+
+  // setbuf(stdout, NULL);
+  setbuf(stderr, NULL);
+}
+
+void *
+win32_olsrd_malloc(size_t size)
+{
+  return malloc(size);
+}
+
+void
+win32_olsrd_free(void *ptr)
+{
+  free(ptr);
+}
+
+#endif
+
+/*
+ * Local Variables:
+ * c-basic-offset: 2
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/src/config/olsr_cfg_lib.h b/src/config/olsr_cfg_lib.h
new file mode 100644 (file)
index 0000000..129e2e2
--- /dev/null
@@ -0,0 +1,67 @@
+
+/*
+ * The olsr.org Optimized Link-State Routing daemon(olsrd)
+ * Copyright (c) 2004-2009, the olsr.org team - see HISTORY file
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ *   notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
+ *   distribution.
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
+ *   from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * Visit http://www.olsr.org for more information.
+ *
+ * If you find this software useful feel free to make a donation
+ * to the project. For more information see the website or contact
+ * the copyright holders.
+ *
+ */
+
+#ifndef _OLSR_CFG_LIB_H
+#define _OLSR_CFG_LIB_H
+
+#if defined __cplusplus
+extern "C" {
+#endif
+
+  int cfgparser_olsrd_write_cnf(const struct olsr_config *cnf, const char *fname);
+
+#ifdef WIN32
+  void win32_stdio_hack(unsigned int);
+  void *win32_olsrd_malloc(size_t size);
+  void win32_olsrd_free(void *ptr);
+#endif
+
+#if defined __cplusplus
+}
+#endif
+#endif                                 /* _OLSR_CFG_LIB_H */
+
+/*
+ * Local Variables:
+ * c-basic-offset: 2
+ * indent-tabs-mode: nil
+ * End:
+ */
index e59b6d0..318349c 100644 (file)
--- a/src/log.h
+++ b/src/log.h
@@ -52,7 +52,7 @@
 
 #define OLSR_LOG_INFO            SEVERITY_INFO
 #define OLSR_LOG_WARN            SEVERITY_WARN
-#define OLSR_LOG_ERR             SEVERITY_ERROR
+#define OLSR_LOG_ERR             SEVERITY_ERR
 
 void
 olsr_openlog(const char *ident);
index 2f1e4fb..c2f7b84 100644 (file)
@@ -259,8 +259,8 @@ parse_tok(const char *s, const char **snext)
 /*
  * Returns default interface options
  */
-static struct olsr_if_options *
-get_default_olsr_if_options(void)
+struct olsr_if_options *
+olsr_get_default_if_options(void)
 {
   struct olsr_if_options *new_io = olsr_malloc(sizeof(*new_io), "default_if_config");
 
@@ -307,7 +307,7 @@ queue_if(const char *name, struct olsr_config *cfg)
   /* new_if->config = NULL; */
   /* memset(&new_if->hemu_ip, 0, sizeof(new_if->hemu_ip)); */
   /* new_if->interf = NULL; */
-  new_if->cnf = get_default_olsr_if_options();
+  new_if->cnf = olsr_get_default_if_options();
   new_if->next = cfg->if_configs;
   cfg->if_configs = new_if;
 
@@ -791,10 +791,10 @@ parse_cfg_log(char *argstr, struct olsr_config *rcfg, char *rmsg)
       rcfg->log_event[SEVERITY_WARN][i] = true;
     }
     if (rcfg->log_event[SEVERITY_WARN][i]) {
-      rcfg->log_event[SEVERITY_ERROR][i] = true;
+      rcfg->log_event[SEVERITY_ERR][i] = true;
     }
     if (!hasErrorOption) {
-      rcfg->log_event[SEVERITY_ERROR][i] = true;
+      rcfg->log_event[SEVERITY_ERR][i] = true;
     }
   }
 
@@ -1486,7 +1486,7 @@ olsr_get_default_cfg(void)
     assert(cfg->log_event[SEVERITY_DEBUG][i] == false);
     assert(cfg->log_event[SEVERITY_INFO][i] == false);
     assert(cfg->log_event[SEVERITY_WARN][i] == false);
-    cfg->log_event[SEVERITY_ERROR][i] = true;
+    cfg->log_event[SEVERITY_ERR][i] = true;
   }
   cfg->log_target_stderr = true;
   assert(cfg->log_target_file == NULL);
index ac596e0..b037ba0 100644 (file)
 
 #include "interfaces.h"
 #include "olsr_ip_acl.h"
-#include "olsr_logging.h"
+#include "olsr_cfg_data.h"
 
 struct olsr_msg_params {
   float emission_interval;
@@ -249,9 +249,10 @@ typedef enum {
 } olsr_parse_cfg_result;
 
 olsr_parse_cfg_result olsr_parse_cfg(int argc, char *argv[], const char *file, char *rmsg, struct olsr_config **rcfg);
+struct olsr_if_options *olsr_get_default_if_options(void);
+struct olsr_config *olsr_get_default_cfg(void);
 int olsr_sanity_check_cfg(struct olsr_config *cfg);
 void olsr_free_cfg(struct olsr_config *cfg);
-struct olsr_config *olsr_get_default_cfg(void);
 
 /*
  * Check pollrate function
@@ -259,12 +260,12 @@ struct olsr_config *olsr_get_default_cfg(void);
 static inline float
 conv_pollrate_to_secs(uint32_t p)
 {
-  return p / 1000000.0;
+  return p / (float)1000000.0;
 }
 static inline uint32_t
 conv_pollrate_to_microsecs(float p)
 {
-  return p * 1000000;
+  return (uint32_t)(p * 1000000);
 }
 
 #endif /* _OLSRD_CFG_H */
index 4ffdf7a..573d548 100644 (file)
@@ -59,7 +59,7 @@ enum log_severity {
   SEVERITY_DEBUG,   //!< SEVERITY_DEBUG
   SEVERITY_INFO,    //!< SEVERITY_INFO
   SEVERITY_WARN,    //!< SEVERITY_WARN
-  SEVERITY_ERROR,   //!< SEVERITY_ERROR
+  SEVERITY_ERR,     //!< SEVERITY_ERR
 
   /* this one must be the last of the enums ! */
   LOG_SEVERITY_COUNT//!< LOG_SEVERITY_COUNT
index 694d52e..e8077ca 100644 (file)
@@ -85,7 +85,7 @@
 #ifdef REMOVE_LOG_ERROR
 #define OLSR_ERROR(source, format, args...) do { } while(0)
 #else
-#define OLSR_ERROR(source, format, args...) olsr_log(SEVERITY_ERROR, source, __FILE__, __LINE__, format, ##args)
+#define OLSR_ERROR(source, format, args...) olsr_log(SEVERITY_ERR, source, __FILE__, __LINE__, format, ##args)
 #endif
 
 void EXPORT(olsr_log_init) (void);