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

       

Вспомогательный код для Windows


Заголовочный файл skel.h

Для компиляции примеров программ на платформе Windows вы можете пользоваться тем же файлом etcp. h, что и для UNIX (листинг П1.1). Вся системно зависимая информация находится в заголовочном файле skel. h, версия которого для Windows приведена в листинге П2.1.

Листинг П2.1. Версия skel.h для Windows

1       #ifndef _SKEL_H_

2       #define _SKEL_H_

3       /*  Версия Winsock.   */

4       #include  <windows.h>

5       #include  <winsock2.h>

6       struct  timezone

7       {

8             long tz_minuteswest;

9             long tz_dsttime;

10     };



11     typedef unsigned int u_int32_t;

12     #define EMSGSIZE          WSAEMSGSIZE

13     #define INITO           init ( argv ) ;

14     #define EXIT(s)          do { WSACleanup () ; exit ( ( s ) ) ; } \

15     while ( 0 )

16     #define CLOSE (s)          if ( closesocket( s ) ) \

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

18     #define errno            ( GetLastError() )

19     #define set_errno(e)      SetLastError( ( e ) )

20     #define isvalidsock(s)     ( ( s ) != SOCKET_ERROR )

21     #define bzero(b,n)  memset ( ( b ), 0, ( n ) )

22     #define sleep(t)          Sleep( ( t ) * 1000 )

23     #define WINDOWS

24     #endif  /* _SKEL_H_ */



Содержание раздела