projects
/
silc.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
fb91b15
)
Support for SILC style public keys added.
author
Pekka Riikonen
<priikone@silcnet.org>
Wed, 5 Jul 2000 06:13:04 +0000
(06:13 +0000)
committer
Pekka Riikonen
<priikone@silcnet.org>
Wed, 5 Jul 2000 06:13:04 +0000
(06:13 +0000)
apps/silcd/protocol.c
patch
|
blob
|
history
diff --git
a/apps/silcd/protocol.c
b/apps/silcd/protocol.c
index 79a487c8029e53f522696df4e29853870c8d2ee9..f499af83fb3489c97d7cfd172881bdd87b3db257 100644
(file)
--- a/
apps/silcd/protocol.c
+++ b/
apps/silcd/protocol.c
@@
-23,8
+23,11
@@
/*
* $Id$
* $Log$
/*
* $Id$
* $Log$
- * Revision 1.1 2000/06/27 11:36:56 priikone
- * Initial revision
+ * Revision 1.2 2000/07/05 06:13:04 priikone
+ * Support for SILC style public keys added.
+ *
+ * Revision 1.1.1.1 2000/06/27 11:36:56 priikone
+ * Imported from internal CVS/Added Log headers.
*
*
*/
*
*
*/
@@
-521,13
+524,14
@@
SILC_TASK_CALLBACK(silc_server_protocol_connection_auth)
SILC_LOG_DEBUG(("Public key authentication"));
if (auth_data) {
SilcIDListUnknown *conn_data;
SILC_LOG_DEBUG(("Public key authentication"));
if (auth_data) {
SilcIDListUnknown *conn_data;
+ SilcPublicKey pub_key;
SilcPKCS pkcs;
conn_data = (SilcIDListUnknown *)ctx->sock->user_data;
/* Load public key from file */
if (silc_pkcs_load_public_key(client->auth_data,
SilcPKCS pkcs;
conn_data = (SilcIDListUnknown *)ctx->sock->user_data;
/* Load public key from file */
if (silc_pkcs_load_public_key(client->auth_data,
- &p
kcs
) == FALSE) {
+ &p
ub_key
) == FALSE) {
/* Authentication failed */
SILC_LOG_ERROR(("Authentication failed "
/* Authentication failed */
SILC_LOG_ERROR(("Authentication failed "
@@
-540,6
+544,8
@@
SILC_TASK_CALLBACK(silc_server_protocol_connection_auth)
protocol, fd, 0, 300000);
return;
}
protocol, fd, 0, 300000);
return;
}
+
+ silc_pkcs_alloc(pub_key->name, &pkcs);
/* Verify hash value HASH from KE protocol */
if (pkcs->pkcs->verify(pkcs->context,
/* Verify hash value HASH from KE protocol */
if (pkcs->pkcs->verify(pkcs->context,
@@
-548,6
+554,7
@@
SILC_TASK_CALLBACK(silc_server_protocol_connection_auth)
ctx->ske->hash_len)
== TRUE) {
silc_pkcs_free(pkcs);
ctx->ske->hash_len)
== TRUE) {
silc_pkcs_free(pkcs);
+ silc_pkcs_public_key_free(pub_key);
break;
}
}
break;
}
}
@@
-619,13
+626,14
@@
SILC_TASK_CALLBACK(silc_server_protocol_connection_auth)
SILC_LOG_DEBUG(("Public key authentication"));
if (auth_data) {
SilcIDListUnknown *conn_data;
SILC_LOG_DEBUG(("Public key authentication"));
if (auth_data) {
SilcIDListUnknown *conn_data;
+ SilcPublicKey pub_key;
SilcPKCS pkcs;
conn_data = (SilcIDListUnknown *)ctx->sock->user_data;
/* Load public key from file */
if (silc_pkcs_load_public_key(serv->auth_data,
SilcPKCS pkcs;
conn_data = (SilcIDListUnknown *)ctx->sock->user_data;
/* Load public key from file */
if (silc_pkcs_load_public_key(serv->auth_data,
- &p
kcs
) == FALSE) {
+ &p
ub_key
) == FALSE) {
/* Authentication failed */
SILC_LOG_ERROR(("Authentication failed "
/* Authentication failed */
SILC_LOG_ERROR(("Authentication failed "
@@
-639,6
+647,8
@@
SILC_TASK_CALLBACK(silc_server_protocol_connection_auth)
return;
}
return;
}
+ silc_pkcs_alloc(pub_key->name, &pkcs);
+
/* Verify hash value HASH from KE protocol */
if (pkcs->pkcs->verify(pkcs->context,
auth_data, payload_len,
/* Verify hash value HASH from KE protocol */
if (pkcs->pkcs->verify(pkcs->context,
auth_data, payload_len,
@@
-646,6
+656,7
@@
SILC_TASK_CALLBACK(silc_server_protocol_connection_auth)
ctx->ske->hash_len)
== TRUE) {
silc_pkcs_free(pkcs);
ctx->ske->hash_len)
== TRUE) {
silc_pkcs_free(pkcs);
+ silc_pkcs_public_key_free(pub_key);
break;
}
}
break;
}
}
@@
-717,13
+728,14
@@
SILC_TASK_CALLBACK(silc_server_protocol_connection_auth)
SILC_LOG_DEBUG(("Public key authentication"));
if (auth_data) {
SilcIDListUnknown *conn_data;
SILC_LOG_DEBUG(("Public key authentication"));
if (auth_data) {
SilcIDListUnknown *conn_data;
+ SilcPublicKey pub_key;
SilcPKCS pkcs;
conn_data = (SilcIDListUnknown *)ctx->sock->user_data;
/* Load public key from file */
if (silc_pkcs_load_public_key(serv->auth_data,
SilcPKCS pkcs;
conn_data = (SilcIDListUnknown *)ctx->sock->user_data;
/* Load public key from file */
if (silc_pkcs_load_public_key(serv->auth_data,
- &p
kcs
) == FALSE) {
+ &p
ub_key
) == FALSE) {
/* Authentication failed */
SILC_LOG_ERROR(("Authentication failed "
/* Authentication failed */
SILC_LOG_ERROR(("Authentication failed "
@@
-737,12
+749,15
@@
SILC_TASK_CALLBACK(silc_server_protocol_connection_auth)
return;
}
return;
}
+ silc_pkcs_alloc(pub_key->name, &pkcs);
+
/* Verify hash value HASH from KE protocol */
if (pkcs->pkcs->verify(pkcs->context,
auth_data, payload_len,
ctx->ske->hash,
ctx->ske->hash_len)
== TRUE) {
/* Verify hash value HASH from KE protocol */
if (pkcs->pkcs->verify(pkcs->context,
auth_data, payload_len,
ctx->ske->hash,
ctx->ske->hash_len)
== TRUE) {
+ silc_pkcs_public_key_free(pub_key);
silc_pkcs_free(pkcs);
break;
}
silc_pkcs_free(pkcs);
break;
}