Minor initial updates to the security plugin for 0.4.8. There is a LOT of work to...
authorAndreas Tonnesen <andreto@olsr.org>
Sat, 6 Nov 2004 16:43:54 +0000 (16:43 +0000)
committerAndreas Tonnesen <andreto@olsr.org>
Sat, 6 Nov 2004 16:43:54 +0000 (16:43 +0000)
lib/secure/SOLSR-README
lib/secure/src/olsrd_plugin.c
lib/secure/src/olsrd_plugin.h
lib/secure/src/olsrd_secure.c

index 6d4545e..a28e6c0 100644 (file)
@@ -1,3 +1,26 @@
+
+06.11.2004
+
+NOTE:
+DEVELOPMENT OF THIS PLUIGN HAS CEASED FROM OLSRD 0.4.8
+THIS PLUGIN WILL ONLY WORK WITH OLSRD <= 0.4.7
+
+There has been some heavy internal rewrites that will
+affect the way this plugin works in a serious way. The
+outputbuffering in olsrd is completely rewritten to
+work on a pr. interface basis. Due to this, this plugin 
+is no longer functional with olsrd >= 0.4.8. Sorry.
+
+If you would like to update and maintain this plugin,
+drop me a mail at andreto@olsr.org
+
+- Andreas Tønnesen
+
+
+
+
+OLD README:
+
 Secure OLSR 0.2 implementation notes
 (c)Andreas Tønnesen 06.05.04
 
index f035944..eac66eb 100644 (file)
  * 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.
+ * POSSIBILITY OF SUCH DAMAGE.
  *
+ * $Id: olsrd_plugin.c,v 1.3 2004/11/06 16:43:54 kattemat Exp $
  */
 
-/*
- * Dynamic linked library example for UniK OLSRd
- */
 
 
 #include "olsrd_plugin.h"
@@ -76,7 +74,13 @@ fetch_olsrd_data();
  * THIS IS NOT THE VERSION OF YOUR PLUGIN!
  * Do not alter unless you know what you are doing!
  */
-int plugin_interface_version;
+int 
+get_plugin_interface_version()
+{
+  return PLUGIN_INTERFACE_VERSION;
+}
+
+
 
 /**
  *Constructor
@@ -87,7 +91,6 @@ my_init()
   /* Print plugin info to stdout */
   printf("%s\n", MOD_DESC);
   /* Set interface version */
-  plugin_interface_version = PLUGIN_INTERFACE_VERSION;
 
   ifs = NULL;
 
index e321830..f687ab2 100644 (file)
  * 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.
+ * POSSIBILITY OF SUCH DAMAGE.
  *
+ * $Id: olsrd_plugin.h,v 1.3 2004/11/06 16:43:54 kattemat Exp $
  */
 
 
 /*
- * Dynamic linked library example for UniK OLSRd
+ * olsr.org olsr daemon security plugin
  */
 
 #ifndef _OLSRD_PLUGIN_DEFS
@@ -62,7 +63,7 @@
 #define PLUGIN_VERSION "0.3"
 #define PLUGIN_AUTHOR   "Andreas Tønnesen"
 #define MOD_DESC PLUGIN_NAME " " PLUGIN_VERSION " by " PLUGIN_AUTHOR
-#define PLUGIN_INTERFACE_VERSION 1
+#define PLUGIN_INTERFACE_VERSION 2
 
 /* The type of message you will use */
 #define MESSAGE_TYPE 10
@@ -151,6 +152,13 @@ union hna_netmask
  *                          INTERFACE SECTION                               *
  ****************************************************************************/
 
+struct vtimes
+{
+  olsr_u8_t hello;
+  olsr_u8_t tc;
+  olsr_u8_t mid;
+  olsr_u8_t hna;
+};
 /**
  *A struct containing all necessary information about each
  *interface participating in the OLSD routing
@@ -168,12 +176,17 @@ struct interface
   union         olsr_ip_addr ip_addr;
   int           olsr_socket;                    /* The broadcast socket for this interface */
   int          int_metric;                     /* metric of interface */
+  int           int_mtu;                        /* MTU of interface */
   int          int_flags;                      /* see below */
   char         *int_name;                      /* from kernel if structure */
   int           if_index;                       /* Kernels index of this interface */
   int           if_nr;                          /* This interfaces index internally*/
   int           is_wireless;                    /* wireless interface or not*/
   olsr_u16_t    olsr_seqnum;                    /* Olsr message seqno */
+
+  float         hello_etime;
+  struct        vtimes valtimes;
+
   struct       interface *int_next;
 };
 
@@ -501,4 +514,7 @@ olsr_plugin_exit();
 int
 plugin_io(int, void *, size_t);
 
+int 
+get_plugin_interface_version();
+
 #endif
index 68c7619..002c86f 100644 (file)
  * 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.
+ * POSSIBILITY OF SUCH DAMAGE.
  *
+ * $Id: olsrd_secure.c,v 1.3 2004/11/06 16:43:54 kattemat Exp $
  */
 
 
 /*
- * Dynamic linked library for UniK OLSRd
+ * Dynamic linked library for the olsr.org olsr daemon
  */
 
 #include "olsrd_secure.h"
@@ -98,6 +99,9 @@ olsr_plugin_init()
       remove_olsr_socket(ints->olsr_socket, olsr_input);
       add_olsr_socket(ints->olsr_socket, &packet_parser);
      
+      /* XXX Fix maxsize */
+
+
       ints = ints->int_next;
     }