The following patch changes the HEAD version of Samba to
discover and use a required executable extension, if required by
the host OS.  It also changes torture/torture.c to use
shm_open() if shmget() is unavailable.  And it changes the only
reference to bcmp in Samba to a nice standard memcmp.

(I also have a patch for Samba 3.0; see separate letter).

I created it because Stratus VOS has a required executable
extension, and because we have POSIX not System V shared memory.

I have tested this patch here on VOS.  I used the version of
head that existed this morning (changing and testing these files
is a little like jumping on and off a moving train; they change
frequently...).  I tested the 3.0 version of the patch on SunOS
5.8, and these are basically the same changes, so I'm hoping I
won't break head too badly...  ;-).

I've tested it using autoconf 2.13.  The generated configure
script should work properly on Unix-type systems regardless of
which version of autoconf is used.

I still have a problem in that the Makefile tries to build
libsmbclient.so even on systems that don't support shared
objects, but I'll send that change in separately, when I have it
ready.

### START OF PATCH ###

diff -urp old/samba/source/Makefile.in new/samba/source/Makefile.in
--- old/samba/source/Makefile.in        Fri Nov 29 21:35:28 2002
+++ new/samba/source/Makefile.in        Fri Nov 29 21:35:55 2002
@@ -14,6 +14,7 @@ CC=@CC@
 SHLD=@SHLD@
 CFLAGS=@CFLAGS@
 CPPFLAGS=@CPPFLAGS@
+EXEEXT=@EXEEXT@
 LDFLAGS=@LDFLAGS@
 LDSHFLAGS=@LDSHFLAGS@ @LDFLAGS@ @CFLAGS@
 AWK=@AWK@
@@ -100,14 +101,21 @@ PATH_FLAGS5 = $(PATH_FLAGS4) -DLIBDIR=\"
 PATH_FLAGS6 = $(PATH_FLAGS5) -DCONFIGDIR=\"$(CONFIGFIR)\"
 PATH_FLAGS = $(PATH_FLAGS6) $(PASSWD_FLAGS)
 
-SBIN_PROGS = bin/smbd bin/nmbd bin/swat bin/wrepld @EXTRA_SBIN_PROGS@
+# Note that all executable programs now provide for an optional executable suffix.
 
-BIN_PROGS1 = bin/smbclient bin/net bin/smbspool bin/testparm bin/testprns 
bin/smbstatus 
-BIN_PROGS2 = bin/smbcontrol bin/smbtree bin/tdbbackup bin/nmblookup bin/pdbedit
-BIN_PROGS3 = bin/smbpasswd bin/rpcclient bin/smbcacls bin/profiles bin/smbgroupedit 
bin/ntlm_auth
+SBIN_PROGS = bin/smbd@EXEEXT@ bin/nmbd@EXEEXT@ bin/swat@EXEEXT@ \
+       bin/wrepld@EXEEXT@ @EXTRA_SBIN_PROGS@
 
-TORTURE_PROGS = bin/smbtorture bin/msgtest bin/masktest bin/locktest \
-       bin/locktest2 bin/nsstest bin/vfstest
+BIN_PROGS1 = bin/smbclient@EXEEXT@ bin/net@EXEEXT@ bin/smbspool@EXEEXT@ \
+       bin/testparm@EXEEXT@ bin/testprns@EXEEXT@ bin/smbstatus@EXEEXT@ 
+BIN_PROGS2 = bin/smbcontrol@EXEEXT@ bin/smbtree@EXEEXT@ bin/tdbbackup@EXEEXT@ \
+       bin/nmblookup@EXEEXT@ bin/pdbedit@EXEEXT@
+BIN_PROGS3 = bin/smbpasswd@EXEEXT@ bin/rpcclient@EXEEXT@ bin/smbcacls@EXEEXT@ \
+       bin/profiles@EXEEXT@ bin/smbgroupedit@EXEEXT@ bin/ntlm_auth@EXEEXT@
+
+TORTURE_PROGS = bin/smbtorture@EXEEXT@ bin/msgtest@EXEEXT@ \
+       bin/masktest@EXEEXT@ bin/locktest@EXEEXT@ \
+       bin/locktest2@EXEEXT@ bin/nsstest@EXEEXT@ bin/vfstest@EXEEXT@
 
 BIN_PROGS = $(BIN_PROGS1) $(BIN_PROGS2) $(BIN_PROGS3) @EXTRA_BIN_PROGS@
 
