xref: /reactos/dll/win32/rasapi32/rasapi.c (revision 3cea7189)
1 /*
2  * RASAPI32
3  *
4  * Copyright 1998,2001 Marcus Meissner
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19  */
20 
21 #include <stdarg.h>
22 
23 #include "windef.h"
24 #include "winbase.h"
25 #include "ras.h"
26 #include "raserror.h"
27 #include "wine/debug.h"
28 
29 WINE_DEFAULT_DEBUG_CHANNEL(ras);
30 
RasConnectionNotificationA(HRASCONN hrasconn,HANDLE hEvent,DWORD dwFlags)31 DWORD WINAPI RasConnectionNotificationA(HRASCONN hrasconn, HANDLE hEvent, DWORD dwFlags)
32 {
33     FIXME("(%p,%p,0x%08x),stub!\n",hrasconn,hEvent,dwFlags);
34     return 1;
35 }
36 
RasConnectionNotificationW(HRASCONN hrasconn,HANDLE hEvent,DWORD dwFlags)37 DWORD WINAPI RasConnectionNotificationW(HRASCONN hrasconn, HANDLE hEvent, DWORD dwFlags)
38 {
39     FIXME("(%p,%p,0x%08x),stub!\n",hrasconn,hEvent,dwFlags);
40     return 1;
41 }
42 
RasCreatePhonebookEntryA(HWND hwnd,LPCSTR lpszPhonebook)43 DWORD WINAPI RasCreatePhonebookEntryA(HWND hwnd, LPCSTR lpszPhonebook)
44 {
45     FIXME("(%p,%s),stub!\n",hwnd,debugstr_a(lpszPhonebook));
46     return 0;
47 }
48 
RasCreatePhonebookEntryW(HWND hwnd,LPCWSTR lpszPhonebook)49 DWORD WINAPI RasCreatePhonebookEntryW(HWND hwnd, LPCWSTR lpszPhonebook)
50 {
51     FIXME("(%p,%s),stub!\n",hwnd,debugstr_w(lpszPhonebook));
52     return 0;
53 }
54 
RasDeleteSubEntryA(LPCSTR lpszPhonebook,LPCSTR lpszEntry,DWORD dwSubEntryId)55 DWORD WINAPI RasDeleteSubEntryA(LPCSTR lpszPhonebook, LPCSTR lpszEntry, DWORD dwSubEntryId)
56 {
57     FIXME("(%s,%s,0x%08x),stub!\n",debugstr_a(lpszPhonebook),
58           debugstr_a(lpszEntry),dwSubEntryId);
59     return 0;
60 }
61 
RasDeleteSubEntryW(LPCWSTR lpszPhonebook,LPCWSTR lpszEntry,DWORD dwSubEntryId)62 DWORD WINAPI RasDeleteSubEntryW(LPCWSTR lpszPhonebook, LPCWSTR lpszEntry, DWORD dwSubEntryId)
63 {
64     FIXME("(%s,%s,0x%08x),stub!\n",debugstr_w(lpszPhonebook),
65           debugstr_w(lpszEntry),dwSubEntryId);
66     return 0;
67 }
68 
RasDialA(LPRASDIALEXTENSIONS lpRasDialExtensions,LPCSTR lpszPhonebook,LPRASDIALPARAMSA lpRasDialParams,DWORD dwNotifierType,LPVOID lpvNotifier,LPHRASCONN lphRasConn)69 DWORD WINAPI RasDialA(LPRASDIALEXTENSIONS lpRasDialExtensions, LPCSTR lpszPhonebook,
70                       LPRASDIALPARAMSA lpRasDialParams, DWORD dwNotifierType,
71                       LPVOID lpvNotifier, LPHRASCONN lphRasConn)
72 {
73     FIXME("(%p,%s,%p,0x%08x,%p,%p),stub!\n",lpRasDialExtensions,debugstr_a(lpszPhonebook),
74           lpRasDialParams,dwNotifierType,lpvNotifier,lphRasConn);
75     return 1;
76 }
77 
RasDialW(LPRASDIALEXTENSIONS lpRasDialExtensions,LPCWSTR lpszPhonebook,LPRASDIALPARAMSW lpRasDialParams,DWORD dwNotifierType,LPVOID lpvNotifier,LPHRASCONN lphRasConn)78 DWORD WINAPI RasDialW(LPRASDIALEXTENSIONS lpRasDialExtensions, LPCWSTR lpszPhonebook,
79                       LPRASDIALPARAMSW lpRasDialParams, DWORD dwNotifierType,
80                       LPVOID lpvNotifier, LPHRASCONN lphRasConn)
81 {
82     FIXME("(%p,%s,%p,0x%08x,%p,%p),stub!\n",lpRasDialExtensions,debugstr_w(lpszPhonebook),
83           lpRasDialParams,dwNotifierType,lpvNotifier,lphRasConn);
84     return 1;
85 }
86 
RasEditPhonebookEntryA(HWND hwnd,LPCSTR lpszPhonebook,LPCSTR lpszEntryName)87 DWORD WINAPI RasEditPhonebookEntryA(HWND hwnd, LPCSTR lpszPhonebook, LPCSTR lpszEntryName)
88 {
89     FIXME("(%p,%s,%s),stub!\n",hwnd,debugstr_a(lpszPhonebook),debugstr_a(lpszEntryName));
90     return 0;
91 }
92 
RasEditPhonebookEntryW(HWND hwnd,LPCWSTR lpszPhonebook,LPCWSTR lpszEntryName)93 DWORD WINAPI RasEditPhonebookEntryW(HWND hwnd, LPCWSTR lpszPhonebook, LPCWSTR lpszEntryName)
94 {
95     FIXME("(%p,%s,%s),stub!\n",hwnd,debugstr_w(lpszPhonebook),debugstr_w(lpszEntryName));
96     return 0;
97 }
98 
99 /**************************************************************************
100  *                 RasEnumConnectionsA			[RASAPI32.544]
101  */
RasEnumConnectionsA(LPRASCONNA rca,LPDWORD lpcb,LPDWORD lpcConnections)102 DWORD WINAPI RasEnumConnectionsA( LPRASCONNA rca, LPDWORD lpcb, LPDWORD lpcConnections) {
103 	/* Remote Access Service stuff is done by underlying OS anyway */
104 	FIXME("(%p,%p,%p),stub!\n",rca,lpcb,lpcConnections);
105 	FIXME("RAS support is not implemented! Configure program to use LAN connection/winsock instead!\n");
106 	*lpcb = 0; /* size of buffer needed to enumerate connections */
107 	*lpcConnections = 0; /* no RAS connections available */
108 
109 	return 0;
110 }
111 
112 /**************************************************************************
113  *                 RasEnumConnectionsW			[RASAPI32.545]
114  */
RasEnumConnectionsW(LPRASCONNW rcw,LPDWORD lpcb,LPDWORD lpcConnections)115 DWORD WINAPI RasEnumConnectionsW( LPRASCONNW rcw, LPDWORD lpcb, LPDWORD lpcConnections) {
116 	/* Remote Access Service stuff is done by underlying OS anyway */
117 	FIXME("(%p,%p,%p),stub!\n",rcw,lpcb,lpcConnections);
118 	FIXME("RAS support is not implemented! Configure program to use LAN connection/winsock instead!\n");
119 	*lpcb = 0; /* size of buffer needed to enumerate connections */
120 	*lpcConnections = 0; /* no RAS connections available */
121 
122 	return 0;
123 }
124 
125 /**************************************************************************
126  *                 RasEnumEntriesA		        	[RASAPI32.546]
127  */
RasEnumEntriesA(LPCSTR Reserved,LPCSTR lpszPhoneBook,LPRASENTRYNAMEA lpRasEntryName,LPDWORD lpcb,LPDWORD lpcEntries)128 DWORD WINAPI RasEnumEntriesA( LPCSTR Reserved, LPCSTR lpszPhoneBook,
129         LPRASENTRYNAMEA lpRasEntryName,
130         LPDWORD lpcb, LPDWORD lpcEntries)
131 {
132 	FIXME("(%p,%s,%p,%p,%p),stub!\n",Reserved,debugstr_a(lpszPhoneBook),
133             lpRasEntryName,lpcb,lpcEntries);
134         *lpcEntries = 0;
135 	return 0;
136 }
137 
138 /**************************************************************************
139  *                 RasEnumEntriesW		        	[RASAPI32.547]
140  */
RasEnumEntriesW(LPCWSTR Reserved,LPCWSTR lpszPhoneBook,LPRASENTRYNAMEW lpRasEntryName,LPDWORD lpcb,LPDWORD lpcEntries)141 DWORD WINAPI RasEnumEntriesW( LPCWSTR Reserved, LPCWSTR lpszPhoneBook,
142         LPRASENTRYNAMEW lpRasEntryName,
143         LPDWORD lpcb, LPDWORD lpcEntries)
144 {
145 	FIXME("(%p,%s,%p,%p,%p),stub!\n",Reserved,debugstr_w(lpszPhoneBook),
146             lpRasEntryName,lpcb,lpcEntries);
147         *lpcEntries = 0;
148 	return 0;
149 }
150 
RasGetConnectStatusA(HRASCONN hrasconn,LPRASCONNSTATUSA lprasconnstatus)151 DWORD WINAPI RasGetConnectStatusA(HRASCONN hrasconn, LPRASCONNSTATUSA lprasconnstatus)
152 {
153     FIXME("(%p,%p),stub!\n",hrasconn,lprasconnstatus);
154     return 0;
155 }
156 
RasGetConnectStatusW(HRASCONN hrasconn,LPRASCONNSTATUSW lprasconnstatus)157 DWORD WINAPI RasGetConnectStatusW(HRASCONN hrasconn, LPRASCONNSTATUSW lprasconnstatus)
158 {
159     FIXME("(%p,%p),stub!\n",hrasconn,lprasconnstatus);
160     return 0;
161 }
162 
163 /**************************************************************************
164  *                 RasGetEntryDialParamsA			[RASAPI32.550]
165  */
RasGetEntryDialParamsA(LPCSTR lpszPhoneBook,LPRASDIALPARAMSA lpRasDialParams,LPBOOL lpfPassword)166 DWORD WINAPI RasGetEntryDialParamsA(
167 	LPCSTR lpszPhoneBook, LPRASDIALPARAMSA lpRasDialParams,
168 	LPBOOL lpfPassword)
169 {
170 	FIXME("(%s,%p,%p),stub!\n",debugstr_a(lpszPhoneBook),
171             lpRasDialParams,lpfPassword);
172 	return 0;
173 }
174 
175 /**************************************************************************
176  *                 RasGetEntryDialParamsW           [RASAPI32.551]
177  */
RasGetEntryDialParamsW(LPCWSTR lpszPhoneBook,LPRASDIALPARAMSW lpRasDialParams,LPBOOL lpfPassword)178 DWORD WINAPI RasGetEntryDialParamsW(
179     LPCWSTR lpszPhoneBook, LPRASDIALPARAMSW lpRasDialParams,
180     LPBOOL lpfPassword)
181 {
182     FIXME("(%s,%p,%p),stub!\n",debugstr_w(lpszPhoneBook),
183             lpRasDialParams,lpfPassword);
184     return 0;
185 }
186 
187 /**************************************************************************
188  *                 RasHangUpA			[RASAPI32.556]
189  */
RasHangUpA(HRASCONN hrasconn)190 DWORD WINAPI RasHangUpA( HRASCONN hrasconn)
191 {
192 	FIXME("(%p),stub!\n",hrasconn);
193 	return 0;
194 }
195 
196 /**************************************************************************
197  *                 RasHangUpW           [RASAPI32.557]
198  */
RasHangUpW(HRASCONN hrasconn)199 DWORD WINAPI RasHangUpW(HRASCONN hrasconn)
200 {
201     FIXME("(%p),stub!\n",hrasconn);
202     return 0;
203 }
204 
205 /**************************************************************************
206  *                 RasDeleteEntryA		[RASAPI32.7]
207  */
RasDeleteEntryA(LPCSTR a,LPCSTR b)208 DWORD WINAPI RasDeleteEntryA(LPCSTR a, LPCSTR b)
209 {
210 	FIXME("(%s,%s),stub!\n",debugstr_a(a),debugstr_a(b));
211 	return 0;
212 }
213 
214 /**************************************************************************
215  *                 RasDeleteEntryW		[RASAPI32.8]
216  */
RasDeleteEntryW(LPCWSTR a,LPCWSTR b)217 DWORD WINAPI RasDeleteEntryW(LPCWSTR a, LPCWSTR b)
218 {
219 	FIXME("(%s,%s),stub!\n",debugstr_w(a),debugstr_w(b));
220 	return 0;
221 }
222 
223 /**************************************************************************
224  *                 RasEnumAutodialAddressesA	[RASAPI32.14]
225  */
RasEnumAutodialAddressesA(LPSTR * a,LPDWORD b,LPDWORD c)226 DWORD WINAPI RasEnumAutodialAddressesA(LPSTR *a, LPDWORD b, LPDWORD c)
227 {
228 	FIXME("(%p,%p,%p),stub!\n",a,b,c);
229 	return 0;
230 }
231 
232 /**************************************************************************
233  *                 RasEnumAutodialAddressesW	[RASAPI32.15]
234  */
RasEnumAutodialAddressesW(LPWSTR * a,LPDWORD b,LPDWORD c)235 DWORD WINAPI RasEnumAutodialAddressesW(LPWSTR *a, LPDWORD b, LPDWORD c)
236 {
237 	FIXME("(%p,%p,%p),stub!\n",a,b,c);
238 	return 0;
239 }
240 
241 /**************************************************************************
242  *                 RasEnumDevicesA		[RASAPI32.19]
243  *
244  * Just return a virtual modem to see what other APIs programs will
245  * call with it.
246  */
RasEnumDevicesA(LPRASDEVINFOA lpRasDevinfo,LPDWORD lpcb,LPDWORD lpcDevices)247 DWORD WINAPI RasEnumDevicesA(LPRASDEVINFOA lpRasDevinfo, LPDWORD lpcb, LPDWORD lpcDevices)
248 {
249 	if (!lpcb || !lpcDevices)
250             return ERROR_INVALID_PARAMETER;
251 
252 	FIXME("(%p,%p,%p),stub!\n",lpRasDevinfo,lpcb,lpcDevices);
253 
254 	if(lpRasDevinfo && lpRasDevinfo->dwSize != sizeof(RASDEVINFOA))
255 		return ERROR_INVALID_SIZE;
256 
257 	*lpcDevices = 1;
258 
259 	if (!lpRasDevinfo || (*lpcb < sizeof(RASDEVINFOA))) {
260 		*lpcb = sizeof(RASDEVINFOA);
261 		return ERROR_BUFFER_TOO_SMALL;
262 	}
263 	/* honor dwSize ? */
264 	strcpy(lpRasDevinfo->szDeviceType, RASDT_Modem);
265 	strcpy(lpRasDevinfo->szDeviceName, "WINE virtmodem");
266 	return 0;
267 }
268 
269 /**************************************************************************
270  *                 RasEnumDevicesW		[RASAPI32.20]
271  */
RasEnumDevicesW(LPRASDEVINFOW a,LPDWORD b,LPDWORD c)272 DWORD WINAPI RasEnumDevicesW(LPRASDEVINFOW a, LPDWORD b, LPDWORD c)
273 {
274 	FIXME("(%p,%p,%p),stub!\n",a,b,c);
275 	return 0;
276 }
277 
278 /**************************************************************************
279  *                 RasGetAutodialAddressA	[RASAPI32.24]
280  */
RasGetAutodialAddressA(LPCSTR a,LPDWORD b,LPRASAUTODIALENTRYA c,LPDWORD d,LPDWORD e)281 DWORD WINAPI RasGetAutodialAddressA(LPCSTR a, LPDWORD b, LPRASAUTODIALENTRYA c,
282 					LPDWORD d, LPDWORD e)
283 {
284 	FIXME("(%s,%p,%p,%p,%p),stub!\n",debugstr_a(a),b,c,d,e);
285 	return 0;
286 }
287 
288 /**************************************************************************
289  *                 RasGetAutodialAddressW	[RASAPI32.25]
290  */
RasGetAutodialAddressW(LPCWSTR a,LPDWORD b,LPRASAUTODIALENTRYW c,LPDWORD d,LPDWORD e)291 DWORD WINAPI RasGetAutodialAddressW(LPCWSTR a, LPDWORD b, LPRASAUTODIALENTRYW c,
292 					LPDWORD d, LPDWORD e)
293 {
294 	FIXME("(%s,%p,%p,%p,%p),stub!\n",debugstr_w(a),b,c,d,e);
295 	return 0;
296 }
297 
298 /**************************************************************************
299  *                 RasGetAutodialEnableA	[RASAPI32.26]
300  */
RasGetAutodialEnableA(DWORD a,LPBOOL b)301 DWORD WINAPI RasGetAutodialEnableA(DWORD a, LPBOOL b)
302 {
303 	FIXME("(%x,%p),stub!\n",a,b);
304 	return 0;
305 }
306 
307 /**************************************************************************
308  *                 RasGetAutodialEnableW	[RASAPI32.27]
309  */
RasGetAutodialEnableW(DWORD a,LPBOOL b)310 DWORD WINAPI RasGetAutodialEnableW(DWORD a, LPBOOL b)
311 {
312 	FIXME("(%x,%p),stub!\n",a,b);
313 	return 0;
314 }
315 
316 /**************************************************************************
317  *                 RasGetAutodialParamA		[RASAPI32.28]
318  */
RasGetAutodialParamA(DWORD dwKey,LPVOID lpvValue,LPDWORD lpdwcbValue)319 DWORD WINAPI RasGetAutodialParamA(DWORD dwKey, LPVOID lpvValue, LPDWORD lpdwcbValue)
320 {
321 	FIXME("(%x,%p,%p),stub!\n",dwKey,lpvValue,lpdwcbValue);
322 	return 0;
323 }
324 
325 /**************************************************************************
326  *                 RasGetAutodialParamW		[RASAPI32.29]
327  */
RasGetAutodialParamW(DWORD dwKey,LPVOID lpvValue,LPDWORD lpdwcbValue)328 DWORD WINAPI RasGetAutodialParamW(DWORD dwKey, LPVOID lpvValue, LPDWORD lpdwcbValue)
329 {
330 	FIXME("(%x,%p,%p),stub!\n",dwKey,lpvValue,lpdwcbValue);
331 	return 0;
332 }
333 
334 /**************************************************************************
335  *                 RasSetAutodialAddressA	[RASAPI32.57]
336  */
RasSetAutodialAddressA(LPCSTR a,DWORD b,LPRASAUTODIALENTRYA c,DWORD d,DWORD e)337 DWORD WINAPI RasSetAutodialAddressA(LPCSTR a, DWORD b, LPRASAUTODIALENTRYA c,
338 					DWORD d, DWORD e)
339 {
340 	FIXME("(%s,%x,%p,%x,%x),stub!\n",debugstr_a(a),b,c,d,e);
341 	return 0;
342 }
343 
344 /**************************************************************************
345  *                 RasSetAutodialAddressW	[RASAPI32.58]
346  */
RasSetAutodialAddressW(LPCWSTR a,DWORD b,LPRASAUTODIALENTRYW c,DWORD d,DWORD e)347 DWORD WINAPI RasSetAutodialAddressW(LPCWSTR a, DWORD b, LPRASAUTODIALENTRYW c,
348 					DWORD d, DWORD e)
349 {
350 	FIXME("(%s,%x,%p,%x,%x),stub!\n",debugstr_w(a),b,c,d,e);
351 	return 0;
352 }
353 
354 /**************************************************************************
355  *                 RasSetAutodialEnableA	[RASAPI32.59]
356  */
RasSetAutodialEnableA(DWORD dwDialingLocation,BOOL fEnabled)357 DWORD WINAPI RasSetAutodialEnableA(DWORD dwDialingLocation, BOOL fEnabled)
358 {
359 	FIXME("(%x,%x),stub!\n",dwDialingLocation,fEnabled);
360 	return 0;
361 }
362 
363 /**************************************************************************
364  *                 RasSetAutodialEnableW	[RASAPI32.60]
365  */
RasSetAutodialEnableW(DWORD dwDialingLocation,BOOL fEnabled)366 DWORD WINAPI RasSetAutodialEnableW(DWORD dwDialingLocation, BOOL fEnabled)
367 {
368 	FIXME("(%x,%x),stub!\n",dwDialingLocation,fEnabled);
369 	return 0;
370 }
371 
372 /**************************************************************************
373  *                 RasSetAutodialParamA	[RASAPI32.61]
374  */
RasSetAutodialParamA(DWORD a,LPVOID b,DWORD c)375 DWORD WINAPI RasSetAutodialParamA(DWORD a, LPVOID b, DWORD c)
376 {
377 	FIXME("(%x,%p,%x),stub!\n",a,b,c);
378 	return 0;
379 }
380 
381 /**************************************************************************
382  *                 RasSetAutodialParamW	[RASAPI32.62]
383  */
RasSetAutodialParamW(DWORD a,LPVOID b,DWORD c)384 DWORD WINAPI RasSetAutodialParamW(DWORD a, LPVOID b, DWORD c)
385 {
386 	FIXME("(%x,%p,%x),stub!\n",a,b,c);
387 	return 0;
388 }
389 
390 /**************************************************************************
391  *                 RasSetEntryPropertiesA	[RASAPI32.67]
392  */
RasSetEntryPropertiesA(LPCSTR lpszPhonebook,LPCSTR lpszEntry,LPRASENTRYA lpRasEntry,DWORD dwEntryInfoSize,LPBYTE lpbDeviceInfo,DWORD dwDeviceInfoSize)393 DWORD WINAPI RasSetEntryPropertiesA(LPCSTR lpszPhonebook, LPCSTR lpszEntry,
394 	LPRASENTRYA lpRasEntry, DWORD dwEntryInfoSize, LPBYTE lpbDeviceInfo,
395 	DWORD dwDeviceInfoSize
396 ) {
397 	FIXME("(%s,%s,%p,%d,%p,%d), stub!\n",
398 		debugstr_a(lpszPhonebook),debugstr_a(lpszEntry),
399 		lpRasEntry,dwEntryInfoSize,lpbDeviceInfo,dwDeviceInfoSize
400 	);
401 	FIXME("Rasentry:\n");
402 	FIXME("\tdwfOptions %x\n",lpRasEntry->dwfOptions);
403 	FIXME("\tszLocalPhoneNumber %s\n",debugstr_a(lpRasEntry->szLocalPhoneNumber));
404 	return 0;
405 }
406 
407 /**************************************************************************
408  *                 RasSetEntryPropertiesW	[RASAPI32.68]
409  */
RasSetEntryPropertiesW(LPCWSTR lpszPhonebook,LPCWSTR lpszEntry,LPRASENTRYW lpRasEntry,DWORD dwEntryInfoSize,LPBYTE lpbDeviceInfo,DWORD dwDeviceInfoSize)410 DWORD WINAPI RasSetEntryPropertiesW(LPCWSTR lpszPhonebook, LPCWSTR lpszEntry,
411 	LPRASENTRYW lpRasEntry, DWORD dwEntryInfoSize, LPBYTE lpbDeviceInfo,
412 	DWORD dwDeviceInfoSize
413 ) {
414 	FIXME("(%s,%s,%p,%d,%p,%d), stub!\n",
415 		debugstr_w(lpszPhonebook),debugstr_w(lpszEntry),
416 		lpRasEntry,dwEntryInfoSize,lpbDeviceInfo,dwDeviceInfoSize
417 	);
418 	return 0;
419 }
420 
421 /**************************************************************************
422  *                 RasValidateEntryNameA	[RASAPI32.72]
423  */
RasValidateEntryNameA(LPCSTR lpszPhonebook,LPCSTR lpszEntry)424 DWORD WINAPI RasValidateEntryNameA(LPCSTR lpszPhonebook, LPCSTR lpszEntry) {
425 	FIXME("(%s,%s), stub!\n",debugstr_a(lpszPhonebook),debugstr_a(lpszEntry));
426 	return 0;
427 }
428 
429 /**************************************************************************
430  *                 RasValidateEntryNameW	[RASAPI32.73]
431  */
RasValidateEntryNameW(LPCWSTR lpszPhonebook,LPCWSTR lpszEntry)432 DWORD WINAPI RasValidateEntryNameW(LPCWSTR lpszPhonebook, LPCWSTR lpszEntry) {
433 	FIXME("(%s,%s), stub!\n",debugstr_w(lpszPhonebook),debugstr_w(lpszEntry));
434 	return 0;
435 }
436 
437 /**************************************************************************
438  *                 RasGetEntryPropertiesA	[RASAPI32.@]
439  */
RasGetEntryPropertiesA(LPCSTR lpszPhonebook,LPCSTR lpszEntry,LPRASENTRYA lpRasEntry,LPDWORD lpdwEntryInfoSize,LPBYTE lpbDeviceInfo,LPDWORD lpdwDeviceInfoSize)440 DWORD WINAPI RasGetEntryPropertiesA(LPCSTR lpszPhonebook, LPCSTR lpszEntry, LPRASENTRYA lpRasEntry,
441 	LPDWORD lpdwEntryInfoSize, LPBYTE lpbDeviceInfo, LPDWORD lpdwDeviceInfoSize
442 ) {
443 	FIXME("(%s,%s,%p,%p,%p,%p), stub!\n", debugstr_a(lpszPhonebook), debugstr_a(lpszEntry), lpRasEntry,
444           lpdwEntryInfoSize, lpbDeviceInfo, lpdwDeviceInfoSize);
445 	return 0;
446 }
447 
448 /**************************************************************************
449  *                 RasGetEntryPropertiesW   [RASAPI32.@]
450  */
RasGetEntryPropertiesW(LPCWSTR lpszPhonebook,LPCWSTR lpszEntry,LPRASENTRYW lpRasEntry,LPDWORD lpdwEntryInfoSize,LPBYTE lpbDeviceInfo,LPDWORD lpdwDeviceInfoSize)451 DWORD WINAPI RasGetEntryPropertiesW(LPCWSTR lpszPhonebook, LPCWSTR lpszEntry, LPRASENTRYW lpRasEntry,
452     LPDWORD lpdwEntryInfoSize, LPBYTE lpbDeviceInfo, LPDWORD lpdwDeviceInfoSize
453 ) {
454     FIXME("(%s,%s,%p,%p,%p,%p), stub!\n", debugstr_w(lpszPhonebook), debugstr_w(lpszEntry), lpRasEntry,
455           lpdwEntryInfoSize, lpbDeviceInfo, lpdwDeviceInfoSize);
456     return 0;
457 }
458 
RasGetErrorStringA(UINT uErrorValue,LPSTR lpszErrorString,DWORD cBufSize)459 DWORD WINAPI RasGetErrorStringA(UINT uErrorValue, LPSTR lpszErrorString, DWORD cBufSize)
460 {
461     FIXME("(0x%08x,%p,0x%08x), stub!\n", uErrorValue, lpszErrorString, cBufSize);
462     return 1;
463 }
464 
RasGetErrorStringW(UINT uErrorValue,LPWSTR lpszErrorString,DWORD cBufSize)465 DWORD WINAPI RasGetErrorStringW(UINT uErrorValue, LPWSTR lpszErrorString, DWORD cBufSize)
466 {
467     FIXME("(0x%08x,%p,0x%08x), stub!\n", uErrorValue, lpszErrorString, cBufSize);
468     return 1;
469 }
470 
RasGetProjectionInfoA(HRASCONN hrasconn,RASPROJECTION rasprojection,LPVOID lpprojection,LPDWORD lpcb)471 DWORD WINAPI RasGetProjectionInfoA(HRASCONN hrasconn, RASPROJECTION rasprojection,
472                                    LPVOID lpprojection, LPDWORD lpcb)
473 {
474     FIXME("(%p,0x%08x,%p,%p), stub!\n", hrasconn, rasprojection, lpprojection, lpcb);
475     return 1;
476 }
477 
RasGetProjectionInfoW(HRASCONN hrasconn,RASPROJECTION rasprojection,LPVOID lpprojection,LPDWORD lpcb)478 DWORD WINAPI RasGetProjectionInfoW(HRASCONN hrasconn, RASPROJECTION rasprojection,
479                                    LPVOID lpprojection, LPDWORD lpcb)
480 {
481     FIXME("(%p,0x%08x,%p,%p), stub!\n", hrasconn, rasprojection, lpprojection, lpcb);
482     return 1;
483 }
484 
RasRenameEntryA(LPCSTR lpszPhonebook,LPCSTR lpszOldEntry,LPCSTR lpszNewEntry)485 DWORD WINAPI RasRenameEntryA(LPCSTR lpszPhonebook, LPCSTR lpszOldEntry, LPCSTR lpszNewEntry)
486 {
487     FIXME("(%s,%s,%s), stub!\n", debugstr_a(lpszPhonebook), debugstr_a(lpszOldEntry),
488           debugstr_a(lpszNewEntry));
489     return 0;
490 }
491 
RasRenameEntryW(LPCWSTR lpszPhonebook,LPCWSTR lpszOldEntry,LPCWSTR lpszNewEntry)492 DWORD WINAPI RasRenameEntryW(LPCWSTR lpszPhonebook, LPCWSTR lpszOldEntry, LPCWSTR lpszNewEntry)
493 {
494     FIXME("(%s,%s,%s), stub!\n", debugstr_w(lpszPhonebook), debugstr_w(lpszOldEntry),
495           debugstr_w(lpszNewEntry));
496     return 0;
497 }
498 
RasSetCustomAuthDataA(const char * phonebook,const char * entry,BYTE * authdata,DWORD size)499 DWORD WINAPI RasSetCustomAuthDataA(const char *phonebook, const char *entry, BYTE *authdata, DWORD size)
500 {
501     FIXME("(%s,%s,%p,0x%08x), stub!\n", debugstr_a(phonebook), debugstr_a(entry), authdata, size);
502     return 0;
503 }
504 
RasSetCustomAuthDataW(const WCHAR * phonebook,const WCHAR * entry,BYTE * authdata,DWORD size)505 DWORD WINAPI RasSetCustomAuthDataW(const WCHAR *phonebook, const WCHAR *entry, BYTE *authdata, DWORD size)
506 {
507     FIXME("(%s,%s,%p,0x%08x), stub!\n", debugstr_w(phonebook), debugstr_w(entry), authdata, size);
508     return 0;
509 }
510 
RasSetEntryDialParamsA(LPCSTR lpszPhonebook,LPRASDIALPARAMSA lprasdialparams,BOOL fRemovePassword)511 DWORD WINAPI RasSetEntryDialParamsA(LPCSTR lpszPhonebook, LPRASDIALPARAMSA lprasdialparams,
512                                     BOOL fRemovePassword)
513 {
514     FIXME("(%s,%p,0x%x), stub!\n", debugstr_a(lpszPhonebook), lprasdialparams, fRemovePassword);
515     return 0;
516 }
517 
RasSetEntryDialParamsW(LPCWSTR lpszPhonebook,LPRASDIALPARAMSW lprasdialparams,BOOL fRemovePassword)518 DWORD WINAPI RasSetEntryDialParamsW(LPCWSTR lpszPhonebook, LPRASDIALPARAMSW lprasdialparams,
519                                     BOOL fRemovePassword)
520 {
521     FIXME("(%s,%p,0x%x), stub!\n", debugstr_w(lpszPhonebook), lprasdialparams, fRemovePassword);
522     return 0;
523 }
524 
RasSetSubEntryPropertiesA(LPCSTR lpszPhonebook,LPCSTR lpszEntry,DWORD dwSubEntry,LPRASSUBENTRYA lpRasSubEntry,DWORD dwcbRasSubEntry,LPBYTE lpbDeviceConfig,DWORD dwcbDeviceConfig)525 DWORD WINAPI RasSetSubEntryPropertiesA(LPCSTR lpszPhonebook, LPCSTR lpszEntry, DWORD dwSubEntry,
526                                        LPRASSUBENTRYA lpRasSubEntry, DWORD dwcbRasSubEntry,
527                                        LPBYTE lpbDeviceConfig, DWORD dwcbDeviceConfig)
528 {
529     FIXME("(%s,%s,0x%08x,%p,0x%08x,%p,0x%08x), stub!\n", debugstr_a(lpszPhonebook),
530           debugstr_a(lpszEntry), dwSubEntry, lpRasSubEntry, dwcbRasSubEntry, lpbDeviceConfig,
531           dwcbDeviceConfig);
532     return 0;
533 }
534 
RasSetSubEntryPropertiesW(LPCWSTR lpszPhonebook,LPCWSTR lpszEntry,DWORD dwSubEntry,LPRASSUBENTRYW lpRasSubEntry,DWORD dwcbRasSubEntry,LPBYTE lpbDeviceConfig,DWORD dwcbDeviceConfig)535 DWORD WINAPI RasSetSubEntryPropertiesW(LPCWSTR lpszPhonebook, LPCWSTR lpszEntry, DWORD dwSubEntry,
536                                        LPRASSUBENTRYW lpRasSubEntry, DWORD dwcbRasSubEntry,
537                                        LPBYTE lpbDeviceConfig, DWORD dwcbDeviceConfig)
538 {
539     FIXME("(%s,%s,0x%08x,%p,0x%08x,%p,0x%08x), stub!\n", debugstr_w(lpszPhonebook),
540           debugstr_w(lpszEntry), dwSubEntry, lpRasSubEntry, dwcbRasSubEntry, lpbDeviceConfig,
541           dwcbDeviceConfig);
542     return 0;
543 }
544 
RasGetLinkStatistics(HRASCONN connection,DWORD entry,RAS_STATS * statistics)545 DWORD WINAPI RasGetLinkStatistics(HRASCONN connection, DWORD entry, RAS_STATS *statistics)
546 {
547     FIXME("(%p,%u,%p), stub!\n", connection, entry, statistics);
548     return 0;
549 }
550 
RasGetConnectionStatistics(HRASCONN connection,RAS_STATS * statistics)551 DWORD WINAPI RasGetConnectionStatistics(HRASCONN connection, RAS_STATS *statistics)
552 {
553     FIXME("(%p,%p), stub!\n", connection, statistics);
554     return ERROR_UNKNOWN;
555 }
556