END_TEST START_TEST (sockaddr_IPv4_sameaddr) { fail_unless( sockaddr_sameAddr((struct sockaddr *)sockaddr_IPv4_1, (struct sockaddr *)sockaddr_IPv4_1), "samaddr failed"); fail_unless( sockaddr_sameAddr((struct sockaddr *)sockaddr_IPv4_1, (struct sockaddr *)sockaddr_IPv4_3), "samaddr failed"); fail_unless( sockaddr_sameAddr((struct sockaddr *)sockaddr_IPv4_any, (struct sockaddr *)sockaddr_IPv4_any_2), "samaddr failed"); fail_if ( sockaddr_sameAddr((struct sockaddr *)sockaddr_IPv4_1, (struct sockaddr *)sockaddr_IPv4_2), "samaddr failed"); fail_if ( sockaddr_sameAddr((struct sockaddr *)sockaddr_IPv4_1, (struct sockaddr *)sockaddr_IPv6_1 ), "sameaddr failed"); }
bool sockaddr_alike(const struct sockaddr * a, const struct sockaddr * b) { if (a && b && sockaddr_sameAddr(a,b) && sockaddr_samePort(a,b)){ return true; } return false; }
void handleStunRespSucsessfull(struct hiutResult* result, int ttl, struct sockaddr* srcAddr, struct sockaddr* rflxAddr, int rtt, int retransmits) { /* char addr[SOCKADDR_MAX_STRLEN]; */ (void) rflxAddr; if (ttl == MAX_TTL) { /* Part of far end alive test */ result->remoteAlive = true; result->currentTTL = 1; stunlib_createId(&result->currStunMsgId); StunClient_startSTUNTrace( (STUN_CLIENT_DATA*)result->stunCtx, result, (struct sockaddr*)&result->remoteAddr, (struct sockaddr*)&result->localAddr, false, result->username, result->password, result->currentTTL, result->currStunMsgId, result->sockfd, result->sendFunc, StunStatusCallBack, NULL ); return; } bool done = result->num_traces < result->max_recuring ? false : true; if ( sockaddr_sameAddr( (struct sockaddr*)&result->remoteAddr,srcAddr ) ) { if (result->path_max_ttl >= ttl) { result->path_max_ttl = ttl; sendCallback(result, srcAddr, ttl, rtt, retransmits, true, done); resartIfNotDone(result); return; } } }