1 /* 2 * MPR - Network provider services 3 * Warning: this file apparently existed as part of the Win98 DDK. Some of 4 * the declarations in it conflict with those in the Platform SDK's npapi.h, 5 * therefore this header was made private. Don't try to include both headers. 6 * 7 * Copyright (C) 1999 Ulrich Weigand 8 * 9 * This library is free software; you can redistribute it and/or 10 * modify it under the terms of the GNU Lesser General Public 11 * License as published by the Free Software Foundation; either 12 * version 2.1 of the License, or (at your option) any later version. 13 * 14 * This library is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17 * Lesser General Public License for more details. 18 * 19 * You should have received a copy of the GNU Lesser General Public 20 * License along with this library; if not, write to the Free Software 21 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 22 */ 23 24 #ifndef _NETSPI_H_ 25 #define _NETSPI_H_ 26 27 #include "windef.h" 28 #include "winnetwk.h" 29 30 /* 31 * Note: The Unicode variants of all these routines/structures 32 * apparently don't exist, at least not in Win95 ... 33 */ 34 35 #define HPROVIDER LPVOID 36 typedef HPROVIDER *PHPROVIDER; 37 38 typedef struct 39 { 40 DWORD cbStructure; 41 HWND hwndOwner; 42 LPCSTR lpResource; 43 LPSTR lpUsername; 44 DWORD cbUsername; 45 LPSTR lpPassword; 46 DWORD cbPassword; 47 LPSTR lpOrgUnit; 48 DWORD cbOrgUnit; 49 LPCSTR lpOUTitle; 50 LPCSTR lpExplainText; 51 LPCSTR lpDefaultUserName; 52 DWORD dwFlags; 53 54 } AUTHDLGSTRUCTA, *LPAUTHDLGSTRUCTA; 55 56 DECL_WINELIB_TYPE_AW(AUTHDLGSTRUCT) 57 DECL_WINELIB_TYPE_AW(LPAUTHDLGSTRUCT) 58 59 #define AUTHDLG_ENABLECACHE 0x00000001 60 #define AUTHDLG_CHECKCACHE 0x00000002 61 #define AUTHDLG_CACHEINVALID 0x00000004 62 #define AUTHDLG_USE_DEFAULT_NAME 0x00000008 63 #define AUTHDLG_CHECKDEFAULT_NAME 0x00000010 64 #define AUTHDLG_LOGON 0x00000020 65 66 #define AUTHDLG_ENABLECACHE 0x00000001 67 #define AUTHDLG_CHECKCACHE 0x00000002 68 #define AUTHDLG_CACHEINVALID 0x00000004 69 #define AUTHDLG_USE_DEFAULT_NAME 0x00000008 70 #define AUTHDLG_CHECKDEFAULT_NAME 0x00000010 71 #define AUTHDLG_LOGON 0x00000020 72 73 DWORD WINAPI NPSAuthenticationDialogA(LPAUTHDLGSTRUCTA); 74 #define NPSAuthenticationDialog WINELIB_NAME_AW(NPSAuthenticationDialog) 75 DWORD WINAPI NPSGetProviderHandleA(PHPROVIDER); 76 #define NPSGetProviderHandle WINELIB_NAME_AW(NPSGetProviderHandle) 77 DWORD WINAPI NPSGetProviderNameA(HPROVIDER,LPCSTR *); 78 #define NPSGetProviderName WINELIB_NAME_AW(NPSGetProviderName) 79 DWORD WINAPI NPSGetSectionNameA(HPROVIDER,LPCSTR *lpszSectionName); 80 #define NPSGetSectionName WINELIB_NAME_AW(NPSGetSectionName) 81 DWORD WINAPI NPSSetExtendedErrorA(DWORD,LPSTR); 82 #define NPSSetExtendedError WINELIB_NAME_AW(NPSSetExtendedError) 83 VOID WINAPI NPSSetCustomTextA(LPSTR); 84 #define NPSSetCustomText WINELIB_NAME_AW(NPSSetCustomText) 85 DWORD WINAPI NPSCopyStringA(LPCSTR,LPVOID,LPDWORD); 86 #define NPSCopyString WINELIB_NAME_AW(NPSCopyString) 87 DWORD WINAPI NPSDeviceGetNumberA(LPSTR,LPDWORD,LPDWORD); 88 #define NPSDeviceGetNumber WINELIB_NAME_AW(NPSDeviceGetNumber) 89 DWORD WINAPI NPSDeviceGetStringA(DWORD,DWORD,LPSTR,LPDWORD); 90 #define NPSDeviceGetString WINELIB_NAME_AW(NPSDeviceGetString) 91 92 93 enum NOTIFYTYPE { NotifyAddConnection, 94 NotifyCancelConnection, 95 NotifyGetConnectionPerformance }; 96 97 #define NOTIFY_PRE 0x00 98 #define NOTIFY_POST 0x01 99 100 typedef struct 101 { 102 DWORD cbStructure; 103 DWORD dwNotifyStatus; 104 DWORD dwOperationStatus; 105 LPVOID lpNPContext; 106 107 } NOTIFYINFO, *LPNOTIFYINFO; 108 109 typedef struct 110 { 111 DWORD cbStructure; 112 HWND hwndOwner; 113 NETRESOURCEA NetResource; 114 DWORD dwAddFlags; 115 LPSTR lpAccessName; 116 LPDWORD lpBufferSize; 117 DWORD dwResult; 118 DWORD dwAddContext; 119 120 } NOTIFYADDA, *LPNOTIFYADDA; 121 122 #define CONNECT_CTXT_RESTORE 0x00000001 123 #define CONNECT_CTXT_GLOBAL 0x00000002 124 #define CONNECT_CTXT_PROVIDER 0x00000004 125 #define CONNECT_CTXT_SINGLE 0x00000008 126 127 typedef struct 128 { 129 DWORD cbStructure; 130 LPSTR lpName; 131 LPSTR lpProvider; 132 DWORD dwFlags; 133 BOOL fForce; 134 135 } NOTIFYCANCELA, *LPNOTIFYCANCELA; 136 137 typedef struct 138 { 139 DWORD cbStructure; 140 LPSTR lpRemoteName; 141 LPSTR lpProviderName; 142 LPNETCONNECTINFOSTRUCT lpNetConnectInfo; 143 144 } NOTIFYPERFORMANCEA, *LPNOTIFYPERFORMANCEA; 145 146 typedef DWORD (CALLBACK *NOTIFYCALLBACK)(LPNOTIFYINFO,LPVOID); 147 148 DWORD WINAPI NPSNotifyRegisterA(enum NOTIFYTYPE,NOTIFYCALLBACK); 149 #define NPSNotifyRegister WINELIB_NAME_AW(NPSNotifyRegister) 150 LPVOID WINAPI NPSNotifyGetContextA(NOTIFYCALLBACK); 151 #define NPSNotifyGetContext WINELIB_NAME_AW(NPSNotifyGetContext) 152 153 #endif /* _NETSPI_H_ */ 154