updates.
[silc.git] / apps / silcd / protocol.h
index 09e2aac3a4e4af5abde6279e68852eaac41355df..26be5e891b4e30f1b8f161895c8f35e595d508ef 100644 (file)
@@ -26,6 +26,7 @@
 #define SILC_PROTOCOL_SERVER_CONNECTION_AUTH    1
 #define SILC_PROTOCOL_SERVER_KEY_EXCHANGE       2
 #define SILC_PROTOCOL_SERVER_REKEY              3
+#define SILC_PROTOCOL_SERVER_BACKUP             4
 /* #define SILC_PROTOCOL_SERVER_MAX             255 */
 
 /* Internal context for Key Exchange protocol. */
@@ -66,14 +67,10 @@ typedef struct {
   /* SKE object from Key Exchange protocol. */
   SilcSKE ske;
 
-  /* Auth method that must be used. This is resolved before this
-     connection authentication protocol is started. Used when we are
-     initiating. */
+  /* Authentication method and data if we alreay know it. This is filled
+     before starting the protocol if we know the authentication data.
+     Otherwise these are and remain NULL. Used when we are initiating. */
   uint32 auth_meth;
-
-  /* Authentication data if we alreay know it. This is filled before
-     starting the protocol if we know the authentication data. Otherwise
-     these are and remain NULL. Used when we are initiating. */
   void *auth_data;
   uint32 auth_data_len;
 
@@ -105,7 +102,8 @@ typedef struct {
 /* Prototypes */
 void silc_server_protocols_register(void);
 void silc_server_protocols_unregister(void);
-int silc_server_protocol_ke_set_keys(SilcSKE ske,
+int silc_server_protocol_ke_set_keys(SilcServer server,
+                                    SilcSKE ske,
                                     SilcSocketConnection sock,
                                     SilcSKEKeyMaterial *keymat,
                                     SilcCipher cipher,