chiark / gitweb /
Sequence number protection, and BSD tunnels.
authormdw <mdw>
Mon, 5 Feb 2001 19:56:37 +0000 (19:56 +0000)
committermdw <mdw>
Mon, 5 Feb 2001 19:56:37 +0000 (19:56 +0000)
tripe.h

diff --git a/tripe.h b/tripe.h
index 9d46b51ceda6029220c49746bcd3b3c70b32cddd..587c5d5ba3dd54419c3fb3939602674b9d6e23dd 100644 (file)
--- a/tripe.h
+++ b/tripe.h
@@ -1,6 +1,6 @@
 /* -*-c-*-
  *
 /* -*-c-*-
  *
- * $Id: tripe.h,v 1.3 2001/02/04 01:17:55 mdw Exp $
+ * $Id: tripe.h,v 1.4 2001/02/05 19:56:37 mdw Exp $
  *
  * Main header file for TrIPE
  *
  *
  * Main header file for TrIPE
  *
@@ -29,6 +29,9 @@
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: tripe.h,v $
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: tripe.h,v $
+ * Revision 1.4  2001/02/05 19:56:37  mdw
+ * Sequence number protection, and BSD tunnels.
+ *
  * Revision 1.3  2001/02/04 01:17:55  mdw
  * Create a configuration header file to tidy up command lines.
  *
  * Revision 1.3  2001/02/04 01:17:55  mdw
  * Create a configuration header file to tidy up command lines.
  *
@@ -220,8 +223,12 @@ typedef struct keyset {
 #endif
   gcipher *c;                          /* Keyset cipher for encryption */
   gmac *m;                             /* Keyset MAC for integrity */
 #endif
   gcipher *c;                          /* Keyset cipher for encryption */
   gmac *m;                             /* Keyset MAC for integrity */
+  uint32 oseq;                         /* Outbound sequence number */
+  uint32 iseq, iwin;                   /* Inbound sequence number */
 } keyset;
 
 } keyset;
 
+#define KS_SEQWINSZ 32                 /* Bits in sequence number window */
+
 /* --- Key exchange --- *
  *
  * TrIPE uses the Wrestlers Protocol for its key exchange.  The Wrestlers
 /* --- Key exchange --- *
  *
  * TrIPE uses the Wrestlers Protocol for its key exchange.  The Wrestlers
@@ -262,6 +269,10 @@ typedef struct tunnel {
 #if TUN_TYPE == TUN_UNET
   sel_file f;                          /* Selector for Usernet device */
   struct peer *p;                      /* Pointer to my peer */
 #if TUN_TYPE == TUN_UNET
   sel_file f;                          /* Selector for Usernet device */
   struct peer *p;                      /* Pointer to my peer */
+#elif TUN_TYPE == TUN_BSD
+  sel_file f;                          /* Selector for tunnel device */
+  struct peer *p;                      /* Pointer to my peer */
+  unsigned n;                          /* Number of my tunnel device */
 #else
 #  error "No support for this tunnel type"
 #endif
 #else
 #  error "No support for this tunnel type"
 #endif