projects
/
silc.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
e8d530a
)
Added backwards support for old server. Send empty Client ID
author
Pekka Riikonen
<priikone@silcnet.org>
Tue, 1 May 2007 16:50:46 +0000
(16:50 +0000)
committer
Pekka Riikonen
<priikone@silcnet.org>
Tue, 1 May 2007 16:50:46 +0000
(16:50 +0000)
during SKE.
lib/silcclient/client_connect.c
patch
|
blob
|
history
diff --git
a/lib/silcclient/client_connect.c
b/lib/silcclient/client_connect.c
index ee8eb611afc96518485687ad98edfcdfe64f012d..f43e13d3c7cf3d0effac1a17e7c36dfa8d1972c5 100644
(file)
--- a/
lib/silcclient/client_connect.c
+++ b/
lib/silcclient/client_connect.c
@@
-180,7
+180,7
@@
static void silc_client_ke_completion(SilcSKE ske,
silc_ske_free_rekey_material(rekey);
silc_fsm_next(fsm, silc_client_st_connect_error);
silc_ske_free_rekey_material(rekey);
silc_fsm_next(fsm, silc_client_st_connect_error);
- SILC_FSM_CALL_CONTINUE(fsm);
+ SILC_FSM_CALL_CONTINUE
_SYNC
(fsm);
return;
}
return;
}
@@
-202,7
+202,7
@@
static void silc_client_ke_completion(SilcSKE ske,
silc_ske_free_rekey_material(rekey);
silc_fsm_next(fsm, silc_client_st_connect_error);
silc_ske_free_rekey_material(rekey);
silc_fsm_next(fsm, silc_client_st_connect_error);
- SILC_FSM_CALL_CONTINUE(fsm);
+ SILC_FSM_CALL_CONTINUE
_SYNC
(fsm);
return;
}
return;
}
@@
-223,7
+223,7
@@
static void silc_client_ke_completion(SilcSKE ske,
silc_ske_free_rekey_material(rekey);
silc_fsm_next(fsm, silc_client_st_connect_error);
silc_ske_free_rekey_material(rekey);
silc_fsm_next(fsm, silc_client_st_connect_error);
- SILC_FSM_CALL_CONTINUE(fsm);
+ SILC_FSM_CALL_CONTINUE
_SYNC
(fsm);
return;
}
return;
}
@@
-463,6
+463,7
@@
SILC_FSM_STATE(silc_client_st_connect_key_exchange)
SilcClientConnection conn = fsm_context;
SilcClient client = conn->client;
SilcSKEParamsStruct params;
SilcClientConnection conn = fsm_context;
SilcClient client = conn->client;
SilcSKEParamsStruct params;
+ SilcClientID cid;
SILC_LOG_DEBUG(("Starting key exchange protocol"));
SILC_LOG_DEBUG(("Starting key exchange protocol"));
@@
-503,6
+504,12
@@
SILC_FSM_STATE(silc_client_st_connect_key_exchange)
/** Run key exchange (TCP) */
silc_fsm_next(fsm, silc_client_st_connect_auth_resolve);
/** Run key exchange (TCP) */
silc_fsm_next(fsm, silc_client_st_connect_auth_resolve);
+ /* Old server version requires empty Client ID in packets. Remove this
+ backwards support somepoint after 1.1 server is released. */
+ memset(&cid, 0, sizeof(cid));
+ cid.ip.data_len = 4;
+ silc_packet_set_ids(conn->stream, SILC_ID_CLIENT, &cid, 0, NULL);
+
SILC_FSM_CALL(conn->internal->op = silc_ske_initiator(conn->internal->ske,
conn->stream,
¶ms, NULL));
SILC_FSM_CALL(conn->internal->op = silc_ske_initiator(conn->internal->ske,
conn->stream,
¶ms, NULL));