xref: /reactos/dll/win32/activeds/activeds_main.c (revision da5f10af)
1 /*
2  * Implementation of the Active Directory Service Interface
3  *
4  * Copyright 2005 Detlef Riekenberg
5  *
6  * This file contains only stubs to get the printui.dll up and running
7  * activeds.dll is much much more than this
8  *
9  * This library is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU Lesser General Public
11  * License as published by the Free Software Foundation; either
12  * version 2.1 of the License, or (at your option) any later version.
13  *
14  * This library is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17  * Lesser General Public License for more details.
18  *
19  * You should have received a copy of the GNU Lesser General Public
20  * License along with this library; if not, write to the Free Software
21  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
22  */
23 
24 #include <stdarg.h>
25 
26 #define COBJMACROS
27 
28 #include "windef.h"
29 #include "winbase.h"
30 #include "winuser.h"
31 
32 #include "objbase.h"
33 #include "iads.h"
34 #include "adshlp.h"
35 
36 #include "wine/unicode.h"
37 #include "wine/debug.h"
38 
39 WINE_DEFAULT_DEBUG_CHANNEL(activeds);
40 
41 /*****************************************************
42  * DllMain
43  */
44 BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
45 {
46     TRACE("(%p, %d, %p)\n",hinstDLL, fdwReason, lpvReserved);
47 
48     switch(fdwReason)
49     {
50     case DLL_WINE_PREATTACH:
51         return FALSE;  /* prefer native version */
52     case DLL_PROCESS_ATTACH:
53         DisableThreadLibraryCalls( hinstDLL );
54         break;
55     }
56     return TRUE;
57 }
58 
59 /*****************************************************
60  * ADsGetObject     [ACTIVEDS.3]
61  */
62 HRESULT WINAPI ADsGetObject(LPCWSTR lpszPathName, REFIID riid, VOID** ppObject)
63 {
64     FIXME("(%s)->(%s,%p)!stub\n",debugstr_w(lpszPathName), debugstr_guid(riid), ppObject);
65     return E_NOTIMPL;
66 }
67 
68 /*****************************************************
69  * ADsBuildEnumerator    [ACTIVEDS.4]
70  */
71 HRESULT WINAPI ADsBuildEnumerator(IADsContainer * pADsContainer, IEnumVARIANT** ppEnumVariant)
72 {
73     FIXME("(%p)->(%p)!stub\n",pADsContainer, ppEnumVariant);
74     return E_NOTIMPL;
75 }
76 
77 /*****************************************************
78  * ADsFreeEnumerator     [ACTIVEDS.5]
79  */
80 HRESULT WINAPI ADsFreeEnumerator(IEnumVARIANT* pEnumVariant)
81 {
82     FIXME("(%p)!stub\n",pEnumVariant);
83     return E_NOTIMPL;
84 }
85 
86 /*****************************************************
87  * ADsEnumerateNext     [ACTIVEDS.6]
88  */
89 HRESULT WINAPI ADsEnumerateNext(IEnumVARIANT* pEnumVariant, ULONG cElements, VARIANT* pvar, ULONG * pcElementsFetched)
90 {
91     FIXME("(%p)->(%u, %p, %p)!stub\n",pEnumVariant, cElements, pvar, pcElementsFetched);
92     return E_NOTIMPL;
93 }
94 
95 /*****************************************************
96  * ADsBuildVarArrayStr     [ACTIVEDS.7]
97  */
98 HRESULT WINAPI ADsBuildVarArrayStr(LPWSTR *lppPathNames, DWORD dwPathNames, VARIANT* pvar)
99 {
100     FIXME("(%p, %d, %p)!stub\n",*lppPathNames, dwPathNames, pvar);
101     return E_NOTIMPL;
102 }
103 
104 /*****************************************************
105  * ADsBuildVarArrayInt     [ACTIVEDS.8]
106  */
107 HRESULT WINAPI ADsBuildVarArrayInt(LPDWORD lpdwObjectTypes, DWORD dwObjectTypes, VARIANT* pvar)
108 {
109     FIXME("(%p, %d, %p)!stub\n",lpdwObjectTypes, dwObjectTypes, pvar);
110     return E_NOTIMPL;
111 }
112 
113 /*****************************************************
114  * ADsOpenObject     [ACTIVEDS.9]
115  */
116 HRESULT WINAPI ADsOpenObject(LPCWSTR lpszPathName, LPCWSTR lpszUserName, LPCWSTR lpszPassword, DWORD dwReserved, REFIID riid, VOID** ppObject)
117 {
118     FIXME("(%s,%s,%u,%s,%p)!stub\n", debugstr_w(lpszPathName),
119           debugstr_w(lpszUserName), dwReserved, debugstr_guid(riid), ppObject);
120     return E_NOTIMPL;
121 }
122 
123 /*****************************************************
124  * ADsSetLastError    [ACTIVEDS.12]
125  */
126 VOID WINAPI ADsSetLastError(DWORD dwErr, LPWSTR pszError, LPWSTR pszProvider)
127 {
128     FIXME("(%d,%p,%p)!stub\n", dwErr, pszError, pszProvider);
129 }
130 
131 /*****************************************************
132  * ADsGetLastError    [ACTIVEDS.13]
133  */
134 HRESULT WINAPI ADsGetLastError(LPDWORD perror, LPWSTR errorbuf, DWORD errorbuflen, LPWSTR namebuf, DWORD namebuflen)
135 {
136     FIXME("(%p,%p,%d,%p,%d)!stub\n", perror, errorbuf, errorbuflen, namebuf, namebuflen);
137     return E_NOTIMPL;
138 }
139 
140 /*****************************************************
141  * AllocADsMem             [ACTIVEDS.14]
142  */
143 LPVOID WINAPI AllocADsMem(DWORD cb)
144 {
145     FIXME("(%d)!stub\n",cb);
146     return NULL;
147 }
148 
149 /*****************************************************
150  * FreeADsMem             [ACTIVEDS.15]
151  */
152 BOOL WINAPI FreeADsMem(LPVOID pMem)
153 {
154     FIXME("(%p)!stub\n",pMem);
155     return FALSE;
156 }
157 
158 /*****************************************************
159  * ReallocADsMem             [ACTIVEDS.16]
160  */
161 LPVOID WINAPI ReallocADsMem(LPVOID pOldMem, DWORD cbOld, DWORD cbNew)
162 {
163     FIXME("(%p,%d,%d)!stub\n", pOldMem, cbOld, cbNew);
164     return NULL;
165 }
166 
167 /*****************************************************
168  * AllocADsStr             [ACTIVEDS.17]
169  */
170 LPWSTR WINAPI AllocADsStr(LPWSTR pStr)
171 {
172     FIXME("(%p)!stub\n",pStr);
173     return NULL;
174 }
175 
176 /*****************************************************
177  * FreeADsStr             [ACTIVEDS.18]
178  */
179 BOOL WINAPI FreeADsStr(LPWSTR pStr)
180 {
181     FIXME("(%p)!stub\n",pStr);
182     return FALSE;
183 }
184 
185 /*****************************************************
186  * ReallocADsStr             [ACTIVEDS.19]
187  */
188 BOOL WINAPI ReallocADsStr(LPWSTR *ppStr, LPWSTR pStr)
189 {
190     FIXME("(%p,%p)!stub\n",*ppStr, pStr);
191     return FALSE;
192 }
193 
194 /*****************************************************
195  * ADsEncodeBinaryData     [ACTIVEDS.20]
196  */
197 HRESULT WINAPI ADsEncodeBinaryData(PBYTE pbSrcData, DWORD dwSrcLen, LPWSTR *ppszDestData)
198 {
199     FIXME("(%p,%d,%p)!stub\n", pbSrcData, dwSrcLen, *ppszDestData);
200     return E_NOTIMPL;
201 }
202