1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*************************************************************************
4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 * Copyright 2000, 2010 Oracle and/or its affiliates.
8 * OpenOffice.org - a multi-platform office productivity suite
10 * This file is part of OpenOffice.org.
12 * OpenOffice.org is free software: you can redistribute it and/or modify
13 * it under the terms of the GNU Lesser General Public License version 3
14 * only, as published by the Free Software Foundation.
16 * OpenOffice.org is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License version 3 for more details
20 * (a copy is included in the LICENSE file that accompanied this code).
22 * You should have received a copy of the GNU Lesser General Public License
23 * version 3 along with OpenOffice.org. If not, see
24 * <http://www.openoffice.org/license.html>
25 * for a copy of the LGPLv3 License.
27 ************************************************************************/
29 #ifndef _OSL_SOCKETIMPL_H_
30 #define _OSL_SOCKETIMPL_H_
32 #include <osl/socket.h>
33 #include <osl/interlck.h>
39 /*****************************************************************************/
41 /*****************************************************************************/
42 #define OSL_SOCKET_FLAGS_NONBLOCKING 0x0001
44 typedef void* (SAL_CALL
* oslCloseCallback
) (void*);
46 struct oslSocketImpl
{
47 oslInterlockedCount m_nRefCount
;
50 oslCloseCallback m_CloseCallback
;
54 struct oslSocketAddrImpl
56 struct sockaddr m_sockaddr
;
57 oslInterlockedCount m_nRefCount
;
60 oslSocket
__osl_createSocketImpl(SOCKET Socket
);
61 void __osl_destroySocketImpl(oslSocket pImpl
);
63 /*****************************************************************************/
64 /* oslSocketDialupImpl */
65 /*****************************************************************************/
66 #define INTERNET_MODULE_NAME "wininet.dll"
68 #define INTERNET_CONNECTION_MODEM 0x00000001L
69 #define INTERNET_CONNECTION_LAN 0x00000002L
70 #define INTERNET_CONNECTION_HANGUP 0x80000000L
72 typedef DWORD (WINAPI
*INTERNETATTEMPTCONNECT
) (
74 typedef BOOL (WINAPI
*INTERNETAUTODIAL
) (
75 DWORD dwFlags
, DWORD dwReserved
);
76 typedef BOOL (WINAPI
*INTERNETAUTODIALHANGUP
) (
78 typedef BOOL (WINAPI
*INTERNETGETCONNECTEDSTATE
) (
79 LPDWORD lpdwFlags
, DWORD dwReserved
);
81 typedef struct osl_socket_dialup_impl_st
83 CRITICAL_SECTION m_hMutex
;
85 INTERNETATTEMPTCONNECT m_pfnAttemptConnect
;
86 INTERNETAUTODIAL m_pfnAutodial
;
87 INTERNETAUTODIALHANGUP m_pfnAutodialHangup
;
88 INTERNETGETCONNECTEDSTATE m_pfnGetConnectedState
;
90 } oslSocketDialupImpl
;
92 /*****************************************************************************/
94 /*****************************************************************************/
103 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */