- Fixed resource functions to work directly from the HMODULE instead of
[wine] / include / netspi.h
1 /*
2  * MPR - Network provider services
3  */
4
5 #ifndef _NETSPI_H_
6 #define _NETSPI_H_
7
8 #include "windef.h"
9 #include "winnetwk.h"
10
11 /*
12  * Note: The Unicode variants of all these routines/structures
13  *       apparently don't exist, at least not in Win95 ...
14  */
15
16 #define HPROVIDER LPVOID
17 typedef HPROVIDER *PHPROVIDER;
18
19 typedef struct 
20 {
21     DWORD  cbStructure;
22     HWND   hwndOwner;
23     LPCSTR lpResource;
24     LPSTR  lpUsername;
25     DWORD  cbUsername;
26     LPSTR  lpPassword;
27     DWORD  cbPassword;
28     LPSTR  lpOrgUnit;
29     DWORD  cbOrgUnit;
30     LPCSTR lpOUTitle;
31     LPCSTR lpExplainText;
32     LPCSTR lpDefaultUserName;
33     DWORD  dwFlags;
34
35 } AUTHDLGSTRUCTA, *LPAUTHDLGSTRUCTA;
36
37 DECL_WINELIB_TYPE_AW(AUTHDLGSTRUCT)
38 DECL_WINELIB_TYPE_AW(LPAUTHDLGSTRUCT)
39
40 #define AUTHDLG_ENABLECACHE       0x00000001
41 #define AUTHDLG_CHECKCACHE        0x00000002
42 #define AUTHDLG_CACHEINVALID      0x00000004
43 #define AUTHDLG_USE_DEFAULT_NAME  0x00000008
44 #define AUTHDLG_CHECKDEFAULT_NAME 0x00000010
45 #define AUTHDLG_LOGON             0x00000020
46
47 #define AUTHDLG_ENABLECACHE       0x00000001
48 #define AUTHDLG_CHECKCACHE        0x00000002
49 #define AUTHDLG_CACHEINVALID      0x00000004
50 #define AUTHDLG_USE_DEFAULT_NAME  0x00000008
51 #define AUTHDLG_CHECKDEFAULT_NAME 0x00000010
52 #define AUTHDLG_LOGON             0x00000020
53
54 DWORD WINAPI NPSAuthenticationDialogA(LPAUTHDLGSTRUCTA);
55 #define      NPSAuthenticationDialog WINELIB_NAME_AW(NPSAuthenticationDialog)
56 DWORD WINAPI NPSGetProviderHandleA(PHPROVIDER);
57 #define      NPSGetProviderHandle WINELIB_NAME_AW(NPSGetProviderHandle)
58 DWORD WINAPI NPSGetProviderNameA(HPROVIDER,LPCSTR *);
59 #define      NPSGetProviderName WINELIB_NAME_AW(NPSGetProviderName)
60 DWORD WINAPI NPSGetSectionNameA(HPROVIDER,LPCSTR *lpszSectionName);
61 #define      NPSGetSectionName WINELIB_NAME_AW(NPSGetSectionName)
62 DWORD WINAPI NPSSetExtendedErrorA(DWORD,LPSTR);
63 #define      NPSSetExtendedError WINELIB_NAME_AW(NPSSetExtendedError)
64 VOID  WINAPI NPSSetCustomTextA(LPSTR);
65 #define      NPSSetCustomText WINELIB_NAME_AW(NPSSetCustomText)
66 DWORD WINAPI NPSCopyStringA(LPCSTR,LPVOID,LPDWORD);
67 #define      NPSCopyString WINELIB_NAME_AW(NPSCopyString)
68 DWORD WINAPI NPSDeviceGetNumberA(LPSTR,LPDWORD,LPDWORD);
69 #define      NPSDeviceGetNumber WINELIB_NAME_AW(NPSDeviceGetNumber)
70 DWORD WINAPI NPSDeviceGetStringA(DWORD,DWORD,LPSTR,LPDWORD);
71 #define      NPSDeviceGetString WINELIB_NAME_AW(NPSDeviceGetString)
72
73
74 enum NOTIFYTYPE { NotifyAddConnection,
75                   NotifyCancelConnection,
76                   NotifyGetConnectionPerformance };
77
78 #define NOTIFY_PRE              0x00
79 #define NOTIFY_POST             0x01
80
81 typedef struct 
82 {
83     DWORD   cbStructure;
84     DWORD   dwNotifyStatus;
85     DWORD   dwOperationStatus;
86     LPVOID  lpNPContext;
87
88 } NOTIFYINFO, *LPNOTIFYINFO;
89
90 typedef struct 
91 {
92     DWORD        cbStructure;
93     HWND         hwndOwner;
94     NETRESOURCEA NetResource;
95     DWORD        dwAddFlags;
96     LPSTR        lpAccessName;
97     LPDWORD      lpBufferSize;
98     DWORD        dwResult;
99     DWORD        dwAddContext;
100
101 } NOTIFYADDA, *LPNOTIFYADDA;
102
103 #define CONNECT_CTXT_RESTORE   0x00000001
104 #define CONNECT_CTXT_GLOBAL    0x00000002
105 #define CONNECT_CTXT_PROVIDER  0x00000004
106 #define CONNECT_CTXT_SINGLE    0x00000008
107
108 typedef struct 
109 {
110     DWORD  cbStructure;
111     LPSTR  lpName;
112     LPSTR  lpProvider;
113     DWORD  dwFlags;
114     BOOL   fForce;
115
116 } NOTIFYCANCELA, *LPNOTIFYCANCELA;
117
118 typedef struct 
119 {
120     DWORD                  cbStructure;
121     LPSTR                  lpRemoteName;
122     LPSTR                  lpProviderName;
123     LPNETCONNECTINFOSTRUCT lpNetConnectInfo;
124
125 } NOTIFYPERFORMANCEA, *LPNOTIFYPERFORMANCEA;
126
127 typedef DWORD CALLBACK (*NOTIFYCALLBACK)(LPNOTIFYINFO,LPVOID);
128
129 DWORD  WINAPI NPSNotifyRegisterA(enum NOTIFYTYPE,NOTIFYCALLBACK);
130 #define       NPSNotifyRegister WINELIB_NAME_AW(NPSNotifyRegister)
131 LPVOID WINAPI NPSNotifyGetContextA(NOTIFYCALLBACK);
132 #define       NPSNotifyGetContext WINELIB_NAME_AW(NPSNotifyGetContext)
133
134 #endif _NETSPI_H_
135