netspi.h 4.84 KB
Newer Older
1 2
/*
 * MPR - Network provider services
3 4 5
 * Warning: this file apparently existed as part of the Win98 DDK.  Some of
 * the declarations in it conflict with those in the Platform SDK's npapi.h,
 * therefore this header was made private.  Don't try to include both headers.
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
 *
 * Copyright (C) 1999 Ulrich Weigand
 *
 * 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
21
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
22 23 24 25 26
 */

#ifndef _NETSPI_H_
#define _NETSPI_H_

27 28
#include "windef.h"
#include "winnetwk.h"
29 30 31 32 33 34 35 36 37

/*
 * Note: The Unicode variants of all these routines/structures
 *       apparently don't exist, at least not in Win95 ...
 */

#define HPROVIDER LPVOID
typedef HPROVIDER *PHPROVIDER;

38
typedef struct
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
{
    DWORD  cbStructure;
    HWND   hwndOwner;
    LPCSTR lpResource;
    LPSTR  lpUsername;
    DWORD  cbUsername;
    LPSTR  lpPassword;
    DWORD  cbPassword;
    LPSTR  lpOrgUnit;
    DWORD  cbOrgUnit;
    LPCSTR lpOUTitle;
    LPCSTR lpExplainText;
    LPCSTR lpDefaultUserName;
    DWORD  dwFlags;

} AUTHDLGSTRUCTA, *LPAUTHDLGSTRUCTA;

DECL_WINELIB_TYPE_AW(AUTHDLGSTRUCT)
DECL_WINELIB_TYPE_AW(LPAUTHDLGSTRUCT)

#define AUTHDLG_ENABLECACHE       0x00000001
#define AUTHDLG_CHECKCACHE        0x00000002
#define AUTHDLG_CACHEINVALID      0x00000004
#define AUTHDLG_USE_DEFAULT_NAME  0x00000008
#define AUTHDLG_CHECKDEFAULT_NAME 0x00000010
#define AUTHDLG_LOGON             0x00000020

#define AUTHDLG_ENABLECACHE       0x00000001
#define AUTHDLG_CHECKCACHE        0x00000002
#define AUTHDLG_CACHEINVALID      0x00000004
#define AUTHDLG_USE_DEFAULT_NAME  0x00000008
#define AUTHDLG_CHECKDEFAULT_NAME 0x00000010
#define AUTHDLG_LOGON             0x00000020

DWORD WINAPI NPSAuthenticationDialogA(LPAUTHDLGSTRUCTA);
#define      NPSAuthenticationDialog WINELIB_NAME_AW(NPSAuthenticationDialog)
DWORD WINAPI NPSGetProviderHandleA(PHPROVIDER);
#define      NPSGetProviderHandle WINELIB_NAME_AW(NPSGetProviderHandle)
DWORD WINAPI NPSGetProviderNameA(HPROVIDER,LPCSTR *);
#define      NPSGetProviderName WINELIB_NAME_AW(NPSGetProviderName)
DWORD WINAPI NPSGetSectionNameA(HPROVIDER,LPCSTR *lpszSectionName);
#define      NPSGetSectionName WINELIB_NAME_AW(NPSGetSectionName)
DWORD WINAPI NPSSetExtendedErrorA(DWORD,LPSTR);
#define      NPSSetExtendedError WINELIB_NAME_AW(NPSSetExtendedError)
VOID  WINAPI NPSSetCustomTextA(LPSTR);
#define      NPSSetCustomText WINELIB_NAME_AW(NPSSetCustomText)
DWORD WINAPI NPSCopyStringA(LPCSTR,LPVOID,LPDWORD);
#define      NPSCopyString WINELIB_NAME_AW(NPSCopyString)
DWORD WINAPI NPSDeviceGetNumberA(LPSTR,LPDWORD,LPDWORD);
#define      NPSDeviceGetNumber WINELIB_NAME_AW(NPSDeviceGetNumber)
DWORD WINAPI NPSDeviceGetStringA(DWORD,DWORD,LPSTR,LPDWORD);
#define      NPSDeviceGetString WINELIB_NAME_AW(NPSDeviceGetString)


enum NOTIFYTYPE { NotifyAddConnection,
                  NotifyCancelConnection,
                  NotifyGetConnectionPerformance };

#define NOTIFY_PRE              0x00
#define NOTIFY_POST             0x01

100
typedef struct
101 102 103 104 105 106 107 108
{
    DWORD   cbStructure;
    DWORD   dwNotifyStatus;
    DWORD   dwOperationStatus;
    LPVOID  lpNPContext;

} NOTIFYINFO, *LPNOTIFYINFO;

109
typedef struct
110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
{
    DWORD        cbStructure;
    HWND         hwndOwner;
    NETRESOURCEA NetResource;
    DWORD        dwAddFlags;
    LPSTR        lpAccessName;
    LPDWORD      lpBufferSize;
    DWORD        dwResult;
    DWORD        dwAddContext;

} NOTIFYADDA, *LPNOTIFYADDA;

#define CONNECT_CTXT_RESTORE   0x00000001
#define CONNECT_CTXT_GLOBAL    0x00000002
#define CONNECT_CTXT_PROVIDER  0x00000004
#define CONNECT_CTXT_SINGLE    0x00000008

127
typedef struct
128 129 130 131 132 133 134 135 136
{
    DWORD  cbStructure;
    LPSTR  lpName;
    LPSTR  lpProvider;
    DWORD  dwFlags;
    BOOL   fForce;

} NOTIFYCANCELA, *LPNOTIFYCANCELA;

137
typedef struct
138 139 140 141 142 143 144 145
{
    DWORD                  cbStructure;
    LPSTR                  lpRemoteName;
    LPSTR                  lpProviderName;
    LPNETCONNECTINFOSTRUCT lpNetConnectInfo;

} NOTIFYPERFORMANCEA, *LPNOTIFYPERFORMANCEA;

146
typedef DWORD (CALLBACK *NOTIFYCALLBACK)(LPNOTIFYINFO,LPVOID);
147 148 149 150 151 152

DWORD  WINAPI NPSNotifyRegisterA(enum NOTIFYTYPE,NOTIFYCALLBACK);
#define       NPSNotifyRegister WINELIB_NAME_AW(NPSNotifyRegister)
LPVOID WINAPI NPSNotifyGetContextA(NOTIFYCALLBACK);
#define       NPSNotifyGetContext WINELIB_NAME_AW(NPSNotifyGetContext)

Jeff Garzik's avatar
Jeff Garzik committed
153
#endif /* _NETSPI_H_ */