mirror of
https://github.com/reactos/reactos.git
synced 2025-08-06 04:33:12 +00:00
112 lines
3 KiB
Diff
112 lines
3 KiB
Diff
Index: mpr.spec
|
|
===================================================================
|
|
--- mpr.spec (revision 49877)
|
|
+++ mpr.spec (working copy)
|
|
@@ -1,23 +1,23 @@
|
|
# ordinal exports
|
|
- 1 stub @
|
|
- 2 stub @
|
|
- 3 stub @
|
|
- 4 stub @
|
|
- 5 stub @
|
|
- 6 stub @
|
|
- 7 stub @
|
|
- 8 stub @
|
|
- 9 stub @
|
|
-12 stub @
|
|
-13 stub @
|
|
-14 stub @
|
|
-15 stub @
|
|
-16 stub @
|
|
-17 stub @
|
|
-18 stub @
|
|
-19 stub @
|
|
-20 stub @
|
|
-21 stub @
|
|
+ 1 stub MPR_1
|
|
+ 2 stub MPR_2
|
|
+ 3 stub MPR_3
|
|
+ 4 stub MPR_4
|
|
+ 5 stub MPR_5
|
|
+ 6 stub MPR_6
|
|
+ 7 stub MPR_7
|
|
+ 8 stub MPR_8
|
|
+ 9 stub MPR_9
|
|
+12 stub MPR_12
|
|
+13 stub MPR_13
|
|
+14 stub MPR_14
|
|
+15 stub MPR_15
|
|
+16 stub MPR_16
|
|
+17 stub MPR_17
|
|
+18 stub MPR_18
|
|
+19 stub MPR_19
|
|
+20 stub MPR_20
|
|
+21 stub MPR_21
|
|
22 stdcall @(long) MPR_Alloc
|
|
23 stdcall @(ptr long) MPR_ReAlloc
|
|
24 stdcall @(ptr) MPR_Free
|
|
Index: wnet.c
|
|
===================================================================
|
|
--- wnet.c (revision 71983)
|
|
+++ wnet.c (working copy)
|
|
@@ -48,6 +48,9 @@
|
|
PF_NPGetResourceInformation getResourceInformation;
|
|
PF_NPAddConnection addConnection;
|
|
PF_NPAddConnection3 addConnection3;
|
|
+#ifdef __REACTOS__
|
|
+ PF_NPGetConnection getConnection;
|
|
+#endif
|
|
} WNetProvider, *PWNetProvider;
|
|
|
|
typedef struct _WNetProviderTable
|
|
@@ -196,6 +199,9 @@
|
|
}
|
|
provider->addConnection = MPR_GETPROC(NPAddConnection);
|
|
provider->addConnection3 = MPR_GETPROC(NPAddConnection3);
|
|
+#ifdef __REACTOS__
|
|
+ provider->getConnection = MPR_GETPROC(NPGetConnection);
|
|
+#endif
|
|
TRACE("NPAddConnection %p\n", provider->addConnection);
|
|
TRACE("NPAddConnection3 %p\n", provider->addConnection3);
|
|
providerTable->numProviders++;
|
|
@@ -1949,6 +1955,7 @@
|
|
/* find the network connection for a given drive; helper for WNetGetConnection */
|
|
static DWORD get_drive_connection( WCHAR letter, LPWSTR remote, LPDWORD size )
|
|
{
|
|
+#ifndef __REACTOS__
|
|
char buffer[1024];
|
|
struct mountmgr_unix_drive *data = (struct mountmgr_unix_drive *)buffer;
|
|
HANDLE mgr;
|
|
@@ -1991,6 +1998,32 @@
|
|
}
|
|
CloseHandle( mgr );
|
|
return ret;
|
|
+#else
|
|
+ DWORD ret = WN_NO_NETWORK;
|
|
+ DWORD index;
|
|
+ WCHAR local[3] = {letter, ':', 0};
|
|
+
|
|
+ if (providerTable != NULL)
|
|
+ {
|
|
+ for (index = 0; index < providerTable->numProviders; index++)
|
|
+ {
|
|
+ if(providerTable->table[index].getCaps(WNNC_CONNECTION) &
|
|
+ WNNC_CON_GETCONNECTIONS)
|
|
+ {
|
|
+ if (providerTable->table[index].getConnection)
|
|
+ ret = providerTable->table[index].getConnection(
|
|
+ local, remote, size);
|
|
+ else
|
|
+ ret = WN_NO_NETWORK;
|
|
+ if (ret == WN_SUCCESS || ret == WN_MORE_DATA)
|
|
+ break;
|
|
+ }
|
|
+ }
|
|
+ }
|
|
+ if (ret)
|
|
+ SetLastError(ret);
|
|
+ return ret;
|
|
+#endif
|
|
}
|
|
|
|
/**************************************************************************
|