-/* $OpenBSD: kex.h,v 1.19 2001/04/03 23:32:12 markus Exp $ */
+/* $OpenBSD: kex.h,v 1.23 2001/06/23 02:34:28 markus Exp $ */
/*
* Copyright (c) 2000 Markus Friedl. All rights reserved.
struct Kex {
u_char *session_id;
int session_id_len;
- Newkeys *keys[MODE_MAX];
+ Newkeys *newkeys[MODE_MAX];
int we_need;
int server;
char *name;
int kex_type;
Buffer my;
Buffer peer;
- int newkeys;
+ int done;
int flags;
char *client_version_string;
char *server_version_string;
- int (*check_host_key)(Key *hostkey);
+ int (*verify_host_key)(Key *hostkey);
Key *(*load_host_key)(int type);
};
-Kex *kex_start(char *proposal[PROPOSAL_MAX]);
-void kex_send_newkeys(void);
+Kex *kex_setup(char *proposal[PROPOSAL_MAX]);
+void kex_finish(Kex *kex);
+
void kex_send_kexinit(Kex *kex);
-void kex_protocol_error(int type, int plen, void *ctxt);
+void kex_input_kexinit(int type, int plen, void *ctxt);
void kex_derive_keys(Kex *k, u_char *hash, BIGNUM *shared_secret);
void kexdh(Kex *);