]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
Windows: Add support for NetWkstaGetInfo levels 101 and 102
authorJeffrey Altman <jaltman@your-file-system.com>
Wed, 12 May 2010 04:58:30 +0000 (00:58 -0400)
committerJeffrey Altman <jaltman@openafs.org>
Wed, 12 May 2010 05:28:38 +0000 (22:28 -0700)
On Windows 7, NetWkstaGetInfo levels 101 and 102 are queried.
Add support to the WKSSVC RPC Pipe service.

LICENSE MIT

Change-Id: Ia780ee69834c01c2d0c2965ae2c65f80d504a923
Reviewed-on: http://gerrit.openafs.org/1950
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
src/WINNT/afsd/rpc_wkssvc.c

index 8438967d3e2c825aa05640fc771b95e16984cda0..a8845b861ae5d2f584d49611e0af0c44355d6d1e 100644 (file)
@@ -49,13 +49,19 @@ unsigned long NetrWkstaGetInfo(
      * not know the max size of the RPC response.
      */
     switch (Level) {
+    case 102:
+        WkstaInfo->WkstaInfo102 = calloc(1, sizeof(WKSTA_INFO_102));
+        break;
+    case 101:
+        WkstaInfo->WkstaInfo101 = calloc(1, sizeof(WKSTA_INFO_101));
+        break;
     case 100:
         WkstaInfo->WkstaInfo100 = calloc(1, sizeof(WKSTA_INFO_100));
         break;
     }
 
     if (WkstaInfo->WkstaInfo100 == NULL) {
-        return ERROR_NOT_ENOUGH_MEMORY;
+        return ERROR_INVALID_LEVEL;
     }
 
     /*
@@ -65,6 +71,10 @@ unsigned long NetrWkstaGetInfo(
     for ( s=ServerName; *s == '\\' || *s == '/'; s++);
 
     switch (Level) {
+    case 102:
+        WkstaInfo->WkstaInfo102->wki102_logged_on_users = 0;
+    case 101:
+        WkstaInfo->WkstaInfo101->wki101_lanroot = NULL;
     case  100:
         WkstaInfo->WkstaInfo100->wki100_computername = _wcsupr(wcsdup(s));
         WkstaInfo->WkstaInfo100->wki100_langroup = _wcsdup(L"AFS");