Xwinsock.h revision 17ca54c3
117ca54c3Smrg/* 217ca54c3Smrg 317ca54c3SmrgCopyright 1996, 1998 The Open Group 417ca54c3Smrg 517ca54c3SmrgPermission to use, copy, modify, distribute, and sell this software and its 617ca54c3Smrgdocumentation for any purpose is hereby granted without fee, provided that 717ca54c3Smrgthe above copyright notice appear in all copies and that both that 817ca54c3Smrgcopyright notice and this permission notice appear in supporting 917ca54c3Smrgdocumentation. 1017ca54c3Smrg 1117ca54c3SmrgThe above copyright notice and this permission notice shall be included 1217ca54c3Smrgin all copies or substantial portions of the Software. 1317ca54c3Smrg 1417ca54c3SmrgTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 1517ca54c3SmrgOR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 1617ca54c3SmrgITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 1717ca54c3SmrgSHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABIL- 1817ca54c3SmrgITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 1917ca54c3SmrgOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 2017ca54c3SmrgIN THE SOFTWARE. 2117ca54c3Smrg 2217ca54c3SmrgExcept as contained in this notice, the name of The Open Group shall 2317ca54c3Smrgnot be used in advertising or otherwise to promote the sale, use or 2417ca54c3Smrgother dealings in this Software without prior written authorization from 2517ca54c3SmrgThe Open Group. 2617ca54c3Smrg 2717ca54c3Smrg*/ 2817ca54c3Smrg 2917ca54c3Smrg/* 3017ca54c3Smrg * This header file has for sole purpose to allow to include winsock.h 3117ca54c3Smrg * without getting any name conflicts with our code. 3217ca54c3Smrg * Conflicts come from the fact that including winsock.h actually pulls 3317ca54c3Smrg * in the whole Windows API... 3417ca54c3Smrg */ 3517ca54c3Smrg 3617ca54c3Smrg#undef _XFree86Server 3717ca54c3Smrg#ifdef XFree86Server 3817ca54c3Smrg# define _XFree86Server 3917ca54c3Smrg# undef XFree86Server 4017ca54c3Smrg#endif 4117ca54c3Smrg 4217ca54c3Smrg/* 4317ca54c3Smrg * mingw-w64 headers define BOOL as a typedef, protecting against macros 4417ca54c3Smrg * mingw.org headers define BOOL in terms of WINBOOL 4517ca54c3Smrg * ... so try to come up with something which works with both :-) 4617ca54c3Smrg */ 4717ca54c3Smrg#define _NO_BOOL_TYPEDEF 4817ca54c3Smrg#define BOOL WINBOOL 4917ca54c3Smrg#define INT32 wINT32 5017ca54c3Smrg#undef Status 5117ca54c3Smrg#define Status wStatus 5217ca54c3Smrg#define ATOM wATOM 5317ca54c3Smrg#define BYTE wBYTE 5417ca54c3Smrg#define FreeResource wFreeResource 5517ca54c3Smrg#include <winsock2.h> 5617ca54c3Smrg#undef Status 5717ca54c3Smrg#define Status int 5817ca54c3Smrg#undef BYTE 5917ca54c3Smrg#undef BOOL 6017ca54c3Smrg#undef INT32 6117ca54c3Smrg#undef ATOM 6217ca54c3Smrg#undef FreeResource 6317ca54c3Smrg#undef CreateWindowA 6417ca54c3Smrg#undef RT_FONT 6517ca54c3Smrg#undef RT_CURSOR 6617ca54c3Smrg 6717ca54c3Smrg/* 6817ca54c3Smrg * Older version of this header used to name the windows API bool type wBOOL, 6917ca54c3Smrg * rather than more standard name WINBOOL 7017ca54c3Smrg */ 7117ca54c3Smrg#define wBOOL WINBOOL 7217ca54c3Smrg 7317ca54c3Smrg#ifdef _XFree86Server 7417ca54c3Smrg# define XFree86Server 7517ca54c3Smrg# undef _XFree86Server 7617ca54c3Smrg#endif 7717ca54c3Smrg 78