Something went wrong. Try again.
Reactos
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556/* * RASAPI32 * * Copyright 1998,2001 Marcus Meissner * * 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 */
#include <stdarg.h>
#include "windef.h"#include "winbase.h"#include "ras.h"#include "raserror.h"#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(ras);
DWORD WINAPI RasConnectionNotificationA(HRASCONN hrasconn, HANDLE hEvent, DWORD dwFlags){ FIXME("(%p,%p,0x%08x),stub!\n",hrasconn,hEvent,dwFlags); return 1;}
DWORD WINAPI RasConnectionNotificationW(HRASCONN hrasconn, HANDLE hEvent, DWORD dwFlags){ FIXME("(%p,%p,0x%08x),stub!\n",hrasconn,hEvent,dwFlags); return 1;}
DWORD WINAPI RasCreatePhonebookEntryA(HWND hwnd, LPCSTR lpszPhonebook){ FIXME("(%p,%s),stub!\n",hwnd,debugstr_a(lpszPhonebook)); return 0;}
DWORD WINAPI RasCreatePhonebookEntryW(HWND hwnd, LPCWSTR lpszPhonebook){ FIXME("(%p,%s),stub!\n",hwnd,debugstr_w(lpszPhonebook)); return 0;}
DWORD WINAPI RasDeleteSubEntryA(LPCSTR lpszPhonebook, LPCSTR lpszEntry, DWORD dwSubEntryId){ FIXME("(%s,%s,0x%08x),stub!\n",debugstr_a(lpszPhonebook), debugstr_a(lpszEntry),dwSubEntryId); return 0;}
DWORD WINAPI RasDeleteSubEntryW(LPCWSTR lpszPhonebook, LPCWSTR lpszEntry, DWORD dwSubEntryId){ FIXME("(%s,%s,0x%08x),stub!\n",debugstr_w(lpszPhonebook), debugstr_w(lpszEntry),dwSubEntryId); return 0;}
DWORD WINAPI RasDialA(LPRASDIALEXTENSIONS lpRasDialExtensions, LPCSTR lpszPhonebook, LPRASDIALPARAMSA lpRasDialParams, DWORD dwNotifierType, LPVOID lpvNotifier, LPHRASCONN lphRasConn){ FIXME("(%p,%s,%p,0x%08x,%p,%p),stub!\n",lpRasDialExtensions,debugstr_a(lpszPhonebook), lpRasDialParams,dwNotifierType,lpvNotifier,lphRasConn); return 1;}
DWORD WINAPI RasDialW(LPRASDIALEXTENSIONS lpRasDialExtensions, LPCWSTR lpszPhonebook, LPRASDIALPARAMSW lpRasDialParams, DWORD dwNotifierType, LPVOID lpvNotifier, LPHRASCONN lphRasConn){ FIXME("(%p,%s,%p,0x%08x,%p,%p),stub!\n",lpRasDialExtensions,debugstr_w(lpszPhonebook), lpRasDialParams,dwNotifierType,lpvNotifier,lphRasConn); return 1;}
DWORD WINAPI RasEditPhonebookEntryA(HWND hwnd, LPCSTR lpszPhonebook, LPCSTR lpszEntryName){ FIXME("(%p,%s,%s),stub!\n",hwnd,debugstr_a(lpszPhonebook),debugstr_a(lpszEntryName)); return 0;}
DWORD WINAPI RasEditPhonebookEntryW(HWND hwnd, LPCWSTR lpszPhonebook, LPCWSTR lpszEntryName){ FIXME("(%p,%s,%s),stub!\n",hwnd,debugstr_w(lpszPhonebook),debugstr_w(lpszEntryName)); return 0;}
/************************************************************************** * RasEnumConnectionsA [RASAPI32.544] */DWORD WINAPI RasEnumConnectionsA( LPRASCONNA rca, LPDWORD lpcb, LPDWORD lpcConnections) { /* Remote Access Service stuff is done by underlying OS anyway */ FIXME("(%p,%p,%p),stub!\n",rca,lpcb,lpcConnections); FIXME("RAS support is not implemented! Configure program to use LAN connection/winsock instead!\n"); *lpcb = 0; /* size of buffer needed to enumerate connections */ *lpcConnections = 0; /* no RAS connections available */
return 0;}
/************************************************************************** * RasEnumConnectionsW [RASAPI32.545] */DWORD WINAPI RasEnumConnectionsW( LPRASCONNW rcw, LPDWORD lpcb, LPDWORD lpcConnections) { /* Remote Access Service stuff is done by underlying OS anyway */ FIXME("(%p,%p,%p),stub!\n",rcw,lpcb,lpcConnections); FIXME("RAS support is not implemented! Configure program to use LAN connection/winsock instead!\n"); *lpcb = 0; /* size of buffer needed to enumerate connections */ *lpcConnections = 0; /* no RAS connections available */
return 0;}
/************************************************************************** * RasEnumEntriesA [RASAPI32.546] */DWORD WINAPI RasEnumEntriesA( LPCSTR Reserved, LPCSTR lpszPhoneBook, LPRASENTRYNAMEA lpRasEntryName, LPDWORD lpcb, LPDWORD lpcEntries){ FIXME("(%p,%s,%p,%p,%p),stub!\n",Reserved,debugstr_a(lpszPhoneBook), lpRasEntryName,lpcb,lpcEntries); *lpcEntries = 0; return 0;}
/************************************************************************** * RasEnumEntriesW [RASAPI32.547] */DWORD WINAPI RasEnumEntriesW( LPCWSTR Reserved, LPCWSTR lpszPhoneBook, LPRASENTRYNAMEW lpRasEntryName, LPDWORD lpcb, LPDWORD lpcEntries){ FIXME("(%p,%s,%p,%p,%p),stub!\n",Reserved,debugstr_w(lpszPhoneBook), lpRasEntryName,lpcb,lpcEntries); *lpcEntries = 0; return 0;}
DWORD WINAPI RasGetConnectStatusA(HRASCONN hrasconn, LPRASCONNSTATUSA lprasconnstatus){ FIXME("(%p,%p),stub!\n",hrasconn,lprasconnstatus); return 0;}
DWORD WINAPI RasGetConnectStatusW(HRASCONN hrasconn, LPRASCONNSTATUSW lprasconnstatus){ FIXME("(%p,%p),stub!\n",hrasconn,lprasconnstatus); return 0;}
/************************************************************************** * RasGetEntryDialParamsA [RASAPI32.550] */DWORD WINAPI RasGetEntryDialParamsA( LPCSTR lpszPhoneBook, LPRASDIALPARAMSA lpRasDialParams, LPBOOL lpfPassword){ FIXME("(%s,%p,%p),stub!\n",debugstr_a(lpszPhoneBook), lpRasDialParams,lpfPassword); return 0;}
/************************************************************************** * RasGetEntryDialParamsW [RASAPI32.551] */DWORD WINAPI RasGetEntryDialParamsW( LPCWSTR lpszPhoneBook, LPRASDIALPARAMSW lpRasDialParams, LPBOOL lpfPassword){ FIXME("(%s,%p,%p),stub!\n",debugstr_w(lpszPhoneBook), lpRasDialParams,lpfPassword); return 0;}
/************************************************************************** * RasHangUpA [RASAPI32.556] */DWORD WINAPI RasHangUpA( HRASCONN hrasconn){ FIXME("(%p),stub!\n",hrasconn); return 0;}
/************************************************************************** * RasHangUpW [RASAPI32.557] */DWORD WINAPI RasHangUpW(HRASCONN hrasconn){ FIXME("(%p),stub!\n",hrasconn); return 0;}
/************************************************************************** * RasDeleteEntryA [RASAPI32.7] */DWORD WINAPI RasDeleteEntryA(LPCSTR a, LPCSTR b){ FIXME("(%s,%s),stub!\n",debugstr_a(a),debugstr_a(b)); return 0;}
/************************************************************************** * RasDeleteEntryW [RASAPI32.8] */DWORD WINAPI RasDeleteEntryW(LPCWSTR a, LPCWSTR b){ FIXME("(%s,%s),stub!\n",debugstr_w(a),debugstr_w(b)); return 0;}
/************************************************************************** * RasEnumAutodialAddressesA [RASAPI32.14] */DWORD WINAPI RasEnumAutodialAddressesA(LPSTR *a, LPDWORD b, LPDWORD c){ FIXME("(%p,%p,%p),stub!\n",a,b,c); return 0;}
/************************************************************************** * RasEnumAutodialAddressesW [RASAPI32.15] */DWORD WINAPI RasEnumAutodialAddressesW(LPWSTR *a, LPDWORD b, LPDWORD c){ FIXME("(%p,%p,%p),stub!\n",a,b,c); return 0;}
/************************************************************************** * RasEnumDevicesA [RASAPI32.19] * * Just return a virtual modem to see what other APIs programs will * call with it. */DWORD WINAPI RasEnumDevicesA(LPRASDEVINFOA lpRasDevinfo, LPDWORD lpcb, LPDWORD lpcDevices){ if (!lpcb || !lpcDevices) return ERROR_INVALID_PARAMETER;
FIXME("(%p,%p,%p),stub!\n",lpRasDevinfo,lpcb,lpcDevices);
if(lpRasDevinfo && lpRasDevinfo->dwSize != sizeof(RASDEVINFOA)) return ERROR_INVALID_SIZE;
*lpcDevices = 1;
if (!lpRasDevinfo || (*lpcb < sizeof(RASDEVINFOA))) { *lpcb = sizeof(RASDEVINFOA); return ERROR_BUFFER_TOO_SMALL; } /* honor dwSize ? */ strcpy(lpRasDevinfo->szDeviceType, RASDT_Modem); strcpy(lpRasDevinfo->szDeviceName, "WINE virtmodem"); return 0;}
/************************************************************************** * RasEnumDevicesW [RASAPI32.20] */DWORD WINAPI RasEnumDevicesW(LPRASDEVINFOW a, LPDWORD b, LPDWORD c){ FIXME("(%p,%p,%p),stub!\n",a,b,c); return 0;}
/************************************************************************** * RasGetAutodialAddressA [RASAPI32.24] */DWORD WINAPI RasGetAutodialAddressA(LPCSTR a, LPDWORD b, LPRASAUTODIALENTRYA c, LPDWORD d, LPDWORD e){ FIXME("(%s,%p,%p,%p,%p),stub!\n",debugstr_a(a),b,c,d,e); return 0;}
/************************************************************************** * RasGetAutodialAddressW [RASAPI32.25] */DWORD WINAPI RasGetAutodialAddressW(LPCWSTR a, LPDWORD b, LPRASAUTODIALENTRYW c, LPDWORD d, LPDWORD e){ FIXME("(%s,%p,%p,%p,%p),stub!\n",debugstr_w(a),b,c,d,e); return 0;}
/************************************************************************** * RasGetAutodialEnableA [RASAPI32.26] */DWORD WINAPI RasGetAutodialEnableA(DWORD a, LPBOOL b){ FIXME("(%x,%p),stub!\n",a,b); return 0;}
/************************************************************************** * RasGetAutodialEnableW [RASAPI32.27] */DWORD WINAPI RasGetAutodialEnableW(DWORD a, LPBOOL b){ FIXME("(%x,%p),stub!\n",a,b); return 0;}
/************************************************************************** * RasGetAutodialParamA [RASAPI32.28] */DWORD WINAPI RasGetAutodialParamA(DWORD dwKey, LPVOID lpvValue, LPDWORD lpdwcbValue){ FIXME("(%x,%p,%p),stub!\n",dwKey,lpvValue,lpdwcbValue); return 0;}
/************************************************************************** * RasGetAutodialParamW [RASAPI32.29] */DWORD WINAPI RasGetAutodialParamW(DWORD dwKey, LPVOID lpvValue, LPDWORD lpdwcbValue){ FIXME("(%x,%p,%p),stub!\n",dwKey,lpvValue,lpdwcbValue); return 0;}
/************************************************************************** * RasSetAutodialAddressA [RASAPI32.57] */DWORD WINAPI RasSetAutodialAddressA(LPCSTR a, DWORD b, LPRASAUTODIALENTRYA c, DWORD d, DWORD e){ FIXME("(%s,%x,%p,%x,%x),stub!\n",debugstr_a(a),b,c,d,e); return 0;}
/************************************************************************** * RasSetAutodialAddressW [RASAPI32.58] */DWORD WINAPI RasSetAutodialAddressW(LPCWSTR a, DWORD b, LPRASAUTODIALENTRYW c, DWORD d, DWORD e){ FIXME("(%s,%x,%p,%x,%x),stub!\n",debugstr_w(a),b,c,d,e); return 0;}
/************************************************************************** * RasSetAutodialEnableA [RASAPI32.59] */DWORD WINAPI RasSetAutodialEnableA(DWORD dwDialingLocation, BOOL fEnabled){ FIXME("(%x,%x),stub!\n",dwDialingLocation,fEnabled); return 0;}
/************************************************************************** * RasSetAutodialEnableW [RASAPI32.60] */DWORD WINAPI RasSetAutodialEnableW(DWORD dwDialingLocation, BOOL fEnabled){ FIXME("(%x,%x),stub!\n",dwDialingLocation,fEnabled); return 0;}
/************************************************************************** * RasSetAutodialParamA [RASAPI32.61] */DWORD WINAPI RasSetAutodialParamA(DWORD a, LPVOID b, DWORD c){ FIXME("(%x,%p,%x),stub!\n",a,b,c); return 0;}
/************************************************************************** * RasSetAutodialParamW [RASAPI32.62] */DWORD WINAPI RasSetAutodialParamW(DWORD a, LPVOID b, DWORD c){ FIXME("(%x,%p,%x),stub!\n",a,b,c); return 0;}
/************************************************************************** * RasSetEntryPropertiesA [RASAPI32.67] */DWORD WINAPI RasSetEntryPropertiesA(LPCSTR lpszPhonebook, LPCSTR lpszEntry, LPRASENTRYA lpRasEntry, DWORD dwEntryInfoSize, LPBYTE lpbDeviceInfo, DWORD dwDeviceInfoSize) { FIXME("(%s,%s,%p,%d,%p,%d), stub!\n", debugstr_a(lpszPhonebook),debugstr_a(lpszEntry), lpRasEntry,dwEntryInfoSize,lpbDeviceInfo,dwDeviceInfoSize ); FIXME("Rasentry:\n"); FIXME("\tdwfOptions %x\n",lpRasEntry->dwfOptions); FIXME("\tszLocalPhoneNumber %s\n",debugstr_a(lpRasEntry->szLocalPhoneNumber)); return 0;}
/************************************************************************** * RasSetEntryPropertiesW [RASAPI32.68] */DWORD WINAPI RasSetEntryPropertiesW(LPCWSTR lpszPhonebook, LPCWSTR lpszEntry, LPRASENTRYW lpRasEntry, DWORD dwEntryInfoSize, LPBYTE lpbDeviceInfo, DWORD dwDeviceInfoSize) { FIXME("(%s,%s,%p,%d,%p,%d), stub!\n", debugstr_w(lpszPhonebook),debugstr_w(lpszEntry), lpRasEntry,dwEntryInfoSize,lpbDeviceInfo,dwDeviceInfoSize ); return 0;}
/************************************************************************** * RasValidateEntryNameA [RASAPI32.72] */DWORD WINAPI RasValidateEntryNameA(LPCSTR lpszPhonebook, LPCSTR lpszEntry) { FIXME("(%s,%s), stub!\n",debugstr_a(lpszPhonebook),debugstr_a(lpszEntry)); return 0;}
/************************************************************************** * RasValidateEntryNameW [RASAPI32.73] */DWORD WINAPI RasValidateEntryNameW(LPCWSTR lpszPhonebook, LPCWSTR lpszEntry) { FIXME("(%s,%s), stub!\n",debugstr_w(lpszPhonebook),debugstr_w(lpszEntry)); return 0;}
/************************************************************************** * RasGetEntryPropertiesA [RASAPI32.@] */DWORD WINAPI RasGetEntryPropertiesA(LPCSTR lpszPhonebook, LPCSTR lpszEntry, LPRASENTRYA lpRasEntry, LPDWORD lpdwEntryInfoSize, LPBYTE lpbDeviceInfo, LPDWORD lpdwDeviceInfoSize) { FIXME("(%s,%s,%p,%p,%p,%p), stub!\n", debugstr_a(lpszPhonebook), debugstr_a(lpszEntry), lpRasEntry, lpdwEntryInfoSize, lpbDeviceInfo, lpdwDeviceInfoSize); return 0;}
/************************************************************************** * RasGetEntryPropertiesW [RASAPI32.@] */DWORD WINAPI RasGetEntryPropertiesW(LPCWSTR lpszPhonebook, LPCWSTR lpszEntry, LPRASENTRYW lpRasEntry, LPDWORD lpdwEntryInfoSize, LPBYTE lpbDeviceInfo, LPDWORD lpdwDeviceInfoSize) { FIXME("(%s,%s,%p,%p,%p,%p), stub!\n", debugstr_w(lpszPhonebook), debugstr_w(lpszEntry), lpRasEntry, lpdwEntryInfoSize, lpbDeviceInfo, lpdwDeviceInfoSize); return 0;}
DWORD WINAPI RasGetErrorStringA(UINT uErrorValue, LPSTR lpszErrorString, DWORD cBufSize){ FIXME("(0x%08x,%p,0x%08x), stub!\n", uErrorValue, lpszErrorString, cBufSize); return 1;}
DWORD WINAPI RasGetErrorStringW(UINT uErrorValue, LPWSTR lpszErrorString, DWORD cBufSize){ FIXME("(0x%08x,%p,0x%08x), stub!\n", uErrorValue, lpszErrorString, cBufSize); return 1;}
DWORD WINAPI RasGetProjectionInfoA(HRASCONN hrasconn, RASPROJECTION rasprojection, LPVOID lpprojection, LPDWORD lpcb){ FIXME("(%p,0x%08x,%p,%p), stub!\n", hrasconn, rasprojection, lpprojection, lpcb); return 1;}
DWORD WINAPI RasGetProjectionInfoW(HRASCONN hrasconn, RASPROJECTION rasprojection, LPVOID lpprojection, LPDWORD lpcb){ FIXME("(%p,0x%08x,%p,%p), stub!\n", hrasconn, rasprojection, lpprojection, lpcb); return 1;}
DWORD WINAPI RasRenameEntryA(LPCSTR lpszPhonebook, LPCSTR lpszOldEntry, LPCSTR lpszNewEntry){ FIXME("(%s,%s,%s), stub!\n", debugstr_a(lpszPhonebook), debugstr_a(lpszOldEntry), debugstr_a(lpszNewEntry)); return 0;}
DWORD WINAPI RasRenameEntryW(LPCWSTR lpszPhonebook, LPCWSTR lpszOldEntry, LPCWSTR lpszNewEntry){ FIXME("(%s,%s,%s), stub!\n", debugstr_w(lpszPhonebook), debugstr_w(lpszOldEntry), debugstr_w(lpszNewEntry)); return 0;}
DWORD WINAPI RasSetCustomAuthDataA(const char *phonebook, const char *entry, BYTE *authdata, DWORD size){ FIXME("(%s,%s,%p,0x%08x), stub!\n", debugstr_a(phonebook), debugstr_a(entry), authdata, size); return 0;}
DWORD WINAPI RasSetCustomAuthDataW(const WCHAR *phonebook, const WCHAR *entry, BYTE *authdata, DWORD size){ FIXME("(%s,%s,%p,0x%08x), stub!\n", debugstr_w(phonebook), debugstr_w(entry), authdata, size); return 0;}
DWORD WINAPI RasSetEntryDialParamsA(LPCSTR lpszPhonebook, LPRASDIALPARAMSA lprasdialparams, BOOL fRemovePassword){ FIXME("(%s,%p,0x%x), stub!\n", debugstr_a(lpszPhonebook), lprasdialparams, fRemovePassword); return 0;}
DWORD WINAPI RasSetEntryDialParamsW(LPCWSTR lpszPhonebook, LPRASDIALPARAMSW lprasdialparams, BOOL fRemovePassword){ FIXME("(%s,%p,0x%x), stub!\n", debugstr_w(lpszPhonebook), lprasdialparams, fRemovePassword); return 0;}
DWORD WINAPI RasSetSubEntryPropertiesA(LPCSTR lpszPhonebook, LPCSTR lpszEntry, DWORD dwSubEntry, LPRASSUBENTRYA lpRasSubEntry, DWORD dwcbRasSubEntry, LPBYTE lpbDeviceConfig, DWORD dwcbDeviceConfig){ FIXME("(%s,%s,0x%08x,%p,0x%08x,%p,0x%08x), stub!\n", debugstr_a(lpszPhonebook), debugstr_a(lpszEntry), dwSubEntry, lpRasSubEntry, dwcbRasSubEntry, lpbDeviceConfig, dwcbDeviceConfig); return 0;}
DWORD WINAPI RasSetSubEntryPropertiesW(LPCWSTR lpszPhonebook, LPCWSTR lpszEntry, DWORD dwSubEntry, LPRASSUBENTRYW lpRasSubEntry, DWORD dwcbRasSubEntry, LPBYTE lpbDeviceConfig, DWORD dwcbDeviceConfig){ FIXME("(%s,%s,0x%08x,%p,0x%08x,%p,0x%08x), stub!\n", debugstr_w(lpszPhonebook), debugstr_w(lpszEntry), dwSubEntry, lpRasSubEntry, dwcbRasSubEntry, lpbDeviceConfig, dwcbDeviceConfig); return 0;}
DWORD WINAPI RasGetLinkStatistics(HRASCONN connection, DWORD entry, RAS_STATS *statistics){ FIXME("(%p,%u,%p), stub!\n", connection, entry, statistics); return 0;}
DWORD WINAPI RasGetConnectionStatistics(HRASCONN connection, RAS_STATS *statistics){ FIXME("(%p,%p), stub!\n", connection, statistics); return ERROR_UNKNOWN;}