要在下面这段代码中找出10个bug,你能做到么?
<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>-->
1
#include
<
sys
/
types.h
>
2 #include < sys / socket.h >
3
4 const int PORT_NUM = 10000 ;
5
6 int echo_server()
7 {
8 struct sockaddr_inaddr;
9 int addr_len;
10 char buf[BUFSIZ];
11 int n_handle;
12 // Createthelocalendpoint.
13 int s_handle = socket(PFJJNIX,SOCK_DGRAM, 0 );
14 if (s_handle == - 1 ) return - 1 ;
15
16 // Setuptheaddressinformationwheretheserverlistens.
17 addr.sin_family = AF_INET;
18 addr.sin_port = PORT_NUM;
19 addr.sin_addr.addr = INADDR_ANY;
20
21 if (bind(s_handle,( struct sockaddr * ) & addr,
22 sizeof addr) == - 1 )
23 return - 1 ;
24
25 // Createanewcommunicationendpoint.
26 if (n_handle = accept(s_handle,( struct sockaddr * ) & addr,
27 & addr_len) != - 1 ){
28 int n;
29 while ((n = read(s_handle,buf, sizeof buf}) > 0 )
30 write(n_handle,buf,n);
31
32 close(n_handle);
33 }
34 return 0 ;
35 }
2 #include < sys / socket.h >
3
4 const int PORT_NUM = 10000 ;
5
6 int echo_server()
7 {
8 struct sockaddr_inaddr;
9 int addr_len;
10 char buf[BUFSIZ];
11 int n_handle;
12 // Createthelocalendpoint.
13 int s_handle = socket(PFJJNIX,SOCK_DGRAM, 0 );
14 if (s_handle == - 1 ) return - 1 ;
15
16 // Setuptheaddressinformationwheretheserverlistens.
17 addr.sin_family = AF_INET;
18 addr.sin_port = PORT_NUM;
19 addr.sin_addr.addr = INADDR_ANY;
20
21 if (bind(s_handle,( struct sockaddr * ) & addr,
22 sizeof addr) == - 1 )
23 return - 1 ;
24
25 // Createanewcommunicationendpoint.
26 if (n_handle = accept(s_handle,( struct sockaddr * ) & addr,
27 & addr_len) != - 1 ){
28 int n;
29 while ((n = read(s_handle,buf, sizeof buf}) > 0 )
30 write(n_handle,buf,n);
31
32 close(n_handle);
33 }
34 return 0 ;
35 }