Merged silc_1_0_branch to trunk.
[silc.git] / apps / silcd / route.h
index bc0249477c4bb51ee5a28d227699fb379c26444f..0e78e739a4b66f91f57aaaa16a4a3bea2cdf462b 100644 (file)
@@ -2,9 +2,9 @@
 
   route.h
 
 
   route.h
 
-  Author: Pekka Riikonen <priikone@poseidon.pspt.fi>
+  Author: Pekka Riikonen <priikone@silcnet.org>
 
 
-  Copyright (C) 2000 Pekka Riikonen
+  Copyright (C) 2000 - 2002 Pekka Riikonen
 
   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
 
   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
 
    Following short description of the fields.
 
 
    Following short description of the fields.
 
-   unsigned int dest
+   SilcUInt32 dest
 
        Destination IPv4 address.  Can be used to quickly check whether
        the found route entry is what the caller wanted.
 
 
        Destination IPv4 address.  Can be used to quickly check whether
        the found route entry is what the caller wanted.
 
-   SilcServerList *router
+   SilcServerEntry router
 
        Pointer to the router specific data.
 
 */
 typedef struct {
 
        Pointer to the router specific data.
 
 */
 typedef struct {
-  unsigned int dest;
-  SilcServerList *router;
+  SilcUInt32 dest;
+  SilcServerEntry router;
 } SilcServerRouteTable;
 
 /* Route cache hash table */
 } SilcServerRouteTable;
 
 /* Route cache hash table */
@@ -54,11 +54,11 @@ extern SilcServerRouteTable silc_route_cache[SILC_SERVER_ROUTE_SIZE];
 /* Returns route cache hash table entry index. This is IPv4 specific.
    `port' argument may be zero (0) if it doesn't exist.  This has been
    taken from Linux kernel's route cache code. */
 /* Returns route cache hash table entry index. This is IPv4 specific.
    `port' argument may be zero (0) if it doesn't exist.  This has been
    taken from Linux kernel's route cache code. */
-extern inline
-unsigned int silc_server_route_hash(unsigned int addr, 
-                                   unsigned short port)
+static inline
+SilcUInt32 silc_server_route_hash(unsigned int addr, 
+                                   SilcUInt16 port)
 {
 {
-  unsigned int hash;
+  SilcUInt32 hash;
   
   hash = ((addr & 0xf0f0f0f0) >> 4) | ((addr & 0x0f0f0f0f) << 4);
   hash ^= port;
   
   hash = ((addr & 0xf0f0f0f0) >> 4) | ((addr & 0x0f0f0f0f) << 4);
   hash ^= port;
@@ -69,11 +69,11 @@ unsigned int silc_server_route_hash(unsigned int addr,
 }
 
 /* Prototypes */
 }
 
 /* Prototypes */
-void silc_server_route_add(unsigned int index, unsigned int dest,
-                          SilcServerList *router);
-SilcServerList *silc_server_route_check(unsigned int dest, 
-                                       unsigned short port);
-SilcSocketConnection silc_server_get_route(SilcServer server, void *id,
+void silc_server_route_add(SilcUInt32 index, unsigned int dest,
+                          SilcServerEntry router);
+SilcServerEntry silc_server_route_check(SilcUInt32 dest, 
+                                       SilcUInt16 port);
+SilcSocketConnection silc_server_route_get(SilcServer server, void *id,
                                           SilcIdType id_type);
 
 #endif
                                           SilcIdType id_type);
 
 #endif