luci-0.9: merge r4896
authorJo-Philipp Wich <jow@openwrt.org>
Wed, 24 Jun 2009 20:59:56 +0000 (20:59 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Wed, 24 Jun 2009 20:59:56 +0000 (20:59 +0000)
contrib/package/olsrd-luci/Makefile
contrib/package/olsrd-luci/patches/140-olsrd-optimize-size.patch
contrib/package/olsrd-luci/patches/150-add-watchdog.patch [deleted file]

index 5928dfe02ebb200e82ebc97316b088e2ebcb2629..fcd5c72daa6ff012829bb888b4e389c09de3d34d 100644 (file)
@@ -11,13 +11,13 @@ include $(TOPDIR)/rules.mk
 
 PKG_BASENAME:=olsrd
 PKG_NAME:=$(PKG_BASENAME)-luci
-PKG_BASEVER:=0.5.6-r4
-PKG_RELEASE:=2
+PKG_BASEVER:=0.5.6-r5
+PKG_RELEASE:=1
 
-PKG_HGREV:=edc947c1a5bc
+PKG_HGREV:=5ed3e2c2760c
 PKG_SOURCE:=$(PKG_HGREV).tar.gz
 PKG_SOURCE_URL:=http://gredler.at/hg/olsrd-0.5.6/archive
-PKG_MD5SUM:=88f6ccdfe3b75ce7b942849be2bfc8a8
+PKG_MD5SUM:=b3da5372337567a7894624afc6f0277a
 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_HGREV)
 PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE)
 PKG_VERSION:=$(PKG_BASEVER)+$(PKG_HGREV)+luci1
index 5ff1519e1cbbb28a41177ad3337b6ea85c0fff06..e0f5a6a13ae3f37072befb35e971b57fcdc68253 100644 (file)
    }
    return olsr_cnf;
  }
-@@ -401,7 +405,9 @@
+@@ -405,7 +409,9 @@
  
    cnf->debug_level = DEF_DEBUGLVL;
    cnf->no_fork = false;
    cnf->ip_version = AF_INET;
    cnf->ipsize = sizeof(struct in_addr);
    cnf->maxplen = 32;
-@@ -412,7 +418,9 @@
+@@ -416,7 +422,9 @@
    cnf->rtproto = DEF_RTPROTO;
    cnf->rttable_default = 0;
    cnf->willingness_auto = DEF_WILL_AUTO;
    cnf->fib_metric = DEF_FIB_METRIC;
  
    cnf->use_hysteresis = DEF_USE_HYST;
-@@ -491,6 +499,7 @@
+@@ -495,6 +503,7 @@
  
  }
  
  void
  olsrd_print_cnf(struct olsrd_config *cnf)
  {
-@@ -634,6 +643,7 @@
+@@ -638,6 +647,7 @@
      }
    }
  }
  %token TOK_FIBMETRIC
  %token TOK_USEHYST
  %token TOK_HYSTSCALE
-@@ -202,7 +201,6 @@
+@@ -203,7 +202,6 @@
  
  %token TOK_HOSTLABEL
  %token TOK_NETLABEL
  
  %token TOK_IP4BROADCAST
  %token TOK_IFMODE
-@@ -265,7 +263,6 @@
+@@ -267,7 +265,6 @@
  
  block:      TOK_HNA4 hna4body
            | TOK_HNA6 hna6body
            | ifblock ifbody
            | plblock plbody
  ;
-@@ -290,18 +287,6 @@
+@@ -292,18 +289,6 @@
           | ihna6entry
  ;
  
  ifblock:   ifstart ifnicks
  ;
  
-@@ -343,77 +328,6 @@
+@@ -345,77 +330,6 @@
            | vcomment
  ;
  
   * Local Variables:
 --- a/src/hna_set.c
 +++ b/src/hna_set.c
-@@ -279,6 +279,7 @@
+@@ -280,6 +280,7 @@
   *
   *@return nada
   */
  void
  olsr_print_hna_set(void)
  {
-@@ -320,6 +321,7 @@
+@@ -321,6 +322,7 @@
    }
  #endif
  }
    }
 +#ifndef SVEN_OLA_UNBLOAT
    //send ipc update on success
