version 2.29, 1999/02/07 18:20:31
|
version 2.30, 1999/02/22 22:10:11
|
Line 54 PRIVATE void free_object (HTdns * me)
|
Line 54 PRIVATE void free_object (HTdns * me)
|
|
|
PRIVATE BOOL delete_object (HTList * list, HTdns * me) |
PRIVATE BOOL delete_object (HTList * list, HTdns * me) |
{ |
{ |
if (PROT_TRACE) |
HTTRACE(PROT_TRACE, "DNS Delete.. object %p from list %p\n" _ me _ list); |
HTTrace("DNS Delete.. object %p from list %p\n", me, list); |
|
HTList_removeObject(list, (void *) me); |
HTList_removeObject(list, (void *) me); |
free_object(me); |
free_object(me); |
return YES; |
return YES; |
Line 113 PUBLIC HTdns * HTDNS_add (HTList * list,
|
Line 112 PUBLIC HTdns * HTDNS_add (HTList * list,
|
if ((me->weight = (double *) HT_CALLOC(me->homes, sizeof(double))) == NULL) |
if ((me->weight = (double *) HT_CALLOC(me->homes, sizeof(double))) == NULL) |
HT_OUTOFMEM("HTDNS_add"); |
HT_OUTOFMEM("HTDNS_add"); |
me->addrlength = element->h_length; |
me->addrlength = element->h_length; |
if (PROT_TRACE) |
HTTRACE(PROT_TRACE, "DNS Add..... `%s\' with %d home(s) to %p\n" _ |
HTTrace("DNS Add..... `%s\' with %d home(s) to %p\n", |
host _ *homes _ list); |
host, *homes, list); |
|
HTList_addObject(list, (void *) me); |
HTList_addObject(list, (void *) me); |
return me; |
return me; |
} |
} |
Line 153 PUBLIC BOOL HTDNS_updateWeigths(HTdns *d
|
Line 151 PUBLIC BOOL HTDNS_updateWeigths(HTdns *d
|
} else { |
} else { |
*(dns->weight+cnt) = *(dns->weight+cnt) * passive; |
*(dns->weight+cnt) = *(dns->weight+cnt) * passive; |
} |
} |
if (PROT_TRACE) |
HTTRACE(PROT_TRACE, "DNS weight.. Home %d has weight %4.2f\n" _ cnt _ |
HTTrace("DNS weight.. Home %d has weight %4.2f\n", cnt, |
|
*(dns->weight+cnt)); |
*(dns->weight+cnt)); |
} |
} |
return YES; |
return YES; |
} |
} |
if (PROT_TRACE) |
HTTRACE(PROT_TRACE, "DNS weight.. Object %p not found'\n" _ dns); |
HTTrace("DNS weight.. Object %p not found'\n", dns); |
|
return NO; |
return NO; |
} |
} |
|
|
Line 226 PUBLIC int HTGetHostByName (HTHost * hos
|
Line 222 PUBLIC int HTGetHostByName (HTHost * hos
|
HTList *list; /* Current list in cache */ |
HTList *list; /* Current list in cache */ |
HTdns *pres = NULL; |
HTdns *pres = NULL; |
if (!host || !hostname) { |
if (!host || !hostname) { |
if (PROT_TRACE) |
HTTRACE(PROT_TRACE, "HostByName.. Bad argument\n"); |
HTTrace("HostByName.. Bad argument\n"); |
|
return -1; |
return -1; |
} |
} |
HTHost_setHome(host, 0); |
HTHost_setHome(host, 0); |
Line 252 PUBLIC int HTGetHostByName (HTHost * hos
|
Line 247 PUBLIC int HTGetHostByName (HTHost * hos
|
while ((pres = (HTdns *) HTList_nextObject(cur))) { |
while ((pres = (HTdns *) HTList_nextObject(cur))) { |
if (!strcmp(pres->hostname, hostname)) { |
if (!strcmp(pres->hostname, hostname)) { |
if (time(NULL) > pres->ntime + DNSTimeout) { |
if (time(NULL) > pres->ntime + DNSTimeout) { |
if (PROT_TRACE) |
HTTRACE(PROT_TRACE, "HostByName.. Refreshing cache\n"); |
HTTrace("HostByName.. Refreshing cache\n"); |
|
delete_object(list, pres); |
delete_object(list, pres); |
pres = NULL; |
pres = NULL; |
} |
} |
Line 339 PUBLIC char * HTGetHostBySock (int soc)
|
Line 333 PUBLIC char * HTGetHostBySock (int soc)
|
phost = gethostbyaddr((char *) iaddr, sizeof(struct in_addr), AF_INET); |
phost = gethostbyaddr((char *) iaddr, sizeof(struct in_addr), AF_INET); |
#endif |
#endif |
if (!phost) { |
if (!phost) { |
if (PROT_TRACE) |
HTTRACE(PROT_TRACE, "TCP......... Can't find internet node name for peer!!\n"); |
HTTrace("TCP......... Can't find internet node name for peer!!\n"); |
|
return NULL; |
return NULL; |
} |
} |
StrAllocCopy(name, phost->h_name); |
StrAllocCopy(name, phost->h_name); |
if (PROT_TRACE) HTTrace("TCP......... Peer name is `%s'\n", name); |
HTTRACE(PROT_TRACE, "TCP......... Peer name is `%s'\n" _ name); |
return name; |
return name; |
|
|
#endif /* not DECNET */ |
#endif /* not DECNET */ |