diff --git a/CHANGES b/CHANGES index 52848f35dd..ff9cea409d 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +1963. [port] Tru64 4.0E doesn't support send() and recv(). + [RT #15586] + 1962. [bug] Named failed to clear old update-policy when it was removed. [RT #15491] diff --git a/lib/isc/unix/entropy.c b/lib/isc/unix/entropy.c index 50506634e4..9c41f14375 100644 --- a/lib/isc/unix/entropy.c +++ b/lib/isc/unix/entropy.c @@ -15,7 +15,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: entropy.c,v 1.60.2.3.8.11 2005/07/12 05:47:43 marka Exp $ */ +/* $Id: entropy.c,v 1.60.2.3.8.12 2006/01/05 03:46:31 marka Exp $ */ /* * This is the system depenedent part of the ISC entropy API. @@ -127,7 +127,7 @@ get_from_usocketsource(isc_entropysource_t *source, isc_uint32_t desired) { switch ( source->sources.usocket.status ) { case isc_usocketsource_ndesired: buf[0] = ndesired; - if ((n = send(fd, buf, 1, 0)) < 0) { + if ((n = sendto(fd, buf, 1, 0, NULL, 0)) < 0) { if (errno == EWOULDBLOCK || errno == EINTR || errno == ECONNRESET) goto out; @@ -142,7 +142,7 @@ get_from_usocketsource(isc_entropysource_t *source, isc_uint32_t desired) { case isc_usocketsource_connected: buf[0] = 1; buf[1] = ndesired; - if ((n = send(fd, buf, 2, 0)) < 0) { + if ((n = sendto(fd, buf, 2, 0, NULL, 0)) < 0) { if (errno == EWOULDBLOCK || errno == EINTR || errno == ECONNRESET) goto out; @@ -159,12 +159,12 @@ get_from_usocketsource(isc_entropysource_t *source, isc_uint32_t desired) { /*FALLTHROUGH*/ case isc_usocketsource_wrote: - if (recv(fd, buf, 1, 0) != 1) { + if (recvfrom(fd, buf, 1, 0, NULL, NULL) != 1) { if (errno == EAGAIN) { /* * The problem of EAGAIN (try again * later) is a major issue on HP-UX. - * Solaris actually tries the recv + * Solaris actually tries the recvfrom * call again, while HP-UX just dies. * This code is an attempt to let the * entropy pool fill back up (at least