-   if ( ( cmd != RTM_NEWRULE ) & ( cmd != RTM_DELRULE ) & (flag = RT_ORIG_REQUEST) & (0 <= rt_ret && olsr_cnf->ipc_connections > 0)) {
+   if ( ( cmd != RTM_NEWRULE ) && ( cmd != RTM_DELRULE ) && (flag = RT_ORIG_REQUEST) && (0 <= rt_ret && olsr_cnf->ipc_connections > 0)) {
      ipc_route_send_rtentry(&rt->rt_dst.prefix, &nexthop->gateway, metric, RTM_NEWROUTE == cmd,
                               if_ifwithindex_name(nexthop->iif_index));
    }
  
    memset(&kernel_route, 0, sizeof(struct in6_rtmsg));
  
-@@ -469,7 +475,9 @@
+@@ -468,7 +474,9 @@
    int rslt;
  #endif /* LINUX_POLICY_ROUTING */
  
  
  #if !LINUX_POLICY_ROUTING
    memset(&kernel_route, 0, sizeof(struct rtentry));
-@@ -536,7 +544,9 @@
+@@ -535,7 +543,9 @@
    int rslt;
  #endif /* LINUX_POLICY_ROUTING */
  
  }
  
  /*
-@@ -417,7 +423,11 @@
+@@ -399,7 +405,11 @@
   * @return pointer to hello_neighbor
   */
  struct hello_neighbor *
  {
    struct hello_neighbor *h;
  
-@@ -439,7 +449,11 @@
+@@ -421,7 +431,11 @@
   * @return pointer to tc_mpr_addr
   */
  struct tc_mpr_addr *
  {
    struct tc_mpr_addr *t;
  
-@@ -461,7 +475,11 @@
+@@ -443,7 +457,11 @@
   * @return pointer to lq_hello_neighbor
   */
  struct lq_hello_neighbor *
  {
    struct lq_hello_neighbor *h;
  
-@@ -483,7 +501,11 @@
+@@ -465,7 +483,11 @@
   * @return pointer to link_entry
   */
  struct link_entry *
  #include "tc_set.h"
  #include "link_set.h"
  #include "olsr_spf.h"
-@@ -223,6 +224,7 @@
+@@ -212,6 +213,7 @@
  
    return buffer->buf;
  }
  #ifndef LQ_PLUGIN_DEFAULT_H_
  #define LQ_PLUGIN_DEFAULT_H_
  
-@@ -77,6 +78,7 @@
+@@ -75,6 +76,7 @@
  extern struct lq_handler lq_etx_float_handler;
  
  #endif /*LQ_PLUGIN_DEFAULT_H_ */
  #include "tc_set.h"
  #include "link_set.h"
  #include "lq_plugin.h"
-@@ -235,6 +236,7 @@
+@@ -238,6 +239,7 @@
    snprintf(buffer->buf, sizeof(buffer->buf), "%.3f", (float)(cost) / LQ_FPM_LINKCOST_MULTIPLIER);
    return buffer->buf;
  }
  #ifndef LQ_ETX_FPM_
  #define LQ_ETX_FPM_
  
-@@ -83,6 +84,7 @@
+@@ -79,6 +80,7 @@
  extern struct lq_handler lq_etx_fpm_handler;
  
  #endif /*LQ_ETX_FPM_ */
   * Local Variables:
 --- a/src/main.c
 +++ b/src/main.c
-@@ -256,13 +256,17 @@
+@@ -312,13 +312,17 @@
    /*
     * Print configuration
     */
  
    /*
     * socket for ioctl calls
-@@ -298,7 +302,9 @@
+@@ -354,7 +358,9 @@
    /*
     *enable ip forwarding on host
     */
  
    /* Initialize parser */
    olsr_init_parser();
-@@ -316,6 +322,7 @@
+@@ -372,6 +378,7 @@
     *Set up willingness/APM
     */
    if (olsr_cnf->willingness_auto) {
      if (apm_init() < 0) {
        OLSR_PRINTF(1, "Could not read APM info - setting default willingness(%d)\n", WILL_DEFAULT);
  
-@@ -324,10 +331,13 @@
+@@ -382,10 +389,13 @@
        olsr_cnf->willingness_auto = 0;
        olsr_cnf->willingness = WILL_DEFAULT;
      } else {
    }
  
    /* Initialize net */
-@@ -355,9 +365,11 @@
+@@ -415,9 +425,11 @@
  
    /* Initialize the IPC socket */
  
    /* Initialisation of different tables to be used. */
    olsr_init_tables();
  
-@@ -487,9 +499,11 @@
+@@ -549,9 +561,11 @@
    OLSR_PRINTF(1, "Closing sockets...\n");
  
    /* front-end IPC socket */
  
    /* OLSR sockets */
    for (ifn = ifnet; ifn; ifn = ifn->int_next)
-@@ -499,7 +513,9 @@
+@@ -561,7 +575,9 @@
    olsr_close_plugins();
  
    /* Reset network settings */
  
    /* ioctl socket */
    close(olsr_cnf->ioctl_s);
-@@ -540,7 +556,11 @@
-           "usage: olsrd [-f <configfile>] [ -i interface1 interface2 ... ]\n"
-           "  [-d <debug_level>] [-ipv6] [-multi <IPv6 multicast address>]\n"
-           "  [-lql <LQ level>] [-lqw <LQ winsize>] [-lqnt <nat threshold>]\n"
+@@ -601,7 +617,11 @@
+         "usage: olsrd [-f <configfile>] [ -i interface1 interface2 ... ]\n"
+         "  [-d <debug_level>] [-ipv6] [-multi <IPv6 multicast address>]\n"
+         "  [-lql <LQ level>] [-lqw <LQ winsize>] [-lqnt <nat threshold>]\n"
 +#ifdef SVEN_OLA_UNBLOAT
-+          "  [-bcast <broadcastaddr>] [-delgw] (Note: no -ipc,-dispin,-dispout)\n"
-+#else /* SVEN_OLA_UNBLOAT */
-           "  [-bcast <broadcastaddr>] [-ipc] [-dispin] [-dispout] [-delgw]\n"
++        "  [-bcast <broadcastaddr>] [-delgw] (Note: no -ipc,-dispin,-dispout)\n"
++#else
+         "  [-bcast <broadcastaddr>] [-ipc] [-dispin] [-dispout] [-delgw]\n"
 +#endif /* SVEN_OLA_UNBLOAT */
-           "  [-hint <hello interval (secs)>] [-tcint <tc interval (secs)>]\n"
-           "  [-midint <mid interval (secs)>] [-hnaint <hna interval (secs)>]\n"
-           "  [-T <Polling Rate (secs)>] [-nofork] [-hemu <ip_address>]\n" "  [-lql <LQ level>] [-lqa <LQ aging factor>]\n");
-@@ -704,12 +724,20 @@
+         "  [-hint <hello interval (secs)>] [-tcint <tc interval (secs)>]\n"
+         "  [-midint <mid interval (secs)>] [-hnaint <hna interval (secs)>]\n"
+         "  [-T <Polling Rate (secs)>] [-nofork] [-hemu <ip_address>]\n" "  [-lql <LQ level>] [-lqa <LQ aging factor>]\n");
+@@ -765,12 +785,20 @@
          olsr_exit(__func__, EXIT_FAILURE);
        }
        printf("Queuing if %s\n", *argv);
        }
  
        continue;
