Эффективное программирование TCP-IP


         

Далее будем пользоваться функцией tcp_server,


Далее будем пользоваться функцией tcp_server, если не возникнет необхомо модифицировать каркас кода.

Листинг 2.5. Функция tcp_server

1    SОСКЕТ tcp_server( char *hname, char *sname )

2    {

3    struct sockaddr_in local;

4    SOCKET s;

5    const int on = 1;

6    set_address( hname, sname, &local, "tcp" );

7    s = socket( AF_INET, SOCK_STREAM, 0 );

8    if ( !isvalidsock( s ) )

9      error( 1, errno, "ошибка вызова socket" );

10   if ( setsockopt ( s, SOL_SOCKET, SO_REUSEADDR,

11     ( char * )&on, sizeoff on ) ) )

12     error( 1, errno, "ошибка вызова setsockopt" );

13   if ( bind( s, ( struct sockaddr * } &local,

14     sizeof( local ) ) )

15     error( 1, errno, "ошибка вызова bind" );

16   if ( listen( s, NLISTEN ) )

17     error( 1, errno, "ошибка вызова listen" );

18   return s;

19   }


Содержание  Назад  Вперед





Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий