Index: forwarder.c =================================================================== RCS file: /home/wensong/cvsroot/tcpsp/example/forwarder.c,v retrieving revision 1.1.1.1 diff -u -r1.1.1.1 forwarder.c --- forwarder.c 2002/04/18 14:35:01 1.1.1.1 +++ forwarder.c 2002/04/24 11:42:07 @@ -76,6 +76,7 @@ listenaddr.sin_addr.s_addr = htonl(INADDR_ANY); listenaddr.sin_port = htons (8888); + flag = 1; setsockopt(listenfd, SOL_SOCKET, SO_REUSEADDR, &flag, sizeof(flag)); if (bind(listenfd, (struct sockaddr *)&listenaddr, @@ -88,7 +89,12 @@ exit(1); } + cliaddrlen = sizeof(cliaddr); fd1 = accept(listenfd, (struct sockaddr *)&cliaddr, &cliaddrlen); + if (fd1 == -1) { + printf("accept error.\n"); + exit(1); + } n = read(fd1, buf, len); if (n < 0 && errno == ECONNRESET) {