-@@ -771,7 +799,7 @@
+@@ -833,7 +861,7 @@
        sscanf(*argv, "%f", &cnf->pollrate);
        continue;
      }
      /*
       * Should we display the contents of packages beeing sent?
       */
-@@ -795,6 +823,7 @@
+@@ -857,6 +885,7 @@
        cnf->ipc_connections = 1;
        continue;
      }
  
      /*
       * IPv6 multicast addr
-@@ -812,7 +841,7 @@
+@@ -874,7 +903,7 @@
  
        continue;
      }
      /*
       * Host emulation
       */
-@@ -840,6 +869,7 @@
+@@ -902,6 +931,7 @@
  
        continue;
      }
    struct olsr_if *interfaces;
    float pollrate;
    float nic_chgs_pollrate;
-@@ -269,7 +277,9 @@
+@@ -271,7 +279,9 @@
  
    void olsrd_free_cnf(struct olsrd_config *);
  
  }
  
  /**
-@@ -385,7 +401,7 @@
+@@ -385,9 +401,11 @@
    /* route additions */
    olsr_add_kernel_routes(&add_kernel_list);
  
 -#if DEBUG
++#ifndef SVEN_OLA_UNBLOAT
 +#ifdef DEBUG
    olsr_print_routing_table(&routingtree);
  #endif
