summaryrefslogtreecommitdiffstats
path: root/public/sdk/inc/npapi.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--public/sdk/inc/npapi.h605
1 files changed, 605 insertions, 0 deletions
diff --git a/public/sdk/inc/npapi.h b/public/sdk/inc/npapi.h
new file mode 100644
index 000000000..dbe92803f
--- /dev/null
+++ b/public/sdk/inc/npapi.h
@@ -0,0 +1,605 @@
+/*++
+
+Copyright (c) 1991-1993 Microsoft Corporation
+
+Module Name:
+
+ npapi.h
+
+Abstract:
+
+ Network Provider API prototypes and manifests. A network provider
+ is a client of the Win32 Winnet driver. See the "NT/Win32 Network
+ Provider API Specification" document for further details.
+
+Author:
+
+ John Ludeman (JohnL) 06-Dec-1991
+
+Environment:
+
+ User Mode -Win32
+
+Notes:
+
+ This file currently contains the function typedefs that will be needed
+ by the winnet driver to support multiple providers using LoadLibrary.
+
+Revision History:
+
+ 06-Dec-1991 Johnl
+ Created from Spec.
+
+ 25-Aug-1992 Johnl
+ Changed all LPTSTR to LPWSTR since providers are Unicode only
+
+ 23-Dec-1992 YiHsinS
+ Added NPFormatNetworkName
+
+ 07-Jan-1993 Danl
+ Added Credential Management API functions.
+
+ 23-Feb-1993 YiHsinS
+ Fix type LPNETRESOURCE->LPNETRESOURCEW, LPTSTR->LPWSTR
+
+--*/
+
+#ifndef _NPAPI_INCLUDED
+#define _NPAPI_INCLUDED
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+//
+// CONNECTIONS
+//
+
+DWORD APIENTRY
+NPAddConnection (
+ LPNETRESOURCEW lpNetResource,
+ LPWSTR lpPassword,
+ LPWSTR lpUserName
+ );
+
+typedef DWORD (*PF_NPAddConnection) (
+ LPNETRESOURCEW lpNetResource,
+ LPWSTR lpPassword,
+ LPWSTR lpUserName
+ );
+
+
+DWORD APIENTRY
+NPAddConnection3 (
+ HWND hwndOwner,
+ LPNETRESOURCEW lpNetResource,
+ LPWSTR lpPassword,
+ LPWSTR lpUserName,
+ DWORD dwFlags
+ );
+
+typedef DWORD (*PF_NPAddConnection3) (
+ HWND hwndOwner,
+ LPNETRESOURCEW lpNetResource,
+ LPWSTR lpPassword,
+ LPWSTR lpUserName,
+ DWORD dwFlags
+ );
+
+
+DWORD APIENTRY
+NPCancelConnection (
+ LPWSTR lpName,
+ BOOL fForce
+ );
+typedef DWORD (*PF_NPCancelConnection) (
+ LPWSTR lpName,
+ BOOL fForce
+ );
+
+
+DWORD APIENTRY
+NPGetConnection (
+ LPWSTR lpLocalName,
+ LPWSTR lpRemoteName,
+ LPDWORD lpnBufferLen
+ );
+typedef DWORD (*PF_NPGetConnection) (
+ LPWSTR lpLocalName,
+ LPWSTR lpRemoteName,
+ LPDWORD lpnBufferLen
+ );
+
+
+#define WNGETCON_CONNECTED 0x00000000
+#define WNGETCON_DISCONNECTED 0x00000001
+
+DWORD APIENTRY
+NPGetConnection3 (
+ LPCWSTR lpLocalName,
+ DWORD dwLevel,
+ LPVOID lpBuffer,
+ LPDWORD lpBufferSize
+ );
+typedef DWORD (*PF_NPGetConnection3) (
+ LPCWSTR lpLocalName,
+ DWORD dwLevel,
+ LPVOID lpBuffer,
+ LPDWORD lpBufferSize
+ );
+
+
+DWORD APIENTRY
+NPGetUniversalName (
+ LPCWSTR lpLocalPath,
+ DWORD dwInfoLevel,
+ LPVOID lpBuffer,
+ LPDWORD lpBufferSize
+ );
+typedef DWORD (*PF_NPGetUniversalName) (
+ LPCWSTR lpLocalPath,
+ DWORD dwInfoLevel,
+ LPVOID lpBuffer,
+ LPDWORD lpnBufferSize
+ );
+
+DWORD APIENTRY
+NPGetConnectionPerformance (
+ LPCWSTR lpRemoteName,
+ LPNETCONNECTINFOSTRUCT lpNetConnectInfo
+ );
+typedef DWORD (*PF_NPGetConnectionPerformance) (
+ LPCWSTR lpRemoteName,
+ LPNETCONNECTINFOSTRUCT lpNetConnectInfo
+ );
+
+
+DWORD APIENTRY
+NPOpenEnum (
+ DWORD dwScope,
+ DWORD dwType,
+ DWORD dwUsage,
+ LPNETRESOURCEW lpNetResource,
+ LPHANDLE lphEnum
+ );
+typedef DWORD (*PF_NPOpenEnum) (
+ DWORD dwScope,
+ DWORD dwType,
+ DWORD dwUsage,
+ LPNETRESOURCEW lpNetResource,
+ LPHANDLE lphEnum
+ );
+
+DWORD APIENTRY
+NPEnumResource (
+ HANDLE hEnum,
+ LPDWORD lpcCount,
+ LPVOID lpBuffer,
+ LPDWORD lpBufferSize
+ );
+typedef DWORD (*PF_NPEnumResource) (
+ HANDLE hEnum,
+ LPDWORD lpcCount,
+ LPVOID lpBuffer,
+ LPDWORD lpBufferSize
+ );
+
+DWORD APIENTRY
+NPCloseEnum (
+ HANDLE hEnum
+ );
+typedef DWORD (*PF_NPCloseEnum) (
+ HANDLE hEnum
+ );
+
+
+//
+// CAPABILITIES
+//
+
+#define WNNC_SPEC_VERSION 0x00000001
+#define WNNC_SPEC_VERSION51 0x00050001
+
+#define WNNC_NET_TYPE 0x00000002
+#define WNNC_NET_NONE 0x00000000
+
+#define WNNC_DRIVER_VERSION 0x00000003
+
+#define WNNC_USER 0x00000004
+#define WNNC_USR_GETUSER 0x00000001
+
+#define WNNC_CONNECTION 0x00000006
+#define WNNC_CON_ADDCONNECTION 0x00000001
+#define WNNC_CON_CANCELCONNECTION 0x00000002
+#define WNNC_CON_GETCONNECTIONS 0x00000004
+#define WNNC_CON_ADDCONNECTION3 0x00000008
+#define WNNC_CON_GETPERFORMANCE 0x00000040
+#define WNNC_CON_DEFER 0x00000080
+
+#define WNNC_DIALOG 0x00000008
+#define WNNC_DLG_DEVICEMODE 0x00000001
+#define WNNC_DLG_PROPERTYDIALOG 0x00000020
+#define WNNC_DLG_SEARCHDIALOG 0x00000040
+#define WNNC_DLG_FORMATNETWORKNAME 0x00000080
+#define WNNC_DLG_PERMISSIONEDITOR 0x00000100
+#define WNNC_DLG_GETRESOURCEPARENT 0x00000200
+#define WNNC_DLG_GETRESOURCEINFORMATION 0x00000800
+
+#define WNNC_ADMIN 0x00000009
+#define WNNC_ADM_GETDIRECTORYTYPE 0x00000001
+#define WNNC_ADM_DIRECTORYNOTIFY 0x00000002
+
+#define WNNC_ENUMERATION 0x0000000B
+#define WNNC_ENUM_GLOBAL 0x00000001
+#define WNNC_ENUM_LOCAL 0x00000002
+#define WNNC_ENUM_CONTEXT 0x00000004
+
+#define WNNC_START 0x0000000C
+#define WNNC_WAIT_FOR_START 0x00000001
+
+
+
+DWORD APIENTRY
+NPGetCaps (
+ DWORD ndex
+ );
+typedef DWORD (*PF_NPGetCaps) (
+ DWORD ndex
+ );
+
+//
+// OTHER
+//
+
+DWORD APIENTRY
+NPGetUser (
+ LPWSTR lpName,
+ LPWSTR lpUserName,
+ LPDWORD lpnBufferLen
+ );
+typedef DWORD (*PF_NPGetUser) (
+ LPWSTR lpName,
+ LPWSTR lpUserName,
+ LPDWORD lpnBufferLen
+ );
+
+#define WNTYPE_DRIVE 1
+#define WNTYPE_FILE 2
+#define WNTYPE_PRINTER 3
+#define WNTYPE_COMM 4
+
+#define WNPS_FILE 0
+#define WNPS_DIR 1
+#define WNPS_MULT 2
+
+DWORD APIENTRY
+NPDeviceMode(
+ HWND hParent
+ );
+typedef DWORD (*PF_NPDeviceMode) (
+ HWND hParent
+ );
+
+// flag for search dialog
+#define WNSRCH_REFRESH_FIRST_LEVEL 0x00000001
+
+DWORD APIENTRY
+NPSearchDialog(
+ HWND hwndParent,
+ LPNETRESOURCEW lpNetResource,
+ LPVOID lpBuffer,
+ DWORD cbBuffer,
+ LPDWORD lpnFlags
+ );
+typedef DWORD (*PF_NPSearchDialog) (
+ HWND hwndParent,
+ LPNETRESOURCEW lpNetResource,
+ LPVOID lpBuffer,
+ DWORD cbBuffer,
+ LPDWORD lpnFlags
+ );
+
+DWORD APIENTRY
+NPGetResourceParent(
+ LPNETRESOURCEW lpNetResource,
+ LPVOID lpBuffer,
+ LPDWORD lpBufferSize
+ );
+typedef DWORD (*PF_NPGetResourceParent) (
+ LPNETRESOURCEW lpNetResource,
+ LPVOID lpBuffer,
+ LPDWORD lpBufferSize
+ );
+
+DWORD APIENTRY NPGetResourceInformation(
+ LPNETRESOURCEW lpNetResource,
+ LPVOID lpBuffer,
+ LPDWORD lpBufferSize,
+ LPWSTR *lplpSystem
+ );
+typedef DWORD (*PF_NPGetResourceInformation) (
+ LPNETRESOURCEW lpNetResource,
+ LPVOID lpBuffer,
+ LPDWORD lpBufferSize,
+ LPWSTR *lplpSystem
+ );
+
+DWORD APIENTRY
+NPFormatNetworkName(
+ LPWSTR lpRemoteName,
+ LPWSTR lpFormattedName,
+ LPDWORD lpnLength,
+ DWORD dwFlags,
+ DWORD dwAveCharPerLine
+ );
+typedef DWORD (*PF_NPFormatNetworkName) (
+ LPWSTR lpRemoteName,
+ LPWSTR lpFormattedName,
+ LPDWORD lpnLength,
+ DWORD dwFlags,
+ DWORD dwAveCharPerLine
+ );
+
+DWORD APIENTRY
+NPGetPropertyText(
+ DWORD iButton,
+ DWORD nPropSel,
+ LPWSTR lpName,
+ LPWSTR lpButtonName,
+ DWORD nButtonNameLen,
+ DWORD nType
+ );
+typedef DWORD (*PF_NPGetPropertyText) (
+ DWORD iButton,
+ DWORD nPropSel,
+ LPWSTR lpName,
+ LPWSTR lpButtonName,
+ DWORD nButtonNameLen,
+ DWORD nType
+ );
+
+DWORD APIENTRY
+NPPropertyDialog(
+ HWND hwndParent,
+ DWORD iButtonDlg,
+ DWORD nPropSel,
+ LPWSTR lpFileName,
+ DWORD nType
+ );
+typedef DWORD (*PF_NPPropertyDialog) (
+ HWND hwndParent,
+ DWORD iButtonDlg,
+ DWORD nPropSel,
+ LPWSTR lpFileName,
+ DWORD nType
+ );
+
+
+//
+// ADMIN
+//
+
+#define WNDT_NORMAL 0
+#define WNDT_NETWORK 1
+
+#define WNDN_MKDIR 1
+#define WNDN_RMDIR 2
+#define WNDN_MVDIR 3
+
+DWORD APIENTRY
+NPGetDirectoryType (
+ LPWSTR lpName,
+ LPINT lpType,
+ BOOL bFlushCache
+ );
+typedef DWORD (*PF_NPGetDirectoryType) (
+ LPWSTR lpName,
+ LPINT lpType,
+ BOOL bFlushCache
+ );
+
+DWORD APIENTRY
+NPDirectoryNotify (
+ HWND hwnd,
+ LPWSTR lpDir,
+ DWORD dwOper
+ );
+typedef DWORD (*PF_NPDirectoryNotify) (
+ HWND hwnd,
+ LPWSTR lpDir,
+ DWORD dwOper
+ );
+
+VOID
+WNetSetLastErrorA(
+ DWORD err,
+ LPSTR lpError,
+ LPSTR lpProviders
+ );
+
+VOID
+WNetSetLastErrorW(
+ DWORD err,
+ LPWSTR lpError,
+ LPWSTR lpProviders
+ );
+
+#ifdef UNICODE
+#define WNetSetLastError WNetSetLastErrorW
+#else
+#define WNetSetLastError WNetSetLastErrorA
+#endif // UNICODE
+
+//
+// CREDENTIAL MANAGEMENT and other classes of providers
+//
+
+
+// Define the Net/Authentication and othr Provider Classes
+#define WN_NETWORK_CLASS 0x00000001
+#define WN_CREDENTIAL_CLASS 0x00000002
+#define WN_PRIMARY_AUTHENT_CLASS 0x00000004
+#define WN_SERVICE_CLASS 0x00000008
+
+#define WN_VALID_LOGON_ACCOUNT 0x00000001
+#define WN_NT_PASSWORD_CHANGED 0x00000002
+
+DWORD APIENTRY
+NPLogonNotify (
+ PLUID lpLogonId,
+ LPCWSTR lpAuthentInfoType,
+ LPVOID lpAuthentInfo,
+ LPCWSTR lpPreviousAuthentInfoType,
+ LPVOID lpPreviousAuthentInfo,
+ LPWSTR lpStationName,
+ LPVOID StationHandle,
+ LPWSTR *lpLogonScript
+ );
+typedef DWORD (*PF_NPLogonNotify) (
+ PLUID lpLogonId,
+ LPCWSTR lpAuthentInfoType,
+ LPVOID lpAuthentInfo,
+ LPCWSTR lpPreviousAuthentInfoType,
+ LPVOID lpPreviousAuthentInfo,
+ LPWSTR lpStationName,
+ LPVOID StationHandle,
+ LPWSTR *lpLogonScript
+ );
+
+DWORD APIENTRY
+NPPasswordChangeNotify (
+ LPCWSTR lpAuthentInfoType,
+ LPVOID lpAuthentInfo,
+ LPCWSTR lpPreviousAuthentInfoType,
+ LPVOID lpPreviousAuthentInfo,
+ LPWSTR lpStationName,
+ LPVOID StationHandle,
+ DWORD dwChangeInfo
+ );
+
+typedef DWORD (*PF_NPPasswordChangeNotify) (
+ LPCWSTR lpAuthentInfoType,
+ LPVOID lpAuthentInfo,
+ LPCWSTR lpPreviousAuthentInfoType,
+ LPVOID lpPreviousAuthentInfo,
+ LPWSTR lpStationName,
+ LPVOID StationHandle,
+ DWORD dwChangeInfo
+ );
+
+//
+// CONNECTION NOTIFICATION
+//
+
+//
+// NotifyStatus
+//
+#define NOTIFY_PRE 0x00000001
+#define NOTIFY_POST 0x00000002
+
+typedef struct _NOTIFYINFO {
+ DWORD dwNotifyStatus;
+ DWORD dwOperationStatus;
+ LPVOID lpContext;
+} NOTIFYINFO, *LPNOTIFYINFO;
+
+typedef struct _NOTIFYADD {
+ HWND hwndOwner;
+ NETRESOURCE NetResource;
+ DWORD dwAddFlags;
+} NOTIFYADD, *LPNOTIFYADD;
+
+typedef struct _NOTIFYCANCEL {
+ LPWSTR lpName;
+ LPWSTR lpProvider;
+ DWORD dwFlags;
+ BOOL fForce;
+} NOTIFYCANCEL, *LPNOTIFYCANCEL;
+
+
+DWORD APIENTRY
+AddConnectNotify (
+ LPNOTIFYINFO lpNotifyInfo,
+ LPNOTIFYADD lpAddInfo
+ );
+
+typedef DWORD (*PF_AddConnectNotify) (
+ LPNOTIFYINFO lpNotifyInfo,
+ LPNOTIFYADD lpAddInfo
+ );
+
+DWORD APIENTRY
+CancelConnectNotify (
+ LPNOTIFYINFO lpNotifyInfo,
+ LPNOTIFYCANCEL lpCancelInfo
+ );
+
+typedef DWORD (*PF_CancelConnectNotify) (
+ LPNOTIFYINFO lpNotifyInfo,
+ LPNOTIFYCANCEL lpCancelInfo
+ );
+
+//
+// Permission editor dialogs
+//
+
+//
+// Capabilities bits of permission editor dialogs
+//
+#define WNPERMC_PERM 0x00000001
+#define WNPERMC_AUDIT 0x00000002
+#define WNPERMC_OWNER 0x00000004
+
+DWORD APIENTRY
+NPFMXGetPermCaps (
+ LPWSTR lpDriveName
+ );
+
+typedef DWORD (*PF_NPFMXGetPermCaps) (
+ LPWSTR lpDriveName
+ );
+
+//
+// Type of security dialog
+//
+#define WNPERM_DLG_PERM 0
+#define WNPERM_DLG_AUDIT 1
+#define WNPERM_DLG_OWNER 2
+
+DWORD APIENTRY
+NPFMXEditPerm (
+ LPWSTR lpDriveName,
+ HWND hwndFMX,
+ DWORD nDialogType
+ );
+
+typedef DWORD (*PF_NPFMXEditPerm) (
+ LPWSTR lpDriveName,
+ HWND hwndFMX,
+ DWORD nDialogType
+ );
+
+DWORD APIENTRY
+NPFMXGetPermHelp (
+ LPWSTR lpDriveName,
+ DWORD nDialogType,
+ BOOL fDirectory,
+ LPVOID lpFileNameBuffer,
+ LPDWORD lpBufferSize,
+ LPDWORD lpnHelpContext
+ );
+
+typedef DWORD (*PF_NPFMXGetPermHelp) (
+ LPWSTR lpDriveName,
+ DWORD nDialogType,
+ BOOL fDirectory,
+ LPVOID lpFileNameBuffer,
+ LPDWORD lpBufferSize,
+ LPDWORD lpnHelpContext
+ );
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // _NPAPI_INCLUDED