includes.h: Fixed S_IFLNK for old DEC ultrix.
authorSamba Release Account <samba-bugs@samba.org>
Wed, 13 Aug 1997 20:16:32 +0000 (20:16 +0000)
committerSamba Release Account <samba-bugs@samba.org>
Wed, 13 Aug 1997 20:16:32 +0000 (20:16 +0000)
ipc.c: Finally :-) fixed responses to NetServerEnum2 when SV_TYPE_ALL
        given.
Jeremy (jallison@whistle.com)
(This used to be commit 1dc37c83506a434840a04c49e423cd9d2223fab4)

source3/include/includes.h
source3/smbd/ipc.c

index 35112ff70bb964a518574956a6f121dcaebd23bb..03c2d461e6a7c339bd2bf50ccfe54d950f7f3d88 100644 (file)
@@ -1105,6 +1105,10 @@ extern char *sys_errlist[];
 #define S_ISDIR(x) ((S_IFDIR & x)!=0)
 #endif
 
+#if !defined(S_ISLNK) && defined(S_IFLNK)
+#define S_ISLNK(x) ((S_IFLNK & x)!=0)
+#endif
+
 #ifdef UFC_CRYPT
 #define crypt ufc_crypt
 #endif
index 89dd9f511bae17a561fdafdceb1965edb4c358df..d6d2f289aa48ece3c77f107a29cf59d499dd10a5 100644 (file)
@@ -982,11 +982,17 @@ static BOOL api_RNetServerEnum(int cnum, uint16 vuid, char *param, char *data,
   int i,missed;
   fstring domain;
   BOOL domain_request;
-  BOOL local_request = servertype & SV_TYPE_LOCAL_LIST_ONLY;
+  BOOL local_request;
 
-  if (servertype == SV_TYPE_ALL) servertype &= ~SV_TYPE_DOMAIN_ENUM;
+  /* If someone sets all the bits they don't really mean to set
+     DOMAIN_ENUM and LOCAL_LIST_ONLY, they just want all the
+     known servers. */
+
+  if (servertype == SV_TYPE_ALL) 
+    servertype &= ~(SV_TYPE_DOMAIN_ENUM|SV_TYPE_LOCAL_LIST_ONLY);
 
   domain_request = ((servertype & SV_TYPE_DOMAIN_ENUM) != 0);
+  local_request = ((servertype & SV_TYPE_LOCAL_LIST_ONLY) != 0);
 
   p += 8;