more details to track a warning in tls handshakes

plus make exit policy comparisons not always reject


svn:r559
This commit is contained in:
Roger Dingledine 2003-10-07 23:54:02 +00:00
parent aca4bc5126
commit 543e4e8fd5
2 changed files with 10 additions and 7 deletions

View File

@ -188,12 +188,14 @@ static int connection_tls_finish_handshake(connection_t *conn) {
if(tor_tls_peer_has_cert(conn->tls)) { /* it's another OR */
pk = tor_tls_verify(conn->tls);
if(!pk) {
log_fn(LOG_WARNING,"Other side has a cert but it's invalid. Closing.");
log_fn(LOG_WARNING,"Other side (%s:%p) has a cert but it's invalid. Closing.",
conn->address, conn->port);
return -1;
}
router = router_get_by_link_pk(pk);
if (!router) {
log_fn(LOG_WARNING,"Unrecognized public key from peer. Closing.");
log_fn(LOG_WARNING,"Unrecognized public key from peer (%s:%d). Closing.",
conn->address, conn->port);
crypto_free_pk_env(pk);
return -1;
}
@ -223,12 +225,14 @@ static int connection_tls_finish_handshake(connection_t *conn) {
}
pk = tor_tls_verify(conn->tls);
if(!pk) {
log_fn(LOG_WARNING,"Other side has a cert but it's invalid. Closing.");
log_fn(LOG_WARNING,"Other side (%s:%d) has a cert but it's invalid. Closing.",
conn->address, conn->port);
return -1;
}
router = router_get_by_link_pk(pk);
if (!router) {
log_fn(LOG_WARNING,"Unrecognized public key from peer. Closing.");
log_fn(LOG_WARNING,"Unrecognized public key from peer (%s:%d). Closing.",
conn->address, conn->port);
crypto_free_pk_env(pk);
return -1;
}

View File

@ -1083,7 +1083,8 @@ int router_compare_to_exit_policy(connection_t *conn) {
assert(tmpe->port);
log_fn(LOG_DEBUG,"Considering exit policy %s:%s",tmpe->address, tmpe->port);
if(inet_aton(tmpe->address,&in) == 0) { /* malformed IP. reject. */
if(strcmp(tmpe->address,"*") &&
inet_aton(tmpe->address,&in) == 0) { /* malformed IP. reject. */
log_fn(LOG_WARNING,"Malformed IP %s in exit policy. Rejecting.",tmpe->address);
return -1;
}
@ -1287,8 +1288,6 @@ int router_dump_router_to_string(char *s, int maxlen, routerinfo_t *router,
return written+1;
}
/*
Local Variables:
mode:c