| 1 | /** | 
 
 
 
 
 | 2 | * This file has no copyright assigned and is placed in the Public Domain. | 
 
 
 
 
 | 3 | * This file is part of the mingw-w64 runtime package. | 
 
 
 
 
 | 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | 
 
 
 
 
 | 5 | */ | 
 
 
 
 
 | 6 | #ifndef _INC_DAVCLNT | 
 
 
 
 
 | 7 | #define _INC_DAVCLNT | 
 
 
 
 
 | 8 |  | 
 
 
 
 
 | 9 | #ifdef __cplusplus | 
 
 
 
 
 | 10 | extern "C" { | 
 
 
 
 
 | 11 | #endif | 
 
 
 
 
 | 12 |  | 
 
 
 
 
 | 13 | #if (_WIN32_WINNT >= 0x0600) | 
 
 
 
 
 | 14 | #define DAV_AUTHN_SCHEME_BASIC      0x00000001 | 
 
 
 
 
 | 15 | #define DAV_AUTHN_SCHEME_NTLM       0x00000002 | 
 
 
 
 
 | 16 | #define DAV_AUTHN_SCHEME_PASSPORT   0x00000004 | 
 
 
 
 
 | 17 | #define DAV_AUTHN_SCHEME_DIGEST     0x00000008 | 
 
 
 
 
 | 18 | #define DAV_AUTHN_SCHEME_NEGOTIATE  0x00000010 | 
 
 
 
 
 | 19 | #define DAV_AUTHN_SCHEME_CERT       0x00010000 | 
 
 
 
 
 | 20 | #define DAV_AUTHN_SCHEME_FBA        0x00100000 | 
 
 
 
 
 | 21 |  | 
 
 
 
 
 | 22 | #define OPAQUE_HANDLE DWORD | 
 
 
 
 
 | 23 |  | 
 
 
 
 
 | 24 | typedef enum AUTHNEXTSTEP { | 
 
 
 
 
 | 25 | DefaultBehavior   = 0, | 
 
 
 
 
 | 26 | RetryRequest      = 1, | 
 
 
 
 
 | 27 | CancelRequest     = 2 | 
 
 
 
 
 | 28 | } AUTHNEXTSTEP; | 
 
 
 
 
 | 29 |  | 
 
 
 
 
 | 30 | typedef struct _DAV_CALLBACK_AUTH_BLOB { | 
 
 
 
 
 | 31 | PVOID pBuffer; | 
 
 
 
 
 | 32 | ULONG ulSize; | 
 
 
 
 
 | 33 | ULONG ulType; | 
 
 
 
 
 | 34 | }DAV_CALLBACK_AUTH_BLOB, *PDAV_CALLBACK_AUTH_BLOB; | 
 
 
 
 
 | 35 |  | 
 
 
 
 
 | 36 | typedef struct _DAV_CALLBACK_AUTH_UNP { | 
 
 
 
 
 | 37 | LPWSTR pszUserName; | 
 
 
 
 
 | 38 | ULONG  ulUserNameLength; | 
 
 
 
 
 | 39 | LPWSTR pszPassword; | 
 
 
 
 
 | 40 | ULONG  ulPasswordLength; | 
 
 
 
 
 | 41 | }DAV_CALLBACK_AUTH_UNP, *PDAV_CALLBACK_AUTH_UNP; | 
 
 
 
 
 | 42 |  | 
 
 
 
 
 | 43 | typedef struct _DAV_CALLBACK_CRED { | 
 
 
 
 
 | 44 | DAV_CALLBACK_AUTH_BLOB AuthBlob; | 
 
 
 
 
 | 45 | DAV_CALLBACK_AUTH_UNP  UNPBlob; | 
 
 
 
 
 | 46 | WINBOOL                bAuthBlobValid; | 
 
 
 
 
 | 47 | WINBOOL                bSave; | 
 
 
 
 
 | 48 | }DAV_CALLBACK_CRED, *PDAV_CALLBACK_CRED; | 
 
 
 
 
 | 49 |  | 
 
 
 
 
 | 50 | typedef DWORD (*PFNDAVAUTHCALLBACK_FREECRED)( | 
 
 
 
 
 | 51 | PVOID pbuffer | 
 
 
 
 
 | 52 | ); | 
 
 
 
 
 | 53 |  | 
 
 
 
 
 | 54 | typedef DWORD (*PFNDAVAUTHCALLBACK)( | 
 
 
 
 
 | 55 | LPWSTR lpwzServerName, | 
 
 
 
 
 | 56 | LPWSTR lpwzRemoteName, | 
 
 
 
 
 | 57 | DWORD dwAuthScheme, | 
 
 
 
 
 | 58 | DWORD dwFlags, | 
 
 
 
 
 | 59 | PDAV_CALLBACK_CRED pCallbackCred, | 
 
 
 
 
 | 60 | AUTHNEXTSTEP *NextStep, | 
 
 
 
 
 | 61 | PFNDAVAUTHCALLBACK_FREECRED *pFreeCred | 
 
 
 
 
 | 62 | ); | 
 
 
 
 
 | 63 |  | 
 
 
 
 
 | 64 | OPAQUE_HANDLE WINAPI DavRegisterAuthCallback( | 
 
 
 
 
 | 65 | PFNDAVAUTHCALLBACK CallBack, | 
 
 
 
 
 | 66 | ULONG Version | 
 
 
 
 
 | 67 | ); | 
 
 
 
 
 | 68 |  | 
 
 
 
 
 | 69 | VOID WINAPI DavUnregisterAuthCallback( | 
 
 
 
 
 | 70 | OPAQUE_HANDLE hCallback | 
 
 
 
 
 | 71 | ); | 
 
 
 
 
 | 72 |  | 
 
 
 
 
 | 73 | DWORD WINAPI DavAddConnection( | 
 
 
 
 
 | 74 | HANDLE *ConnectionHandle, | 
 
 
 
 
 | 75 | LPCWSTR RemoteName, | 
 
 
 
 
 | 76 | LPCWSTR UserName, | 
 
 
 
 
 | 77 | LPCWSTR Password, | 
 
 
 
 
 | 78 | PBYTE ClientCert, | 
 
 
 
 
 | 79 | DWORD CertSize | 
 
 
 
 
 | 80 | ); | 
 
 
 
 
 | 81 |  | 
 
 
 
 
 | 82 | DWORD WINAPI DavCancelConnectionsToServer( | 
 
 
 
 
 | 83 | LPWSTR lpName, | 
 
 
 
 
 | 84 | WINBOOL fForce | 
 
 
 
 
 | 85 | ); | 
 
 
 
 
 | 86 |  | 
 
 
 
 
 | 87 | DWORD WINAPI DavDeleteConnection( | 
 
 
 
 
 | 88 | HANDLE ConnectionHandle | 
 
 
 
 
 | 89 | ); | 
 
 
 
 
 | 90 |  | 
 
 
 
 
 | 91 | DWORD WINAPI DavFlushFile( | 
 
 
 
 
 | 92 | HANDLE hFile | 
 
 
 
 
 | 93 | ); | 
 
 
 
 
 | 94 |  | 
 
 
 
 
 | 95 | DWORD WINAPI DavGetExtendedError( | 
 
 
 
 
 | 96 | HANDLE hFile, | 
 
 
 
 
 | 97 | DWORD *ExtError, | 
 
 
 
 
 | 98 | LPWSTR ExtErrorString, | 
 
 
 
 
 | 99 | DWORD *cChSize | 
 
 
 
 
 | 100 | ); | 
 
 
 
 
 | 101 |  | 
 
 
 
 
 | 102 | DWORD WINAPI DavGetHTTPFromUNCPath( | 
 
 
 
 
 | 103 | LPCWSTR UncPath, | 
 
 
 
 
 | 104 | LPWSTR HttpPath, | 
 
 
 
 
 | 105 | LPDWORD lpSize | 
 
 
 
 
 | 106 | ); | 
 
 
 
 
 | 107 |  | 
 
 
 
 
 | 108 | DWORD WINAPI DavGetTheLockOwnerOfTheFile( | 
 
 
 
 
 | 109 | LPCWSTR FileName, | 
 
 
 
 
 | 110 | PWSTR LockOwnerName, | 
 
 
 
 
 | 111 | PULONG LockOwnerNameLengthInBytes | 
 
 
 
 
 | 112 | ); | 
 
 
 
 
 | 113 |  | 
 
 
 
 
 | 114 | DWORD WINAPI DavGetUNCFromHTTPPath( | 
 
 
 
 
 | 115 | LPCWSTR HttpPath, | 
 
 
 
 
 | 116 | LPWSTR UncPath, | 
 
 
 
 
 | 117 | LPDWORD lpSize | 
 
 
 
 
 | 118 | ); | 
 
 
 
 
 | 119 |  | 
 
 
 
 
 | 120 | DWORD WINAPI DavInvalidateCache( | 
 
 
 
 
 | 121 | LPWSTR URLName | 
 
 
 
 
 | 122 | ); | 
 
 
 
 
 | 123 |  | 
 
 
 
 
 | 124 | OPAQUE_HANDLE WINAPI DavRegisterAuthCallback( | 
 
 
 
 
 | 125 | PFNDAVAUTHCALLBACK CallBack, | 
 
 
 
 
 | 126 | ULONG Version | 
 
 
 
 
 | 127 | ); | 
 
 
 
 
 | 128 |  | 
 
 
 
 
 | 129 | VOID WINAPI DavUnregisterAuthCallback( | 
 
 
 
 
 | 130 | OPAQUE_HANDLE hCallback | 
 
 
 
 
 | 131 | ); | 
 
 
 
 
 | 132 |  | 
 
 
 
 
 | 133 | #endif /*(_WIN32_WINNT >= 0x0600)*/ | 
 
 
 
 
 | 134 |  | 
 
 
 
 
 | 135 | #ifdef __cplusplus | 
 
 
 
 
 | 136 | } | 
 
 
 
 
 | 137 | #endif | 
 
 
 
 
 | 138 |  | 
 
 
 
 
 | 139 | #endif /*_INC_DAVCLNT*/ |