static char sccsid
[] = "@(#)get_addrs.c 1.2 (Berkeley) %G%";
struct hostent
*gethostbyname();
struct servent
*getservbyname();
get_addrs(my_machine_name
, his_machine_name
)
/* look up the address of the local host */
hp
= gethostbyname(my_machine_name
);
if (hp
== (struct hostent
*) 0) {
printf("This machine doesn't exist. Boy, am I confused!\n");
bcopy(hp
->h_addr
, (char *)&my_machine_addr
, hp
->h_length
);
/* if he is on the same machine, then simply copy */
if (bcmp((char *)&his_machine_name
, (char *)&my_machine_name
,
sizeof(his_machine_name
)) == 0)
bcopy((char *)&my_machine_addr
, (char *)&his_machine_addr
,
sizeof(his_machine_name
));
/* look up the address of the recipient's machine */
hp
= gethostbyname(his_machine_name
);
if (hp
== (struct hostent
*) 0 ) {
printf("%s is an unknown host\n", his_machine_name
);
bcopy(hp
->h_addr
, (char *) &his_machine_addr
, hp
->h_length
);
/* find the daemon portal */
sp
= getservbyname("talk", "udp");
p_error("This machine doesn't support talk");
daemon_port
= sp
->s_port
;