include: Add declaration of sockaddr_storage to ws2def.h.
Move other declarations that belong in ws2def.h from winsock2.h.
This commit is contained in:
parent
47ae95ccce
commit
cb4265074f
3 changed files with 73 additions and 22 deletions
|
@ -473,6 +473,7 @@ SRCDIR_INCLUDES = \
|
||||||
wmistr.h \
|
wmistr.h \
|
||||||
wnaspi32.h \
|
wnaspi32.h \
|
||||||
wownt32.h \
|
wownt32.h \
|
||||||
|
ws2def.h \
|
||||||
ws2ipdef.h \
|
ws2ipdef.h \
|
||||||
ws2spi.h \
|
ws2spi.h \
|
||||||
ws2tcpip.h \
|
ws2tcpip.h \
|
||||||
|
|
|
@ -47,6 +47,7 @@
|
||||||
#include <winsock.h>
|
#include <winsock.h>
|
||||||
#undef __WINE_WINSOCK2__
|
#undef __WINE_WINSOCK2__
|
||||||
|
|
||||||
|
#include <ws2def.h>
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
@ -421,28 +422,6 @@ typedef struct _BLOB {
|
||||||
} BLOB, *LPBLOB;
|
} BLOB, *LPBLOB;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef __CSADDR_DEFINED__
|
|
||||||
#define __CSADDR_DEFINED__
|
|
||||||
|
|
||||||
typedef struct _SOCKET_ADDRESS {
|
|
||||||
LPSOCKADDR lpSockaddr;
|
|
||||||
INT iSockaddrLength;
|
|
||||||
} SOCKET_ADDRESS, *PSOCKET_ADDRESS, *LPSOCKET_ADDRESS;
|
|
||||||
|
|
||||||
typedef struct _CSADDR_INFO {
|
|
||||||
SOCKET_ADDRESS LocalAddr;
|
|
||||||
SOCKET_ADDRESS RemoteAddr;
|
|
||||||
INT iSocketType;
|
|
||||||
INT iProtocol;
|
|
||||||
} CSADDR_INFO, *PCSADDR_INFO, *LPCSADDR_INFO;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*socket address list */
|
|
||||||
typedef struct _SOCKET_ADDRESS_LIST {
|
|
||||||
INT iAddressCount;
|
|
||||||
SOCKET_ADDRESS Address[1];
|
|
||||||
} SOCKET_ADDRESS_LIST, *LPSOCKET_ADDRESS_LIST;
|
|
||||||
|
|
||||||
/* addressfamily protocol pairs */
|
/* addressfamily protocol pairs */
|
||||||
typedef struct _AFPROTOCOLS {
|
typedef struct _AFPROTOCOLS {
|
||||||
INT iAddressFamily;
|
INT iAddressFamily;
|
||||||
|
|
71
include/ws2def.h
Normal file
71
include/ws2def.h
Normal file
|
@ -0,0 +1,71 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2009 Robert Shearman
|
||||||
|
*
|
||||||
|
* This library is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
* License as published by the Free Software Foundation; either
|
||||||
|
* version 2.1 of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This library is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with this library; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _WS2DEF_
|
||||||
|
#define _WS2DEF_
|
||||||
|
|
||||||
|
/* FIXME: #include <inaddr.h> */
|
||||||
|
|
||||||
|
#ifdef USE_WS_PREFIX
|
||||||
|
#define WS(x) WS_##x
|
||||||
|
#else
|
||||||
|
#define WS(x) x
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __CSADDR_DEFINED__
|
||||||
|
#define __CSADDR_DEFINED__
|
||||||
|
|
||||||
|
typedef struct _SOCKET_ADDRESS {
|
||||||
|
LPSOCKADDR lpSockaddr;
|
||||||
|
INT iSockaddrLength;
|
||||||
|
} SOCKET_ADDRESS, *PSOCKET_ADDRESS, *LPSOCKET_ADDRESS;
|
||||||
|
|
||||||
|
typedef struct _CSADDR_INFO {
|
||||||
|
SOCKET_ADDRESS LocalAddr;
|
||||||
|
SOCKET_ADDRESS RemoteAddr;
|
||||||
|
INT iSocketType;
|
||||||
|
INT iProtocol;
|
||||||
|
} CSADDR_INFO, *PCSADDR_INFO, *LPCSADDR_INFO;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef USE_WS_PREFIX
|
||||||
|
#define WS__SS_MAXSIZE 128
|
||||||
|
#define WS__SS_ALIGNSIZE (sizeof(__int64))
|
||||||
|
#define WS__SS_PAD1SIZE (WS__SS_ALIGNSIZE - sizeof(short))
|
||||||
|
#define WS__SS_PAD2SIZE (WS__SS_MAXSIZE - 2 * WS__SS_ALIGNSIZE)
|
||||||
|
#else
|
||||||
|
#define _SS_MAXSIZE 128
|
||||||
|
#define _SS_ALIGNSIZE (sizeof(__int64))
|
||||||
|
#define _SS_PAD1SIZE (_SS_ALIGNSIZE - sizeof(short))
|
||||||
|
#define _SS_PAD2SIZE (_SS_MAXSIZE - 2 * _SS_ALIGNSIZE)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
typedef struct WS(sockaddr_storage) {
|
||||||
|
short ss_family;
|
||||||
|
char __ss_pad1[WS(_SS_PAD1SIZE)];
|
||||||
|
__int64 __ss_align;
|
||||||
|
char __ss_pad2[WS(_SS_PAD2SIZE)];
|
||||||
|
} SOCKADDR_STORAGE, *PSOCKADDR_STORAGE, *LPSOCKADDR_STORAGE;
|
||||||
|
|
||||||
|
/*socket address list */
|
||||||
|
typedef struct _SOCKET_ADDRESS_LIST {
|
||||||
|
INT iAddressCount;
|
||||||
|
SOCKET_ADDRESS Address[1];
|
||||||
|
} SOCKET_ADDRESS_LIST, *LPSOCKET_ADDRESS_LIST;
|
||||||
|
|
||||||
|
#endif /* _WS2DEF_ */
|
Loading…
Add table
Reference in a new issue