@@ -556,27 +564,27 @@ smbwrapper : SHOWFLAGS @SMBWRAPPER@
 
 torture : SHOWFLAGS $(TORTURE_PROGS)
 
-smbtorture : SHOWFLAGS bin/smbtorture
+smbtorture : SHOWFLAGS bin/smbtorture@EXEEXT@
 
-masktest : SHOWFLAGS bin/masktest
+masktest : SHOWFLAGS bin/masktest@EXEEXT@
 
-msgtest : SHOWFLAGS bin/msgtest
+msgtest : SHOWFLAGS bin/msgtest@EXEEXT@
 
-locktest : SHOWFLAGS bin/locktest
+locktest : SHOWFLAGS bin/locktest@EXEEXT@
 
-smbcacls : SHOWFLAGS bin/smbcacls
+smbcacls : SHOWFLAGS bin/smbcacls@EXEEXT@
 
-locktest2 : SHOWFLAGS bin/locktest2
+locktest2 : SHOWFLAGS bin/locktest2@EXEEXT@
 
-rpctorture : SHOWFLAGS bin/rpctorture
+rpctorture : SHOWFLAGS bin/rpctorture@EXEEXT@
 
-debug2html : SHOWFLAGS bin/debug2html
+debug2html : SHOWFLAGS bin/debug2html@EXEEXT@
 
-smbfilter : SHOWFLAGS bin/smbfilter
+smbfilter : SHOWFLAGS bin/smbfilter@EXEEXT@
 
-talloctort : SHOWFLAGS bin/talloctort
+talloctort : SHOWFLAGS bin/talloctort@EXEEXT@
 
-nsswitch : SHOWFLAGS bin/winbindd bin/wbinfo nsswitch/libnss_winbind.so 
nsswitch/pam_winbind.so
+nsswitch : SHOWFLAGS bin/winbindd@EXEEXT@ bin/wbinfo@EXEEXT@ 
+nsswitch/libnss_winbind.so nsswitch/pam_winbind.so
 
 wins : SHOWFLAGS nsswitch/libnss_wins.@SHLIBEXT@
 
@@ -651,149 +659,149 @@ bin/.dummy:
          dir=bin $(MAKEDIR); fi
        @: >> $@ || : > $@ # what a fancy emoticon!
 
-bin/smbd: $(SMBD_OBJ) @BUILD_POPT@ bin/.dummy
+bin/smbd@EXEEXT@: $(SMBD_OBJ) @BUILD_POPT@ bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(SMBD_OBJ) $(LDFLAGS) $(DYNEXP) $(PRINTLIBS) \
          $(AUTHLIBS) $(LIBS) @BUILD_POPT@
 
-bin/nmbd: $(NMBD_OBJ) @BUILD_POPT@ bin/.dummy
+bin/nmbd@EXEEXT@: $(NMBD_OBJ) @BUILD_POPT@ bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(NMBD_OBJ) $(LDFLAGS) $(LIBS) @BUILD_POPT@
 
