Created SILC Runtime Toolkit git repository Part I.
[runtime.git] / apps / silcd / server_backup.h
diff --git a/apps/silcd/server_backup.h b/apps/silcd/server_backup.h
deleted file mode 100644 (file)
index 79684a6..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
-
-  server_backup.h
-
-  Author: Pekka Riikonen <priikone@silcnet.org>
-
-  Copyright (C) 2001 - 2003, 2007 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
-  the Free Software Foundation; version 2 of the License.
-
-  This program is distributed in the hope that it will be useful,
-  but WITHOUT ANY WARRANTY; without even the implied warranty of
-  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  GNU General Public License for more details.
-
-*/
-
-#ifndef SERVER_BACKUP_H
-#define SERVER_BACKUP_H
-
-/* Backup resuming protocol types */
-#define SILC_SERVER_BACKUP_START          1   /* Start protocol */
-#define SILC_SERVER_BACKUP_CONNECTED      2   /* Connected to primary */
-#define SILC_SERVER_BACKUP_ENDING         3   /* Giving up as primary */
-#define SILC_SERVER_BACKUP_RESUMED        4   /* Primary is back online */
-#define SILC_SERVER_BACKUP_REPLACED       20  /* Primary has been replaced */
-#define SILC_SERVER_BACKUP_START_USE      21  /* Start use backup as primary */
-
-/* Adds the `backup_server' to be one of our backup router. This can be
-   called multiple times to set multiple backup routers. The `replacing' is
-   the IP and port that the `backup_router' will replace if the `replacing'
-   will become unresponsive. If `local' is TRUE then the `backup_server' is
-   in the local cell, if FALSE it is in some other cell. */
-void silc_server_backup_add(SilcServer server, SilcServerEntry backup_server,
-                           const char *ip, int port, SilcBool local);
-
-/* Returns backup router for IP and port in `server_id' or NULL if there
-   does not exist backup router. */
-SilcServerEntry silc_server_backup_get(SilcServer server,
-                                      SilcServerID *server_id);
-
-/* Deletes the backup server `server_entry'. */
-void silc_server_backup_del(SilcServer server, SilcServerEntry server_entry);
-
-/* Frees all data allocated for backup routers.  Call this after deleting
-   all backup routers and when new routers are added no more, for example
-   when shutting down the server. */
-void silc_server_backup_free(SilcServer server);
-
-/* Marks the IP address and port from the `server_id' as  being replaced
-   by backup router indicated by the `server'. If the router connects at
-   a later time we can check whether it has been replaced by an backup
-   router. */
-void silc_server_backup_replaced_add(SilcServer server,
-                                    SilcServerID *server_id,
-                                    SilcServerEntry server_entry);
-
-/* Checks whether the IP address and port from the `server_id' has been
-   replaced by an backup router. If it has been then this returns TRUE
-   and the bacup router entry to the `server' pointer if non-NULL. Returns
-   FALSE if the router is not replaced by backup router. */
-SilcBool silc_server_backup_replaced_get(SilcServer server,
-                                    SilcServerID *server_id,
-                                    SilcServerEntry *server_entry);
-
-/* Deletes a replaced host by the set `server_entry. */
-void silc_server_backup_replaced_del(SilcServer server,
-                                    SilcServerEntry server_entry);
-
-/* Broadcast the received packet indicated by `packet' to all of our backup
-   routers. All router wide information is passed using broadcast packets.
-   That is why all backup routers need to get this data too. It is expected
-   that the caller already knows that the `packet' is broadcast packet. */
-void silc_server_backup_broadcast(SilcServer server,
-                                 SilcPacketStream sender,
-                                 SilcPacket packet);
-
-/* A generic routine to send data to all backup routers. If the `sender'
-   is provided it will indicate the original sender of the packet and the
-   packet won't be resent to that entity. The `data' is the data that will
-   be assembled to packet context before sending. The packet will be
-   encrypted this function. If the `force_send' is TRUE the data is sent
-   immediately and not put to queue. If `local' is TRUE then the packet
-   will be sent only to local backup routers inside the cell. If false the
-   packet can go from one cell to the other. This function has no effect
-   if there are no any backup routers. */
-void silc_server_backup_send(SilcServer server,
-                            SilcServerEntry sender,
-                            SilcPacketType type,
-                            SilcPacketFlags flags,
-                            unsigned char *data,
-                            SilcUInt32 data_len,
-                            SilcBool force_send,
-                            SilcBool local);
-
-/* Same as silc_server_backup_send but sets a specific Destination ID to
-   the packet. The Destination ID is indicated by the `dst_id' and the
-   ID type `dst_id_type'. For example, packets destined to channels must
-   be sent using this function. */
-void silc_server_backup_send_dest(SilcServer server,
-                                 SilcServerEntry sender,
-                                 SilcPacketType type,
-                                 SilcPacketFlags flags,
-                                 void *dst_id,
-                                 SilcIdType dst_id_type,
-                                 unsigned char *data,
-                                 SilcUInt32 data_len,
-                                 SilcBool force_send,
-                                 SilcBool local);
-
-/* Send the START_USE indication to remote connection.  If `failure' is
-   TRUE then this sends SILC_PACKET_FAILURE.  Otherwise it sends
-   SILC_PACKET_RESUME_ROUTER. */
-void silc_server_backup_send_start_use(SilcServer server,
-                                      SilcPacketStream sock,
-                                      SilcBool failure);
-
-/* Send the REPLACED indication to remote router.  This is send by the
-   primary router (remote router) of the primary router that came back
-   online.  This is not sent by backup router or any other server. */
-void silc_server_backup_send_replaced(SilcServer server,
-                                     SilcPacketStream sock);
-
-/* Processes incoming RESUME_ROUTER packet. This can give the packet
-   for processing to the protocol handler or allocate new protocol if
-   start command is received. */
-void silc_server_backup_resume_router(SilcServer server,
-                                     SilcPacketStream sock,
-                                     SilcPacket packet);
-
-/* Called when we've established connection back to our primary router
-   when we've acting as backup router and have replaced the primary router
-   in the cell. This function will start the backup resuming protocol. */
-void silc_server_backup_connected(SilcServer server,
-                                 SilcServerEntry server_entry,
-                                 void *context);
-
-/* Backup resuming protocol. This protocol is executed when the primary
-   router wants to resume its position as being primary router. */
-SILC_TASK_CALLBACK(silc_server_protocol_backup);
-
-#endif /* SERVER_BACKUP_H */