Replace Opaque and Strict options with a TunnelServer option.
[oweals/tinc.git] / src / protocol_key.c
index f0c9bcc35f9cdfd9dcdfe41740319c3c7febd0fd..049fc1e8073c093a602275f9235a97fbfb4cd15c 100644 (file)
@@ -17,7 +17,7 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: protocol_key.c,v 1.1.4.23 2003/10/11 12:16:13 guus Exp $
+    $Id: protocol_key.c,v 1.1.4.24 2003/11/17 15:30:18 guus Exp $
 */
 
 #include "system.h"
@@ -80,7 +80,8 @@ bool key_changed_h(connection_t *c)
 
        /* Tell the others */
 
-       forward_request(c);
+       if(!tunnelserver)
+               forward_request(c);
 
        return true;
 }
@@ -130,6 +131,9 @@ bool req_key_h(connection_t *c)
                memset(from->late, 0, sizeof(from->late));
                send_ans_key(c, myself, from);
        } else {
+               if(tunnelserver)
+                       return false;
+
                send_req_key(to->nexthop->connection, from, to);
        }
 
@@ -189,6 +193,9 @@ bool ans_key_h(connection_t *c)
        /* Forward it if necessary */
 
        if(to != myself) {
+               if(tunnelserver)
+                       return false;
+
                return send_request(to->nexthop->connection, "%s", c->buffer);
        }