wine/include/davclnt.h
2015-07-28 09:53:15 +02:00

73 lines
2.2 KiB
C

/*
* Copyright 2015 Hans Leidekker for CodeWeavers
*
* 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 __WINE_DAVCLNT_H
#define __WINE_DAVCLNT_H
#define OPAQUE_HANDLE DWORD
#define DAV_AUTHN_SCHEME_BASIC 0x00000001
#define DAV_AUTHN_SCHEME_NTLM 0x00000002
#define DAV_AUTHN_SCHEME_PASSPORT 0x00000004
#define DAV_AUTHN_SCHEME_DIGEST 0x00000008
#define DAV_AUTHN_SCHEME_NEGOTIATE 0x00000010
#define DAV_AUTHN_SCHEME_CERT 0x00010000
#define DAV_AUTHN_SCHEME_FBA 0x00100000
typedef enum
{
DefaultBehavior,
RetryRequest,
CancelRequest
} AUTHNEXTSTEP;
typedef struct _DAV_CALLBACK_AUTH_BLOB
{
PVOID pBuffer;
ULONG ulSize;
ULONG ulType;
} DAV_CALLBACK_AUTH_BLOB, *PDAV_CALLBACK_AUTH_BLOB;
typedef struct _DAV_CALLBACK_AUTH_UNP
{
LPWSTR pszUserName;
ULONG ulUserNameLength;
LPWSTR pszPassword;
ULONG ulPasswordLength;
} DAV_CALLBACK_AUTH_UNP, *PDAV_CALLBACK_AUTH_UNP;
typedef struct _DAV_CALLBACK_CRED
{
DAV_CALLBACK_AUTH_BLOB AuthBlob;
DAV_CALLBACK_AUTH_UNP UNPBlob;
BOOL bAuthBlobValid;
BOOL bSave;
} DAV_CALLBACK_CRED, *PDAV_CALLBACK_CRED;
typedef DWORD (*PFNDAVAUTHCALLBACK_FREECRED)
(PVOID);
typedef DWORD (*PFNDAVAUTHCALLBACK)
(LPWSTR,LPWSTR,DWORD,DWORD,PDAV_CALLBACK_CRED,AUTHNEXTSTEP*,PFNDAVAUTHCALLBACK_FREECRED*);
DWORD WINAPI DavGetHTTPFromUNCPath(LPCWSTR,LPWSTR,LPDWORD);
OPAQUE_HANDLE WINAPI DavRegisterAuthCallback(PFNDAVAUTHCALLBACK,ULONG);
VOID WINAPI DavUnregisterAuthCallback(OPAQUE_HANDLE);
#endif /* __WINE_DAVCLNT_H */