++#endif /* SVEN_OLA_UNBLOAT */
  }
+ /*
 --- a/src/rebuild_packet.c
 +++ b/src/rebuild_packet.c
 @@ -60,7 +60,11 @@
  
  /**
   * Wrapper for the timer callback.
-@@ -694,6 +696,7 @@
+@@ -693,6 +695,7 @@
  /**
   * Print the topology table to stdout
   */
  void
  olsr_print_tc_table(void)
  {
-@@ -719,6 +722,7 @@
+@@ -718,6 +721,7 @@
    } OLSR_FOR_ALL_TC_ENTRIES_END(tc);
  #endif
  }
diff --git a/contrib/package/olsrd-luci/patches/150-add-watchdog.patch b/contrib/package/olsrd-luci/patches/150-add-watchdog.patch
deleted file mode 100644 (file)
index 121e8a1..0000000
+++ /dev/null
@@ -1,358 +0,0 @@
-diff -Nur olsrd-0-5-6-fc691af9a18d.orig/Makefile olsrd-0-5-6-fc691af9a18d/Makefile
---- olsrd-0-5-6-fc691af9a18d.orig/Makefile     2009-03-14 22:39:09.000000000 +0000
-+++ olsrd-0-5-6-fc691af9a18d/Makefile  2009-03-16 16:44:28.000000000 +0000
-@@ -148,7 +148,7 @@
- ifeq ($(OS),win32)
- SUBDIRS := dot_draw httpinfo mini pgraph secure txtinfo
- else
--SUBDIRS := bmf dot_draw dyn_gw dyn_gw_plain httpinfo mini nameservice pgraph secure txtinfo
-+SUBDIRS := bmf dot_draw dyn_gw dyn_gw_plain httpinfo mini nameservice pgraph secure txtinfo watchdog
- endif
- endif
-@@ -229,6 +229,11 @@
-               $(MAKECMD) -C lib/arprefresh
-               $(MAKECMD) -C lib/arprefresh DESTDIR=$(DESTDIR) install
-+watchdog:
-+              $(MAKECMD) -C lib/watchdog clean
-+              $(MAKECMD) -C lib/watchdog
-+              $(MAKECMD) -C lib/watchdog DESTDIR=$(DESTDIR) install
-+
- build_all:    all switch libs
- install_all:  install install_libs
- clean_all:    uberclean clean_libs
-diff -Nur olsrd-0-5-6-fc691af9a18d.orig/lib/watchdog/Makefile olsrd-0-5-6-fc691af9a18d/lib/watchdog/Makefile
---- olsrd-0-5-6-fc691af9a18d.orig/lib/watchdog/Makefile        1970-01-01 00:00:00.000000000 +0000
-+++ olsrd-0-5-6-fc691af9a18d/lib/watchdog/Makefile     2009-03-13 17:13:45.000000000 +0000
-@@ -0,0 +1,56 @@
-+# 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.
-+#
-+
-+OLSRD_PLUGIN =        true
-+PLUGIN_NAME = olsrd_watchdog
-+PLUGIN_VER =  0.1
-+
-+TOPDIR = ../..
-+include $(TOPDIR)/Makefile.inc
-+
-+default_target: $(PLUGIN_FULLNAME)
-+
-+$(PLUGIN_FULLNAME): $(OBJS) version-script.txt
-+              $(CC) $(LDFLAGS) -o $(PLUGIN_FULLNAME) $(OBJS) $(LIBS)
-+
-+install:      $(PLUGIN_FULLNAME)
-+              $(STRIP) $(PLUGIN_FULLNAME)
-+              $(INSTALL_LIB)
-+
-+clean:
-+              rm -f $(OBJS) $(SRCS:%.c=%.d) $(PLUGIN_FULLNAME)
-diff -Nur olsrd-0-5-6-fc691af9a18d.orig/lib/watchdog/README_WATCHDOG olsrd-0-5-6-fc691af9a18d/lib/watchdog/README_WATCHDOG
---- olsrd-0-5-6-fc691af9a18d.orig/lib/watchdog/README_WATCHDOG 1970-01-01 00:00:00.000000000 +0000
-+++ olsrd-0-5-6-fc691af9a18d/lib/watchdog/README_WATCHDOG      2009-03-13 17:13:45.000000000 +0000
-@@ -0,0 +1,34 @@
-+---------------------------------------------------------------------
-+Watchdog PLUGIN FOR OLSRD
-+by Henning Rogge <hrogge@googlemail.com>
-+---------------------------------------------------------------------
-+
-+This plugin is used for detecting a total freeze of the olsrd by an external script.
-+Once per timeinterval (configurable) it writes the current time into
-+a file.
-+
-+---------------------------------------------------------------------
-+PLUGIN PARAMETERS (PlParam)
-+---------------------------------------------------------------------
-+
-+PlParam "file" "/tmp/olsrd.watchdog"
-+      Name of the "still alive" file written by the watchdog
-+PlParam "interval" "5"
-+      Overwrite the file every X seconds
-+
-+
-+---------------------------------------------------------------------
-+SAMPLE CONFIG
-+---------------------------------------------------------------------
-+
-+add in /etc/olsrd.conf:
-+
-+LoadPlugin "olsrd_watchdog.so.0.1"
-+{
-+  PlParam "file" "/tmp/olsrd.watchdog"
-+  PlParam "interval" "5"
-+}
-+
-+
-+---------------------------------------------------------------------
-+EOF / 26.05.2005
-diff -Nur olsrd-0-5-6-fc691af9a18d.orig/lib/watchdog/src/olsrd_plugin.c olsrd-0-5-6-fc691af9a18d/lib/watchdog/src/olsrd_plugin.c
---- olsrd-0-5-6-fc691af9a18d.orig/lib/watchdog/src/olsrd_plugin.c      1970-01-01 00:00:00.000000000 +0000
-+++ olsrd-0-5-6-fc691af9a18d/lib/watchdog/src/olsrd_plugin.c   2009-03-16 16:51:34.000000000 +0000
-@@ -0,0 +1,145 @@
-+
-+/*
-+ * 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.
-+ *
-+ */
-+
-+
-+ /*
-+  * Example plugin for olsrd.org OLSR daemon
-+  * Only the bare minimum
-+  */
-+
-+
-+#include "olsrd_plugin.h"
-+#include "plugin_util.h"
-+#include "olsr.h"
-+#include "defs.h"
-+#include "scheduler.h"
-+#include "olsr_cookie.h"
-+
-+
-+#include <stdio.h>
-+#include <string.h>
-+#include <stdlib.h>
-+#include <time.h>
-+#define PLUGIN_INTERFACE_VERSION 5
-+
-+static struct olsr_cookie_info *watchdog_timer_cookie;
-+
-+static char watchdog_filename[FILENAME_MAX + 1] = "/tmp/olsr.watchdog";
-+static int watchdog_interval = 5;
-+
-+/**
-+ * Plugin interface version
-+ * Used by main olsrd to check plugin interface version
-+ */
-+int
-+olsrd_plugin_interface_version(void)
-+{
-+  return PLUGIN_INTERFACE_VERSION;
-+}
-+
-+
-+static int
-+set_watchdog_file(const char *value, void *data __attribute__ ((unused)), set_plugin_parameter_addon addon __attribute__ ((unused)))
-+{
-+  strncpy(watchdog_filename, value, FILENAME_MAX);
-+  return 0;
-+}
-+
-+static int
-+set_watchdog_interval(const char *value, void *data __attribute__ ((unused)), set_plugin_parameter_addon addon
-+                      __attribute__ ((unused)))
-+{
-+  watchdog_interval = atoi(value);
-+  return 0;
-+}
-+
-+/**
-+ * Register parameters from config file
-+ * Called for all plugin parameters
-+ */
-+static const struct olsrd_plugin_parameters plugin_parameters[] = {
-+  {.name = "file",.set_plugin_parameter = &set_watchdog_file,.data = NULL},
-+  {.name = "interval",.set_plugin_parameter = &set_watchdog_interval,.data = NULL},
-+};
-+
-+void
-+olsrd_get_plugin_parameters(const struct olsrd_plugin_parameters **params, int *size)
-+{
-+  *params = plugin_parameters;
-+  *size = ARRAYSIZE(plugin_parameters);
-+}
-+
-+static void
-+olsr_watchdog_write_alivefile(void *foo __attribute__ ((unused)))
-+{
-+  FILE *file = fopen(watchdog_filename, "w");
-+  if (file == NULL) {
-+    OLSR_PRINTF(3, "Error, cannot write watchdog alivefile");
-+  } else {
-+    fprintf(file, "%ld\n", (long)time(NULL));
-+    fflush(file);
-+    fclose(file);
-+  }
-+}
-+
-+/**
-+ * Initialize plugin
-+ * Called after all parameters are passed
-+ */
-+int
-+olsrd_plugin_init(void)
-+{
-+  /* create the cookie */
-+  watchdog_timer_cookie = olsr_alloc_cookie("Watchdog: write alive-file", OLSR_COOKIE_TYPE_TIMER);
-+
-+  /* Register the GW check */
-+  olsr_start_timer(watchdog_interval * MSEC_PER_SEC, 0, OLSR_TIMER_PERIODIC,
-+                   &olsr_watchdog_write_alivefile, NULL, watchdog_timer_cookie->ci_id);
-+
-+  return 1;
-+}
-+
-+/*
-+ * Local Variables:
-+ * c-basic-offset: 2
-+ * indent-tabs-mode: nil
-+ * End:
-+ */
-diff -Nur olsrd-0-5-6-fc691af9a18d.orig/lib/watchdog/src/olsrd_plugin.h olsrd-0-5-6-fc691af9a18d/lib/watchdog/src/olsrd_plugin.h
---- olsrd-0-5-6-fc691af9a18d.orig/lib/watchdog/src/olsrd_plugin.h      1970-01-01 00:00:00.000000000 +0000
-+++ olsrd-0-5-6-fc691af9a18d/lib/watchdog/src/olsrd_plugin.h   2009-03-13 17:13:45.000000000 +0000
-@@ -0,0 +1,69 @@
-+
-+/*
-+ * 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.
-+ *
-+ */
-+
-+/*
-+ * Dynamic linked library for the olsr.org olsr daemon
-+ */
-+
-+#ifndef _OLSRD_PLUGIN_MINI
-+#define _OLSRD_PLUGIN_MINI
-+
-+
-+/****************************************************************************
-+ *                Functions that the plugin MUST provide                    *
-+ ****************************************************************************/
-+
-+
-+/* Initialization function */
-+int
-+  olsrd_plugin_init(void);
-+
-+int
-+  olsrd_plugin_interface_version(void);
-+
-+#endif
-+
-+/*
-+ * Local Variables:
-+ * c-basic-offset: 2
-+ * indent-tabs-mode: nil
-+ * End:
-+ */
-diff -Nur olsrd-0-5-6-fc691af9a18d.orig/lib/watchdog/version-script.txt olsrd-0-5-6-fc691af9a18d/lib/watchdog/version-script.txt
---- olsrd-0-5-6-fc691af9a18d.orig/lib/watchdog/version-script.txt      1970-01-01 00:00:00.000000000 +0000
-+++ olsrd-0-5-6-fc691af9a18d/lib/watchdog/version-script.txt   2009-03-13 17:13:45.000000000 +0000
-@@ -0,0 +1,10 @@
-+VERS_1.0
-+{
-+  global:
-+    olsrd_plugin_interface_version;
-+    olsrd_plugin_init;
-+    olsrd_get_plugin_parameters;
-+
-+  local:
-+    *;
-+};