- address.sin_family = AF_INET;
- address.sin_addr = *(struct in_addr *) *hostinfo->h_addr_list;
- address.sin_port = htons(atoi(*(++argv)));
+ if (do_listen) {
+ if (listen(sfd, 1) < 0)
+ perror_msg_and_die("listen");
+
+ if ((tmpfd = accept(sfd, (struct sockaddr *) &address, &opt)) < 0)
+ perror_msg_and_die("accept");