-bin/wrepld: $(WREPL_OBJ) bin/.dummy
+bin/wrepld@EXEEXT@: $(WREPL_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(WREPL_OBJ) $(LDFLAGS) $(LIBS) 
 
-bin/swat: $(SWAT_OBJ) bin/.dummy
+bin/swat@EXEEXT@: $(SWAT_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(SWAT_OBJ) $(LDFLAGS) $(DYNEXP) $(PRINTLIBS) \
          $(AUTHLIBS) $(LIBS) 
 
-bin/rpcclient: $(RPCCLIENT_OBJ) @BUILD_POPT@ bin/.dummy
+bin/rpcclient@EXEEXT@: $(RPCCLIENT_OBJ) @BUILD_POPT@ bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(RPCCLIENT_OBJ) $(LDFLAGS) $(DYNEXP) $(TERMLDFLAGS) 
$(TERMLIBS) $(LIBS) @BUILD_POPT@
 
-bin/smbclient: $(CLIENT_OBJ) @BUILD_POPT@ bin/.dummy
+bin/smbclient@EXEEXT@: $(CLIENT_OBJ) @BUILD_POPT@ bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(CLIENT_OBJ) $(LDFLAGS) $(TERMLDFLAGS) $(TERMLIBS) 
$(LIBS) @BUILD_POPT@
 
-bin/net: $(NET_OBJ) @BUILD_POPT@ bin/.dummy
+bin/net@EXEEXT@: $(NET_OBJ) @BUILD_POPT@ bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(NET_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) @BUILD_POPT@
 
-bin/profiles: utils/profiles.o bin/.dummy
+bin/profiles@EXEEXT@: utils/profiles.o bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ utils/profiles.o $(LDFLAGS) $(LIBS)
 
-bin/smbspool: $(CUPS_OBJ) bin/.dummy
+bin/smbspool@EXEEXT@: $(CUPS_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(CUPS_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/smbmount: $(MOUNT_OBJ) bin/.dummy
+bin/smbmount@EXEEXT@: $(MOUNT_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(MOUNT_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/smbmnt: $(MNT_OBJ) bin/.dummy
+bin/smbmnt@EXEEXT@: $(MNT_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(MNT_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/smbumount: $(UMOUNT_OBJ) bin/.dummy
+bin/smbumount@EXEEXT@: $(UMOUNT_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(UMOUNT_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/testparm: $(TESTPARM_OBJ) @BUILD_POPT@ bin/.dummy
+bin/testparm@EXEEXT@: $(TESTPARM_OBJ) @BUILD_POPT@ bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(TESTPARM_OBJ) $(LDFLAGS) $(LIBS) @BUILD_POPT@
 
-bin/testprns: $(TESTPRNS_OBJ) bin/.dummy
+bin/testprns@EXEEXT@: $(TESTPRNS_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(TESTPRNS_OBJ) $(LDFLAGS) $(PRINTLIBS) $(LIBS)
 
-bin/smbstatus: $(STATUS_OBJ) @BUILD_POPT@ bin/.dummy
+bin/smbstatus@EXEEXT@: $(STATUS_OBJ) @BUILD_POPT@ bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(STATUS_OBJ) $(LDFLAGS) $(LIBS) @BUILD_POPT@
 
-bin/smbcontrol: $(SMBCONTROL_OBJ) bin/.dummy
+bin/smbcontrol@EXEEXT@: $(SMBCONTROL_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) -DUSING_SMBCONTROL $(FLAGS) -o $@ $(SMBCONTROL_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/smbtree: $(SMBTREE_OBJ) bin/.dummy
+bin/smbtree@EXEEXT@: $(SMBTREE_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(SMBTREE_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/smbpasswd: $(SMBPASSWD_OBJ) bin/.dummy
+bin/smbpasswd@EXEEXT@: $(SMBPASSWD_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(SMBPASSWD_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS)
 
-bin/pdbedit: $(PDBEDIT_OBJ) @BUILD_POPT@ bin/.dummy
+bin/pdbedit@EXEEXT@: $(PDBEDIT_OBJ) @BUILD_POPT@ bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(PDBEDIT_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) @BUILD_POPT@
 
-bin/samtest: $(SAMTEST_OBJ) @BUILD_POPT@ bin/.dummy
+bin/samtest@EXEEXT@: $(SAMTEST_OBJ) @BUILD_POPT@ bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(SAMTEST_OBJ) $(LDFLAGS) $(DYNEXP) $(TERMLDFLAGS) 
$(TERMLIBS) $(DYNEXP) $(LIBS) @BUILD_POPT@
 
-bin/smbgroupedit: $(SMBGROUPEDIT_OBJ) bin/.dummy
+bin/smbgroupedit@EXEEXT@: $(SMBGROUPEDIT_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(SMBGROUPEDIT_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/nmblookup: $(NMBLOOKUP_OBJ) bin/.dummy
+bin/nmblookup@EXEEXT@: $(NMBLOOKUP_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(NMBLOOKUP_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/smbtorture: $(SMBTORTURE_OBJ) bin/.dummy
+bin/smbtorture@EXEEXT@: $(SMBTORTURE_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(SMBTORTURE_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/talloctort: $(TALLOCTORT_OBJ) bin/.dummy
+bin/talloctort@EXEEXT@: $(TALLOCTORT_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(TALLOCTORT_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/masktest: $(MASKTEST_OBJ) bin/.dummy
+bin/masktest@EXEEXT@: $(MASKTEST_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(MASKTEST_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/msgtest: $(MSGTEST_OBJ) bin/.dummy
+bin/msgtest@EXEEXT@: $(MSGTEST_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(MSGTEST_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/smbcacls: $(SMBCACLS_OBJ) bin/.dummy
+bin/smbcacls@EXEEXT@: $(SMBCACLS_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(SMBCACLS_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS)
 
-bin/locktest: $(LOCKTEST_OBJ) bin/.dummy
+bin/locktest@EXEEXT@: $(LOCKTEST_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(LOCKTEST_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/nsstest: $(NSSTEST_OBJ) bin/.dummy
+bin/nsstest@EXEEXT@: $(NSSTEST_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(NSSTEST_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/vfstest: $(VFSTEST_OBJ) @BUILD_POPT@ bin/.dummy
+bin/vfstest@EXEEXT@: $(VFSTEST_OBJ) @BUILD_POPT@ bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(VFSTEST_OBJ) $(LDFLAGS) $(TERMLDFLAGS) $(TERMLIBS) 
$(DYNEXP) $(PRINTLIBS) $(AUTHLIBS) $(LIBS) @BUILD_POPT@
 
-bin/locktest2: $(LOCKTEST2_OBJ) bin/.dummy
+bin/locktest2@EXEEXT@: $(LOCKTEST2_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(LOCKTEST2_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/rpctorture: $(RPCTORTURE_OBJ) bin/.dummy
+bin/rpctorture@EXEEXT@: $(RPCTORTURE_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(RPCTORTURE_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS)
 
-bin/debug2html: $(DEBUG2HTML_OBJ) bin/.dummy
+bin/debug2html@EXEEXT@: $(DEBUG2HTML_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(DEBUG2HTML_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/smbfilter: $(SMBFILTER_OBJ) bin/.dummy
+bin/smbfilter@EXEEXT@: $(SMBFILTER_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(SMBFILTER_OBJ) $(LDFLAGS) $(LIBS)
 
-bin/smbw_sample: $(SMBW_OBJ) utils/smbw_sample.o bin/.dummy
+bin/smbw_sample@EXEEXT@: $(SMBW_OBJ) utils/smbw_sample.o bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(SMBW_OBJ) utils/smbw_sample.o $(LDFLAGS) $(LIBS)
 
-bin/smbsh: $(SMBSH_OBJ) bin/.dummy
+bin/smbsh@EXEEXT@: $(SMBSH_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(SMBSH_OBJ) $(LDFLAGS) $(LIBS)
 
@@ -828,7 +836,7 @@ nsswitch/libnss_wins.@SHLIBEXT@: $(NSS_O
        @$(SHLD) $(LDSHFLAGS) -o $@ $(NSS_OBJ) -lc \
                @SONAMEFLAG@`basename $@`
 
-bin/winbindd: $(WINBINDD_OBJ) bin/.dummy
+bin/winbindd@EXEEXT@: $(WINBINDD_OBJ) bin/.dummy
        @echo Linking $@
        @$(LINK) -o $@ $(WINBINDD_OBJ) $(DYNEXP) $(LIBS)
 
@@ -877,13 +885,13 @@ bin/vfs_netatalk.@SHLIBEXT@: $(VFS_NETAT
        @$(SHLD) $(LDSHFLAGS) -o $@ $(VFS_NETATALK_OBJ) \
                @SONAMEFLAG@`basename $@`
 
-bin/wbinfo: $(WBINFO_OBJ) $(PARAM_OBJ) $(LIB_OBJ) \
+bin/wbinfo@EXEEXT@: $(WBINFO_OBJ) $(PARAM_OBJ) $(LIB_OBJ) \
                $(UBIQX_OBJ) $(SECRETS_OBJ) @BUILD_POPT@ bin/.dummy
        @echo Linking $@
        @$(LINK) -o $@ $(WBINFO_OBJ) $(PARAM_OBJ) $(LIB_OBJ) \
                $(UBIQX_OBJ) $(SECRETS_OBJ) $(LIBS) @BUILD_POPT@
 
-bin/ntlm_auth: $(NTLM_AUTH_OBJ) $(PARAM_OBJ) $(LIB_OBJ) \
+bin/ntlm_auth@EXEEXT@: $(NTLM_AUTH_OBJ) $(PARAM_OBJ) $(LIB_OBJ) \
                $(UBIQX_OBJ) @BUILD_POPT@ bin/.dummy
        @echo Linking $@
        @$(LINK) -o $@ $(NTLM_AUTH_OBJ) $(PARAM_OBJ) $(LIB_OBJ) \
@@ -896,7 +904,7 @@ bin/pam_smbpass.@SHLIBEXT@: $(PAM_SMBPAS
 bin/libmsrpc.a: $(LIBMSRPC_PICOBJ)
        -$(AR) -rc $@ $(LIBMSRPC_PICOBJ) 
 
-bin/tdbbackup: $(TDBBACKUP_OBJ) bin/.dummy
+bin/tdbbackup@EXEEXT@: $(TDBBACKUP_OBJ) bin/.dummy
        @echo Linking $@
        @$(CC) $(FLAGS) -o $@ $(TDBBACKUP_OBJ)
 
diff -urp old/samba/source/configure.in new/samba/source/configure.in
--- old/samba/source/configure.in       Fri Nov 29 19:21:40 2002
+++ new/samba/source/configure.in       Fri Nov 29 19:22:43 2002
@@ -191,6 +191,9 @@ AC_PROG_LD_GNU
 dnl needed before AC_TRY_COMPILE
 AC_ISC_POSIX
 
+dnl look for executable suffix
+AC_EXEEXT
+
 dnl Check if C compiler understands -c and -o at the same time
 AC_PROG_CC_C_O
 if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" = no"; then
@@ -736,7 +739,7 @@ fi
 # Check if we have execl, if not we need to compile smbrun.
 AC_CHECK_FUNCS(execl)
 if test x"$ac_cv_func_execl" = x"no"; then
-    EXTRA_BIN_PROGS="$EXTRA_BIN_PROGS bin/smbrun"
+    EXTRA_BIN_PROGS="$EXTRA_BIN_PROGS bin/smbrun$(EXEEXT)"
 fi
 
 AC_CHECK_FUNCS(dlopen dlclose dlsym dlerror waitpid getcwd strdup strndup strnlen 
strtoul strerror chown fchown chmod fchmod chroot link mknod mknod64)
@@ -749,8 +752,8 @@ AC_CHECK_FUNCS(lstat64 fopen64 atexit gr
 AC_CHECK_FUNCS(fseek64 fseeko64 ftell64 ftello64 setluid getpwanam setlinebuf)
 AC_CHECK_FUNCS(srandom random srand rand setenv usleep strcasecmp fcvt fcvtl symlink 
readlink)
 AC_CHECK_FUNCS(syslog vsyslog getgrouplist timegm)
-# setbuffer is needed for smbtorture
-AC_CHECK_FUNCS(setbuffer)
+# setbuffer, shmget, shm_open are needed for smbtorture
+AC_CHECK_FUNCS(setbuffer shmget shm_open)
 
 # syscall() is needed for smbwrapper.
 AC_CHECK_FUNCS(syscall)
@@ -1883,7 +1886,7 @@ AC_ARG_WITH(smbwrapper,
   yes)
     AC_MSG_RESULT(yes)
     AC_DEFINE(WITH_SMBWRAPPER,1,[Whether to include smbwrapper support])
-       WRAPPROG="bin/smbsh"
+       WRAPPROG="bin/smbsh$(EXEEXT)"
        WRAP="bin/smbwrapper.$SHLIBEXT"
 
        if test x$ATTEMPT_WRAP32_BUILD = x; then
@@ -3053,8 +3056,8 @@ if test x"$HAVE_WINBIND" = x"yes"; then
         AC_MSG_RESULT(yes)
        AC_DEFINE(WITH_WINBIND,1,[Whether to build winbind])
 
-       EXTRA_BIN_PROGS="$EXTRA_BIN_PROGS bin/wbinfo"
-       EXTRA_SBIN_PROGS="$EXTRA_SBIN_PROGS bin/winbindd"
+       EXTRA_BIN_PROGS="$EXTRA_BIN_PROGS bin/wbinfo$(EXEEXT)"
+       EXTRA_SBIN_PROGS="$EXTRA_SBIN_PROGS bin/winbindd$(EXEEXT)"
         if test x"$BLDSHARED" = x"true"; then
                SHLIB_PROGS="$SHLIB_PROGS nsswitch/libnss_winbind.so"
                if test x"$with_pam" = x"yes"; then
diff -urp old/samba/source/torture/torture.c new/samba/source/torture/torture.c
--- old/samba/source/torture/torture.c  Tue Nov 26 11:37:13 2002
+++ new/samba/source/torture/torture.c  Tue Nov 26 13:58:58 2002
@@ -69,6 +69,7 @@ void *shm_setup(int size)
        int shmid;
        void *ret;
 
+#ifdef HAVE_SHMGET
        shmid = shmget(IPC_PRIVATE, size, SHM_R | SHM_W);
        if (shmid == -1) {
                printf("can't get shared memory\n");
@@ -87,7 +88,23 @@ void *shm_setup(int size)
           See Stevens "advanced programming in unix env" for details
           */
        shmctl(shmid, IPC_RMID, 0);
-       
+#elif HAVE_SHM_OPEN
+       /* Attempt to do the same thing the POSIX way... */
+       shmid = shm_open ("samba_torture.shm", O_RDWR, O_CREAT);
+       if (shmid == -1) {
+               printf("can't get shared memory\n");
+               exit(1);
+       }
+       ret = mmap(0, size, PROT_READ|PROT_WRITE, MAP_SHARED, shmid, 0);
+       if (!ret || ret == (void *)-1) {
+               printf("can't attach to shared memory\n");
+               return NULL;
+       }
+       shm_unlink ("samba_torture.shm");
+#else
+       printf("no support for shared memory\n");
+       exit(1);
+#endif
        return ret;
 }
 
diff -urp old/samba/source/utils/profiles.c new/samba/source/utils/profiles.c
--- old/samba/source/utils/profiles.c   Wed Nov 20 15:42:40 2002
+++ new/samba/source/utils/profiles.c   Wed Nov 20 15:48:28 2002
@@ -408,7 +408,7 @@ int my_sid_equal(DOM_SID *s1, DOM_SID *s
 
   if (sa1 != sa2) return 0;
 
-  return !bcmp((char *)&s1->id_auth, (char *)&s2->id_auth,
+  return !memcmp((void *)&s1->id_auth, (void *)&s2->id_auth,
                6 + sa1 * 4);
 
 }

### END OF PATCH ###

Thanks
PG
--
Paul Green                  | Mail: [EMAIL PROTECTED]
Senior Technical Consultant | Voice: +1 978-461-7557   FAX: +1 978-461-3610
Stratus Technologies        | Video: PictureTel/AT&T by request.
Maynard, MA  01754          | Disclaimer: I speak for myself, not Stratus.


Reply via email to