ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

winsock16.h
Go to the documentation of this file.
00001 /*
00002  * Copyright (C) the Wine project
00003  *
00004  * This library is free software; you can redistribute it and/or
00005  * modify it under the terms of the GNU Lesser General Public
00006  * License as published by the Free Software Foundation; either
00007  * version 2.1 of the License, or (at your option) any later version.
00008  *
00009  * This library is distributed in the hope that it will be useful,
00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012  * Lesser General Public License for more details.
00013  *
00014  * You should have received a copy of the GNU Lesser General Public
00015  * License along with this library; if not, write to the Free Software
00016  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
00017  */
00018 
00019 #ifndef __WINE_WINE_WINSOCK16_H
00020 #define __WINE_WINE_WINSOCK16_H
00021 
00022 #include <stdarg.h>
00023 #include <windef.h>
00024 #include <winbase.h>
00025 #include <pshpack1.h>
00026 
00027 typedef UINT16 SOCKET16;
00028 
00029 typedef struct
00030 {
00031         UINT16    fd_count;               /* how many are SET? */
00032         SOCKET16  fd_array[WS_FD_SETSIZE];   /* an array of SOCKETs */
00033 } ws_fd_set16;
00034 
00035 /* ws_hostent16, ws_protoent16, ws_servent16, ws_netent16
00036  * are 1-byte aligned here ! */
00037 typedef struct ws_hostent16
00038 {
00039         SEGPTR  h_name;         /* official name of host */
00040         SEGPTR  h_aliases;      /* alias list */
00041         INT16   h_addrtype;     /* host address type */
00042         INT16   h_length;       /* length of address */
00043         SEGPTR  h_addr_list;    /* list of addresses from name server */
00044 } _ws_hostent16;
00045 
00046 typedef struct ws_protoent16
00047 {
00048         SEGPTR  p_name;         /* official protocol name */
00049         SEGPTR  p_aliases;      /* alias list */
00050         INT16   p_proto;        /* protocol # */
00051 } _ws_protoent16;
00052 
00053 typedef struct ws_servent16
00054 {
00055         SEGPTR  s_name;         /* official service name */
00056         SEGPTR  s_aliases;      /* alias list */
00057         INT16   s_port;         /* port # */
00058         SEGPTR  s_proto;        /* protocol to use */
00059 } _ws_servent16;
00060 
00061 typedef struct ws_netent16
00062 {
00063         SEGPTR  n_name;         /* official name of net */
00064         SEGPTR  n_aliases;      /* alias list */
00065         INT16   n_addrtype;     /* net address type */
00066         INT     n_net;          /* network # */
00067 } _ws_netent16;
00068 
00069 typedef struct WSAData16
00070 {
00071     WORD                    wVersion;
00072     WORD                    wHighVersion;
00073     char                    szDescription[WSADESCRIPTION_LEN+1];
00074     char                    szSystemStatus[WSASYS_STATUS_LEN+1];
00075     WORD                    iMaxSockets;
00076     WORD                    iMaxUdpDg;
00077     SEGPTR                  lpVendorInfo;
00078 } WSADATA16, *LPWSADATA16;
00079 
00080 #include <poppack.h>
00081 
00082 #define WS_FD_CLR16(fd, set)   __WS_FD_CLR((fd),(set), ws_fd_set16)
00083 #define WS_FD_SET16(fd, set)   __WS_FD_SET1((fd),(set), ws_fd_set16)
00084 #define WS_FD_ZERO16(set)      (((ws_fd_set16*)(set))->fd_count=0)
00085 #define WS_FD_ISSET16(fd, set) __WSAFDIsSet16((SOCKET16)(fd), (ws_fd_set16*)(set))
00086 
00087 #define INVALID_SOCKET16  ((SOCKET16)(~0))
00088 
00089 INT16     WINAPI __WSAFDIsSet16( SOCKET16, ws_fd_set16 * );
00090 INT16     WINAPI WSAStartup16(UINT16 wVersionRequired, LPWSADATA16 lpWSAData);
00091 void      WINAPI WSASetLastError16(INT16 iError);
00092 INT16     WINAPI WSAUnhookBlockingHook16(void);
00093 FARPROC16 WINAPI WSASetBlockingHook16(FARPROC16 lpBlockFunc);
00094 HANDLE16  WINAPI WSAAsyncGetServByName16(HWND16 hWnd, UINT16 wMsg, LPCSTR name, LPCSTR proto,
00095                                          SEGPTR buf, INT16 buflen);
00096 HANDLE16  WINAPI WSAAsyncGetServByPort16(HWND16 hWnd, UINT16 wMsg, INT16 port,
00097                                          LPCSTR proto, SEGPTR buf, INT16 buflen);
00098 HANDLE16  WINAPI WSAAsyncGetProtoByName16(HWND16 hWnd, UINT16 wMsg,
00099                                           LPCSTR name, SEGPTR buf, INT16 buflen);
00100 HANDLE16  WINAPI WSAAsyncGetProtoByNumber16(HWND16 hWnd, UINT16 wMsg,
00101                                             INT16 number, SEGPTR buf, INT16 buflen);
00102 HANDLE16  WINAPI WSAAsyncGetHostByName16(HWND16 hWnd, UINT16 wMsg,
00103                                          LPCSTR name, SEGPTR buf, INT16 buflen);
00104 HANDLE16  WINAPI WSAAsyncGetHostByAddr16(HWND16 hWnd, UINT16 wMsg, LPCSTR addr,
00105                               INT16 len, INT16 type, SEGPTR buf, INT16 buflen);
00106 INT16     WINAPI WSACancelAsyncRequest16(HANDLE16 hAsyncTaskHandle);
00107 INT16     WINAPI WSAAsyncSelect16(SOCKET16 s, HWND16 hWnd, UINT16 wMsg, LONG lEvent);
00108 INT16     WINAPI WSARecvEx16(SOCKET16 s, char *buf, INT16 len, INT16 *flags);
00109 
00110 #endif /* __WINE_WINE_WINSOCK16_H */

Generated on Sun May 27 2012 04:33:21 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.