3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Copyright (C) 2004 Juan Lang
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * This library is free software; you can redistribute it and/or
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * modify it under the terms of the GNU Lesser General Public
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * License as published by the Free Software Foundation; either
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * version 2.1 of the License, or (at your option) any later version.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * This library is distributed in the hope that it will be useful,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * but WITHOUT ANY WARRANTY; without even the implied warranty of
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Lesser General Public License for more details.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * You should have received a copy of the GNU Lesser General Public
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * License along with this library; if not, write to the Free Software
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * a choice of LGPL license versions is made available with the language indicating
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * that LGPLv2 or any later version may be used, or where a choice of which version
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * of the LGPL is applied is otherwise unspecified.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncextern "C" {
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* capabilities */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* get user */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPGetUser)(LPWSTR lpName, LPWSTR lpUserName,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* enumeration-related */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPOpenEnum)(DWORD dwScope, DWORD dwType, DWORD dwUsage,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPEnumResource)(HANDLE hEnum, LPDWORD lpcCount,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPCloseEnum)(HANDLE hEnum);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPGetResourceInformation)(LPNETRESOURCEW lpNetResource,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync LPVOID lpBuffer, LPDWORD lpcbBuffer, LPWSTR* lplpSystem);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* connection-related */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPAddConnection)(LPNETRESOURCEW lpNetResource,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPAddConnection3)(HWND hwndOwner,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync LPNETRESOURCEW lpNetResource, LPWSTR lpPassword, LPWSTR lpUserName,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPCancelConnection)(LPWSTR lpName, BOOL fForce);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPGetConnection)(LPWSTR lpLocalName,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* network name manipulation */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPGetUniversalName)(LPWSTR lpLocalPath,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync DWORD dwInfoLevel, LPVOID lpBuffer, LPDWORD lpnBufferSize);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPFormatNetworkName)(LPWSTR lpRemoteName,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync LPWSTR lpFormattedName, LPDWORD lpnLength, DWORD dwFlags,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* dialogs */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPDeviceMode)(HWND hParent);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* search dialog */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPSearchDialog)(HWND hwndParent,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync LPNETRESOURCEW lpNetResource, LPVOID lpBuffer, DWORD cbBuffer,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* property dialog */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPGetPropertyText)(DWORD iButton, DWORD nPropSel,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync LPWSTR lpName, LPWSTR lpButtonName, DWORD nButtonNameLen, DWORD nType);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPPropertyDialog)(HWND hwndParent, DWORD iButtonDlg,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPGetDirectoryType)(LPWSTR lpName, LPINT lpType,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPDirectoryNotify)(HWND hwnd, LPWSTR lpDir,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* permission editor dialogs */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPFMXGetPermCaps)(LPWSTR lpDriveName);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPFMXEditPerm)(LPWSTR lpDriveName, HWND hwndFMX,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPFMXGetPermHelp)(LPWSTR lpDriveName,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync DWORD nDialogType, BOOL fDirectory, LPVOID lpFileNameBuffer,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncVOID WINAPI WNetSetLastErrorA(DWORD err, LPSTR lpError, LPSTR lpProviders);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncVOID WINAPI WNetSetLastErrorW(DWORD err, LPWSTR lpError, LPWSTR lpProviders);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define WNetSetLastError WINELIB_NAME_AW(WNetSetLastError)
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* provider classes */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* notifications */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPLogonNotify)(PLUID lpLogonId,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync LPCWSTR lpPreviousAuthentInfoType, LPVOID lpPreviousAuthentInfo,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync LPWSTR lpStationName, LPVOID StationHandle, LPWSTR *lpLogonScript);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_NPPasswordChangeNotify)(LPCWSTR lpAuthentInfoType,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync LPVOID lpAuthentInfo, LPCWSTR lpPreviousAuthentInfoType,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync LPVOID lpPreviousAuthentInfo, LPWSTR lpStationName, LPVOID StationHandle,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* FIXME: NetResource is declared as a NETRESOURCE in psdk, not a NETRESOURCEW,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * but how can the type change in a service provider? Defaulting to wide-char
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * for consistency with the rest of the api.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* FIXME: lpName and lpProvider are declared as LPTSTRs in psdk, but again
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * for consistency with rest of api defaulting to LPWSTRs.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_AddConnectNotify)(LPNOTIFYINFO lpNotifyInfo,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef DWORD (APIENTRY *PF_CancelConnectNotify)(LPNOTIFYINFO lpNotifyInfo,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#endif /* ndef __WINE_NPAPI_H__ */