SEGV bug gevonden!
Guus Sliepen
guus at sliepen.warande.net
Sat Apr 22 15:24:56 CEST 2000
oi oi,
De segmentation faults treden op in req_key_h() in protocol.c:
int req_key_h(conn_list_t *cl, unsigned char *d, int len)
{
key_req_t *tmp = (key_req_t*)d;
conn_list_t *fw;
if(debug_lvl > 2)
syslog(LOG_DEBUG, "got REQ_KEY from " IP_ADDR_S " for " IP_ADDR_S,
IP_ADDR_V(tmp->from), IP_ADDR_V(tmp->to));
if((tmp->to & myself->vpn_mask) == (myself->vpn_ip & myself->vpn_mask))
{ /* hey! they want something from ME! :) */
send_key_answer(cl, tmp->from);
return 0;
}
fw = lookup_conn(tmp->to);
!!!!! Hier gaat het mis. lookup_conn() kan namelijk NULL teruggeven!
!!!!! En daar wordt niet op gecontroleerd --> SEGV!
if(debug_lvl > 3)
syslog(LOG_DEBUG, "Forwarding request for public key to " IP_ADDR_S,
IP_ADDR_V(fw->nexthop->vpn_ip));
if(send(fw->nexthop->meta_socket, tmp, sizeof(key_req_t), 0) < 0)
{
syslog(LOG_ERR, "send failed: %s:%d: %m", __FILE__, __LINE__);
return -1;
}
return 0;
}
Zow. Nog net gevonden voordat ik op de bus naar mijn ouders ga.
Prettig Pasen!
Guus Sliepen.
---
TINC development list, tinc-devel at nl.linux.org
Archive: http://mail.nl.linux.org/tinc-devel/
More information about the Tinc-devel
mailing list