Bruno Jesus : netapi32: Better stub NetStatisticsGet().
Alexandre Julliard
julliard at wine.codeweavers.com
Tue Apr 7 10:11:28 CDT 2015
Module: wine
Branch: master
Commit: 4eff187961e99fc58f0812d37bc9fac79406c330
URL: http://source.winehq.org/git/wine.git/?a=commit;h=4eff187961e99fc58f0812d37bc9fac79406c330
Author: Bruno Jesus <00cpxxx at gmail.com>
Date: Mon Apr 6 22:01:13 2015 -0300
netapi32: Better stub NetStatisticsGet().
---
dlls/netapi32/netapi32.c | 47 +++++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 45 insertions(+), 2 deletions(-)
diff --git a/dlls/netapi32/netapi32.c b/dlls/netapi32/netapi32.c
index f9bfb48..33c0c17 100644
--- a/dlls/netapi32/netapi32.c
+++ b/dlls/netapi32/netapi32.c
@@ -1083,8 +1083,51 @@ NET_API_STATUS WINAPI NetStatisticsGet(LMSTR server, LMSTR service,
DWORD level, DWORD options,
LPBYTE *bufptr)
{
- TRACE("(%p, %p, %d, %d, %p)\n", server, service, level, options, bufptr);
- return NERR_InternalError;
+ int res;
+ static const WCHAR SERVICE_WORKSTATION[] = {
+ 'L', 'a', 'n', 'm', 'a', 'n',
+ 'W', 'o', 'r', 'k', 's', 't', 'a', 't', 'i', 'o', 'n', '\0'};
+ static const WCHAR SERVICE_SERVER[] = {
+ 'L', 'a', 'n', 'm', 'a', 'n',
+ 'S', 'e', 'r', 'v', 'e', 'r', '\0'};
+ union
+ {
+ STAT_WORKSTATION_0 workst;
+ STAT_SERVER_0 server;
+ } *stat;
+ void *dataptr;
+
+ TRACE("(server %s, service %s, level %d, options %d, buffer %p): stub\n",
+ debugstr_w(server), debugstr_w(service), level, options, bufptr);
+
+ res = NetApiBufferAllocate(sizeof(*stat), &dataptr);
+ if (res != NERR_Success) return res;
+
+ res = NERR_InternalError;
+ stat = dataptr;
+ switch (level)
+ {
+ case 0:
+ if (!lstrcmpW(service, SERVICE_WORKSTATION))
+ {
+ /* Fill the struct STAT_WORKSTATION_0 properly */
+ memset(&stat->workst, 0, sizeof(stat->workst));
+ res = NERR_Success;
+ }
+ else if (!lstrcmpW(service, SERVICE_SERVER))
+ {
+ /* Fill the struct STAT_SERVER_0 properly */
+ memset(&stat->server, 0, sizeof(stat->server));
+ res = NERR_Success;
+ }
+ break;
+ }
+ if (res != NERR_Success)
+ NetApiBufferFree(dataptr);
+ else
+ *bufptr = dataptr;
+
+ return res;
}
NET_API_STATUS WINAPI NetUseEnum(LMSTR server, DWORD level, LPBYTE* bufptr, DWORD prefmaxsize,
More information about the wine-cvs
mailing list