updates.
[silc.git] / apps / silcd / protocol.h
index 1977bf8aa05c5be282d61aed9e5b61c7b92c46c8..21c3d193bd987bf00aa024713eae8b88e2a6e439 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. */
@@ -43,6 +44,11 @@ typedef struct {
   void *dest_id;
   SilcIdType dest_id_type;
 
+  /* Pointer to the configurations. */
+  void *cconfig;
+  void *sconfig;
+  void *rconfig;
+
   SilcTask timeout_task;
   SilcPacketContext *packet;
   SilcSKE ske;
@@ -76,6 +82,11 @@ typedef struct {
   void *dest_id;
   SilcIdType dest_id_type;
 
+  /* Pointer to the configurations. */
+  void *cconfig;
+  void *sconfig;
+  void *rconfig;
+
   SilcTask timeout_task;
   SilcPacketContext *packet;
   uint16 conn_type;
@@ -89,7 +100,6 @@ typedef struct {
   bool responder;                  /* TRUE if we are receiving party */
   bool pfs;                        /* TRUE if PFS is to be used */
   SilcSKE ske;                     /* Defined if PFS is used */
-  SilcSKEKeyMaterial *keymat;      /* Defined if PFS is used */
   SilcPacketContext *packet;
 } SilcServerRekeyInternalContext;
 
@@ -103,8 +113,7 @@ int silc_server_protocol_ke_set_keys(SilcSKE ske,
                                     SilcPKCS pkcs,
                                     SilcHash hash,
                                     SilcHmac hmac,
+                                    SilcSKEDiffieHellmanGroup group,
                                     bool is_responder);
-void silc_server_protocol_rekey_generate(SilcServer server,
-                                        SilcServerRekeyInternalContext *ctx);
 
 #endif