* interface. portmap caches interfaces, and on DHCP clients,
* it could be that only loopback is started at this time.
*/
-static void
+static bool_t
__get_myaddress (struct sockaddr_in *addr)
{
int s;
*addr = *((struct sockaddr_in *) &ifr->ifr_addr);
addr->sin_port = htons (PMAPPORT);
__close (s);
- return;
+ return TRUE;
}
ifr++;
}
goto again;
}
__close (s);
+ return FALSE;
}
struct pmap parms;
bool_t rslt;
- __get_myaddress (&myaddress);
+ if (!__get_myaddress (&myaddress))
+ return FALSE;
client = clntudp_bufcreate (&myaddress, PMAPPROG, PMAPVERS,
timeout, &socket, RPCSMALLMSGSIZE, RPCSMALLMSGSIZE);
if (client == (CLIENT *) NULL)
struct pmap parms;
bool_t rslt;
- __get_myaddress (&myaddress);
+ if (!__get_myaddress (&myaddress))
+ return FALSE;
client = clntudp_bufcreate (&myaddress, PMAPPROG, PMAPVERS,
timeout, &socket, RPCSMALLMSGSIZE, RPCSMALLMSGSIZE);
if (client == (CLIENT *) NULL)