1 #include	"unp.h"
2 
3 int
main(int argc,char ** argv)4 main(int argc, char **argv)
5 {
6 	int				sockfd, n;
7 	char			recvline[MAXLINE + 1];
8 	socklen_t		salen;
9 	struct sockaddr	*sa, *sabind;
10 
11 	if (argc != 3)
12 		err_quit("usage: test2 <hostname/IPaddress> <service/port#>");
13 
14 	sockfd = Udp_client(argv[1], argv[2], (void **) &sa, &salen);
15 
16 	/* Same as daytimeudpcli1, but we explicitly bind the wildcard */
17 	sabind = Malloc(salen);
18 	bzero(sabind, salen);
19 	sabind->sa_family = sa->sa_family;
20 	Bind(sockfd, sabind, salen);
21 	printf("bound %s\n", Sock_ntop(sabind, salen));
22 
23 	printf("sending to %s\n", Sock_ntop_host(sa, salen));
24 
25 	Sendto(sockfd, "", 1, 0, sa, salen);	/* send 1-byte datagram */
26 
27 	n = Recvfrom(sockfd, recvline, MAXLINE, 0, NULL, NULL);
28 	recvline[n] = 0;	/* null terminate */
29 	Fputs(recvline, stdout);
30 
31 	exit(0);
32 }
33