TO DO: Write a fcntl_lock() function for windows so HAVE_FCNTL_LOCK is defined diff -uwrN samba-3.0.23.orig/source/tests/summary.c samba-3.0.23/source/tests/summary.c --- samba-3.0.23.orig/source/tests/summary.c 2005-02-25 09:59:30.000000000 -0800 +++ samba-3.0.23/source/tests/summary.c 2006-10-08 11:32:08.000000000 -0700 @@ -4,8 +4,10 @@ { #if !(defined(HAVE_FCNTL_LOCK) || defined(HAVE_STRUCT_FLOCK64)) printf("ERROR: No locking available. Running Samba would be unsafe\n"); +#ifndef __CYGWIN__ exit(1); #endif +#endif #if !(defined(HAVE_IFACE_IFCONF) || defined(HAVE_IFACE_IFREQ) || defined(HAVE_IFACE_AIX)) printf("WARNING: No automated network interface determination\n"); diff -uwrN samba-3.0.23.orig/source/Makefile.in samba-3.0.23/source/Makefile.in --- samba-3.0.23.orig/source/Makefile.in 2006-07-10 09:27:56.000000000 -0700 +++ samba-3.0.23/source/Makefile.in 2006-10-08 20:30:28.000000000 -0700 @@ -50,7 +50,7 @@ srcdir=@abs_srcdir@ builddir=@abs_builddir@ SHELL=/bin/sh -DESTDIR=/ +DESTDIR= # XXX: Perhaps this should be @SHELL@ instead -- apparently autoconf # will search for a POSIX-compliant shell, and that might not be @@ -1423,65 +1423,65 @@ # is not used installdirs: - @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(BINDIR) $(SBINDIR) $(LIBDIR) $(VARDIR) $(PRIVATEDIR) $(PIDDIR) $(LOCKDIR) $(MANDIR) + @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(BINDIR) $(SBINDIR) $(LIBDIR) $(VARDIR) $(PRIVATEDIR) $(PIDDIR) $(LOCKDIR) $(MANDIR) installservers: all installdirs - @$(SHELL) script/installbin.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(SBINDIR) $(SBIN_PROGS) + @$(SHELL) script/installbin.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(SBINDIR) $(SBIN_PROGS) installbin: all installdirs - @$(SHELL) script/installbin.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(BINDIR) $(BIN_PROGS) + @$(SHELL) script/installbin.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(BINDIR) $(BIN_PROGS) installcifsmount: @CIFSMOUNT_PROGS@ - @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) $(DESTDIR) $(ROOTSBINDIR) - @$(SHELL) script/installbin.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(ROOTSBINDIR) @CIFSMOUNT_PROGS@ + @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) "$(DESTDIR)" $(ROOTSBINDIR) + @$(SHELL) script/installbin.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(ROOTSBINDIR) @CIFSMOUNT_PROGS@ # Some symlinks are required for the 'probing' of modules. # This mechanism should go at some point.. installmodules: modules installdirs - @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(VFSLIBDIR) $(VFS_MODULES) - @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(PDBLIBDIR) $(PDB_MODULES) - @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(RPCLIBDIR) $(RPC_MODULES) - @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(IDMAPLIBDIR) $(IDMAP_MODULES) - @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(CHARSETLIBDIR) $(CHARSET_MODULES) - @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(AUTHLIBDIR) $(AUTH_MODULES) - @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(PDBLIBDIR) ldapsam.@SHLIBEXT@ ldapsam_compat.@SHLIBEXT@ - @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(AUTHLIBDIR) rhosts.@SHLIBEXT@ hostsequiv.@SHLIBEXT@ - @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(AUTHLIBDIR) sam.@SHLIBEXT@ sam_ignoredomain.@SHLIBEXT@ - @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(AUTHLIBDIR) domain.@SHLIBEXT@ trustdomain.@SHLIBEXT@ ntdomain.@SHLIBEXT@ - @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(AUTHLIBDIR) builtin.@SHLIBEXT@ guest.@SHLIBEXT@ fixed_challenge.@SHLIBEXT@ name_to_ntstatus.@SHLIBEXT@ + @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(VFSLIBDIR) $(VFS_MODULES) + @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(PDBLIBDIR) $(PDB_MODULES) + @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(RPCLIBDIR) $(RPC_MODULES) + @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(IDMAPLIBDIR) $(IDMAP_MODULES) + @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(CHARSETLIBDIR) $(CHARSET_MODULES) + @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(AUTHLIBDIR) $(AUTH_MODULES) + @$(SHELL) $(srcdir)/script/linkmodules.sh "$(DESTDIR)"$(PDBLIBDIR) ldapsam.@SHLIBEXT@ ldapsam_compat.@SHLIBEXT@ + @$(SHELL) $(srcdir)/script/linkmodules.sh "$(DESTDIR)"$(AUTHLIBDIR) rhosts.@SHLIBEXT@ hostsequiv.@SHLIBEXT@ + @$(SHELL) $(srcdir)/script/linkmodules.sh "$(DESTDIR)"$(AUTHLIBDIR) sam.@SHLIBEXT@ sam_ignoredomain.@SHLIBEXT@ + @$(SHELL) $(srcdir)/script/linkmodules.sh "$(DESTDIR)"$(AUTHLIBDIR) domain.@SHLIBEXT@ trustdomain.@SHLIBEXT@ ntdomain.@SHLIBEXT@ + @$(SHELL) $(srcdir)/script/linkmodules.sh "$(DESTDIR)"$(AUTHLIBDIR) builtin.@SHLIBEXT@ guest.@SHLIBEXT@ fixed_challenge.@SHLIBEXT@ name_to_ntstatus.@SHLIBEXT@ installscripts: installdirs - @$(SHELL) $(srcdir)/script/installscripts.sh $(INSTALLPERMS) $(DESTDIR)$(BINDIR) $(SCRIPTS) + @$(SHELL) $(srcdir)/script/installscripts.sh $(INSTALLPERMS) "$(DESTDIR)"$(BINDIR) $(SCRIPTS) installdat: installdirs - @$(SHELL) $(srcdir)/script/installdat.sh $(DESTDIR) $(LIBDIR) $(srcdir) + @$(SHELL) $(srcdir)/script/installdat.sh "$(DESTDIR)" $(LIBDIR) $(srcdir) installmsg: installdirs - @$(SHELL) $(srcdir)/script/installmsg.sh $(DESTDIR) $(LIBDIR) $(srcdir) + @$(SHELL) $(srcdir)/script/installmsg.sh "$(DESTDIR)" $(LIBDIR) $(srcdir) installswat: installdirs installmsg - @$(SHELL) $(srcdir)/script/installswat.sh $(DESTDIR) $(SWATDIR) $(srcdir) + @$(SHELL) $(srcdir)/script/installswat.sh "$(DESTDIR)" $(SWATDIR) $(srcdir) installclientlib: installdirs libsmbclient - @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) $(DESTDIR) $(LIBDIR) - -$(INSTALLLIBCMD_SH) bin/libsmbclient.@SHLIBEXT@ $(DESTDIR)$(LIBDIR) - -$(INSTALLLIBCMD_A) bin/libsmbclient.a $(DESTDIR)$(LIBDIR) - @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) $(DESTDIR) ${prefix}/include - -$(INSTALLCMD) $(srcdir)/include/libsmbclient.h $(DESTDIR)${prefix}/include + @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) "$(DESTDIR)" $(LIBDIR) + -$(INSTALLLIBCMD_SH) bin/libsmbclient.@SHLIBEXT@ "$(DESTDIR)"$(LIBDIR) + -$(INSTALLLIBCMD_A) bin/libsmbclient.a "$(DESTDIR)"$(LIBDIR) + @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) "$(DESTDIR)" ${prefix}/include + -$(INSTALLCMD) $(srcdir)/include/libsmbclient.h "$(DESTDIR)"${prefix}/include installlibmsrpc: installdirs libmsrpc - @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) $(DESTDIR) $(LIBDIR) - -$(INSTALLLIBCMD_SH) bin/libmsrpc.@SHLIBEXT@ $(DESTDIR)$(LIBDIR) - -$(INSTALLLIBCMD_A) bin/libmsrpc.a $(DESTDIR)$(LIBDIR) - @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) $(DESTDIR) ${prefix}/include - -$(INSTALLCMD) $(srcdir)/include/libmsrpc.h $(DESTDIR)${prefix}/include + @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) "$(DESTDIR)" $(LIBDIR) + -$(INSTALLLIBCMD_SH) bin/libmsrpc.@SHLIBEXT@ "$(DESTDIR)"$(LIBDIR) + -$(INSTALLLIBCMD_A) bin/libmsrpc.a "$(DESTDIR)"$(LIBDIR) + @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) "$(DESTDIR)" ${prefix}/include + -$(INSTALLCMD) $(srcdir)/include/libmsrpc.h "$(DESTDIR)"${prefix}/include installpammodules: $(PAM_MODULES) - @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) $(DESTDIR) $(PAMMODULESDIR) + @$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS) "$(DESTDIR)" $(PAMMODULESDIR) @for module in $(PAM_MODULES); do \ - echo "Installing module $${module} as $(DESTDIR)/$(PAMMODULESDIR)/$${module}.@SHLIBEXT@ "; \ + echo "Installing module $${module} as "$(DESTDIR)"/$(PAMMODULESDIR)/$${module}.@SHLIBEXT@ "; \ $(INSTALLCMD) -m $(INSTALLPERMS) bin/$${module}.@SHLIBEXT@ \ - "$(DESTDIR)/$(PAMMODULESDIR)"; \ + ""$(DESTDIR)"/$(PAMMODULESDIR)"; \ done # Python extensions @@ -1510,7 +1510,7 @@ PYTHON_OBJS="$(PYTHON_PICOBJS)" \ PYTHON_CFLAGS="$(CFLAGS) $(CPPFLAGS)" \ LIBS="$(LDFLAGS) $(LIBS)" \ - $(PYTHON) python/setup.py install --root=$(DESTDIR) + $(PYTHON) python/setup.py install --root="$(DESTDIR)" python_clean: @-if test -n "$(PYTHON)"; then $(PYTHON) python/setup.py clean; fi @@ -1521,7 +1521,7 @@ @$(SHELL) $(srcdir)/script/revert.sh $(BINDIR) $(BIN_PROGS) $(SCRIPTS) installman: installdirs - @$(SHELL) $(srcdir)/script/installman.sh $(DESTDIR)$(MANDIR) $(srcdir) C "@ROFF@" + @$(SHELL) $(srcdir)/script/installman.sh "$(DESTDIR)"$(MANDIR) $(srcdir) C "@ROFF@" .PHONY: showlayout @@ -1543,51 +1543,51 @@ uninstall: uninstallman uninstallservers uninstallbin @UNINSTALL_CIFSMOUNT@ uninstallscripts uninstalldat uninstallswat uninstallmodules @UNINSTALL_LIBSMBCLIENT@ @UNINSTALL_LIBMSRPC@ @UNINSTALL_PAM_MODULES@ uninstallman: - @$(SHELL) $(srcdir)/script/uninstallman.sh $(DESTDIR)$(MANDIR) $(srcdir) C + @$(SHELL) $(srcdir)/script/uninstallman.sh "$(DESTDIR)"$(MANDIR) $(srcdir) C uninstallservers: - @$(SHELL) script/uninstallbin.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(SBINDIR) $(SBIN_PROGS) + @$(SHELL) script/uninstallbin.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(SBINDIR) $(SBIN_PROGS) uninstallbin: - @$(SHELL) script/uninstallbin.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(BINDIR) $(BIN_PROGS) + @$(SHELL) script/uninstallbin.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(BINDIR) $(BIN_PROGS) uninstallcifsmount: - @$(SHELL) script/uninstallbin.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(ROOTSBINDIR) @CIFSMOUNT_PROGS@ + @$(SHELL) script/uninstallbin.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(ROOTSBINDIR) @CIFSMOUNT_PROGS@ uninstallmodules: - @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(VFSLIBDIR) $(VFS_MODULES) - @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(PDBLIBDIR) $(PDB_MODULES) - @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(RPCLIBDIR) $(RPC_MODULES) - @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(IDMAPLIBDIR) $(IDMAP_MODULES) - @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(CHARSETLIBDIR) $(CHARSET_MODULES) - @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS) $(DESTDIR) $(prefix) $(AUTHLIBDIR) $(AUTH_MODULES) + @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(VFSLIBDIR) $(VFS_MODULES) + @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(PDBLIBDIR) $(PDB_MODULES) + @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(RPCLIBDIR) $(RPC_MODULES) + @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(IDMAPLIBDIR) $(IDMAP_MODULES) + @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(CHARSETLIBDIR) $(CHARSET_MODULES) + @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS) "$(DESTDIR)" $(prefix) $(AUTHLIBDIR) $(AUTH_MODULES) uninstallscripts: - @$(SHELL) $(srcdir)/script/uninstallscripts.sh $(INSTALLPERMS) $(DESTDIR)$(BINDIR) $(SCRIPTS) + @$(SHELL) $(srcdir)/script/uninstallscripts.sh $(INSTALLPERMS) "$(DESTDIR)"$(BINDIR) $(SCRIPTS) uninstalldat: - @$(SHELL) $(srcdir)/script/uninstalldat.sh $(DESTDIR) $(LIBDIR) $(srcdir) + @$(SHELL) $(srcdir)/script/uninstalldat.sh "$(DESTDIR)" $(LIBDIR) $(srcdir) uninstallmsg: - @$(SHELL) $(srcdir)/script/uninstallmsg.sh $(DESTDIR) $(LIBDIR) $(srcdir) + @$(SHELL) $(srcdir)/script/uninstallmsg.sh "$(DESTDIR)" $(LIBDIR) $(srcdir) uninstallswat: uninstallmsg - @$(SHELL) $(srcdir)/script/uninstallswat.sh $(DESTDIR) $(SWATDIR) $(srcdir) + @$(SHELL) $(srcdir)/script/uninstallswat.sh "$(DESTDIR)" $(SWATDIR) $(srcdir) uninstallclientlib: installdirs libsmbclient - -$(UNINSTALLLIBCMD_SH) $(DESTDIR)$(LIBDIR)/libsmbclient.@SHLIBEXT@ - -$(UNINSTALLLIBCMD_A) $(DESTDIR)$(LIBDIR)/libsmbclient.a - -rm -f $(DESTDIR)${prefix}/include/libsmbclient.h + -$(UNINSTALLLIBCMD_SH) "$(DESTDIR)"$(LIBDIR)/libsmbclient.@SHLIBEXT@ + -$(UNINSTALLLIBCMD_A) "$(DESTDIR)"$(LIBDIR)/libsmbclient.a + -rm -f "$(DESTDIR)"${prefix}/include/libsmbclient.h uninstalllibmsrpc: installdirs libmsrpc - -$(UNINSTALLLIBCMD_SH) $(DESTDIR)$(LIBDIR)/libmsrpc.@SHLIBEXT@ - -$(UNINSTALLLIBCMD_A) $(DESTDIR)$(LIBDIR)/libmsrpc.a - -rm -f $(DESTDIR)${prefix}/include/libmsrpc.h + -$(UNINSTALLLIBCMD_SH) "$(DESTDIR)"$(LIBDIR)/libmsrpc.@SHLIBEXT@ + -$(UNINSTALLLIBCMD_A) "$(DESTDIR)"$(LIBDIR)/libmsrpc.a + -rm -f "$(DESTDIR)"${prefix}/include/libmsrpc.h uninstallpammodules: @for module in $(PAM_MODULES); do \ - echo "Removing $(DESTDIR)/$(PAMMODULESDIR)/$${module}.@SHLIBEXT@ "; \ - rm -f "$(DESTDIR)/$(PAMMODULESDIR)/$${module}.@SHLIBEXT@"; \ + echo "Removing "$(DESTDIR)"/$(PAMMODULESDIR)/$${module}.@SHLIBEXT@ "; \ + rm -f ""$(DESTDIR)"/$(PAMMODULESDIR)/$${module}.@SHLIBEXT@"; \ done # Toplevel clean files diff -uwrN samba-3.0.23.orig/source/script/installbin.sh.in samba-3.0.23/source/script/installbin.sh.in --- samba-3.0.23.orig/source/script/installbin.sh.in 2006-06-12 18:52:18.000000000 -0700 +++ samba-3.0.23/source/script/installbin.sh.in 2006-10-08 18:33:20.000000000 -0700 @@ -1,7 +1,7 @@ #!/bin/sh INSTALLPERMS=$1 -DESTDIR=$2 +DESTDIR=$2/ prefix=`echo $3 | sed 's/\/\//\//g'` BINDIR=`echo $4 | sed 's/\/\//\//g'` SBINDIR=@sbindir@ @@ -10,23 +10,28 @@ shift shift +if uname | grep -iq CYGWIN +then + DESTDIR= +fi + for p in $*; do p2=`basename $p` - echo "Installing $p as $DESTDIR/$BINDIR/$p2 " - if [ -f $DESTDIR/$BINDIR/$p2 ]; then - rm -f $DESTDIR/$BINDIR/$p2.old - mv $DESTDIR/$BINDIR/$p2 $DESTDIR/$BINDIR/$p2.old + echo "Installing $p as $DESTDIR$BINDIR/$p2 " + if [ -f $DESTDIR$BINDIR/$p2 ]; then + rm -f $DESTDIR$BINDIR/$p2.old + mv $DESTDIR$BINDIR/$p2 $DESTDIR$BINDIR/$p2.old fi - cp $p $DESTDIR/$BINDIR/ - chmod $INSTALLPERMS $DESTDIR/$BINDIR/$p2 + cp $p $DESTDIR$BINDIR/ + chmod $INSTALLPERMS $DESTDIR$BINDIR/$p2 # this is a special case, mount needs this in a specific location if [ $p2 = smbmount ]; then - if [ ! -d $DESTDIR/@rootsbindir@ ]; then - mkdir $DESTDIR/@rootsbindir@ + if [ ! -d $DESTDIR@rootsbindir@ ]; then + mkdir $DESTDIR@rootsbindir@ fi - echo "Creating sym link $DESTDIR/@rootsbindir@/mount.smbfs to $BINDIR/$p2 " - ln -sf $BINDIR/$p2 $DESTDIR/@rootsbindir@/mount.smbfs + echo "Creating sym link $DESTDIR@rootsbindir@/mount.smbfs to $BINDIR/$p2 " + ln -sf $BINDIR/$p2 $DESTDIR@rootsbindir@/mount.smbfs fi done diff -uwrN samba-3.0.23.orig/source/script/installdat.sh samba-3.0.23/source/script/installdat.sh --- samba-3.0.23.orig/source/script/installdat.sh 2006-04-19 19:29:42.000000000 -0700 +++ samba-3.0.23/source/script/installdat.sh 2006-10-08 15:39:50.000000000 -0700 @@ -1,17 +1,22 @@ #!/bin/sh #fist version March 2002, Herb Lewis -DESTDIR=$1 +DESTDIR=$1/ DATDIR=`echo $2 | sed 's/\/\//\//g'` SRCDIR=$3/ shift shift shift +if uname | grep -iq CYGWIN +then + DESTDIR= +fi + case $0 in *uninstall*) - if test ! -d "$DESTDIR/$DATDIR"; then - echo "Directory $DESTDIR/$DATDIR does not exist! " + if test ! -d "$DESTDIR$DATDIR"; then + echo "Directory $DESTDIR$DATDIR does not exist! " echo "Do a "make installmsg" or "make install" first. " exit 1 fi @@ -21,7 +26,7 @@ esac for f in $SRCDIR/codepages/*.dat; do - FNAME="$DESTDIR/$DATDIR/`basename $f`" + FNAME="$DESTDIR$DATDIR/`basename $f`" if test "$mode" = 'install'; then echo "Installing $f as $FNAME " cp "$f" "$FNAME" diff -uwrN samba-3.0.23.orig/source/script/installdirs.sh samba-3.0.23/source/script/installdirs.sh --- samba-3.0.23.orig/source/script/installdirs.sh 2006-04-19 19:29:42.000000000 -0700 +++ samba-3.0.23/source/script/installdirs.sh 2006-10-08 14:40:30.000000000 -0700 @@ -1,18 +1,23 @@ #!/bin/sh INSTALLPERMS=$1 -DESTDIR=`echo $2 | sed 's/\/\//\//g'` +DESTDIR=`echo $2 | sed 's/\/\//\//g'`/ shift shift +if uname | grep -iq CYGWIN +then + DESTDIR= +fi + for dir in $@; do DIRNAME=`echo $dir | sed 's/\/\//\//g'` - if [ ! -d $DESTDIR/$DIRNAME ]; then - mkdir -m $INSTALLPERMS -p $DESTDIR/$DIRNAME + if [ ! -d $DESTDIR$DIRNAME ]; then + mkdir -m $INSTALLPERMS -p $DESTDIR$DIRNAME fi - if [ ! -d $DESTDIR/$DIRNAME ]; then - echo "Failed to make directory $DESTDIR/$DIRNAME " + if [ ! -d $DESTDIR$DIRNAME ]; then + echo "Failed to make directory $DESTDIR$DIRNAME " exit 1 fi done diff -uwrN samba-3.0.23.orig/source/script/installmodules.sh samba-3.0.23/source/script/installmodules.sh --- samba-3.0.23.orig/source/script/installmodules.sh 2006-04-19 19:29:42.000000000 -0700 +++ samba-3.0.23/source/script/installmodules.sh 2006-10-08 16:05:28.000000000 -0700 @@ -1,7 +1,7 @@ #!/bin/sh INSTALLPERMS=$1 -DESTDIR=$2 +DESTDIR=$2/ prefix=`echo $3 | sed 's/\/\//\//g'` LIBDIR=`echo $4 | sed 's/\/\//\//g'` shift @@ -9,11 +9,16 @@ shift shift +if uname | grep -iq CYGWIN +then + DESTDIR= +fi + for d in $prefix $LIBDIR; do -if [ ! -d $DESTDIR/$d ]; then -mkdir $DESTDIR/$d -if [ ! -d $DESTDIR/$d ]; then - echo Failed to make directory $DESTDIR/$d +if [ ! -d $DESTDIR$d ]; then +mkdir $DESTDIR$d +if [ ! -d $DESTDIR$d ]; then + echo Failed to make directory $DESTDIR$d exit 1 fi fi @@ -21,9 +26,9 @@ for p in $*; do p2=`basename $p` - echo Installing $p as $DESTDIR/$LIBDIR/$p2 - cp -f $p $DESTDIR/$LIBDIR/ - chmod $INSTALLPERMS $DESTDIR/$LIBDIR/$p2 + echo Installing $p as $DESTDIR$LIBDIR/$p2 + cp -f $p $DESTDIR$LIBDIR/ + chmod $INSTALLPERMS $DESTDIR$LIBDIR/$p2 done exit 0 diff -uwrN samba-3.0.23.orig/source/script/installmsg.sh samba-3.0.23/source/script/installmsg.sh --- samba-3.0.23.orig/source/script/installmsg.sh 2006-04-19 19:29:42.000000000 -0700 +++ samba-3.0.23/source/script/installmsg.sh 2006-10-08 15:44:52.000000000 -0700 @@ -2,17 +2,22 @@ # first version (Sept 2003) written by Shiro Yamada # based on the first verion (March 2002) of installdat.sh written by Herb Lewis -DESTDIR=$1 +DESTDIR=$1/ MSGDIR=`echo $2 | sed 's/\/\//\//g'` SRCDIR=$3/ shift shift shift +if uname | grep -iq CYGWIN +then + DESTDIR= +fi + case $0 in *uninstall*) - if test ! -d "$DESTDIR/$MSGDIR"; then - echo "Directory $DESTDIR/$MSGDIR does not exist! " + if test ! -d "$DESTDIR$MSGDIR"; then + echo "Directory $DESTDIR$MSGDIR does not exist! " echo "Do a "make installmsg" or "make install" first. " exit 1 fi @@ -22,7 +27,7 @@ esac for f in $SRCDIR/po/*.msg; do - FNAME="$DESTDIR/$MSGDIR/`basename $f`" + FNAME="$DESTDIR$MSGDIR/`basename $f`" if test "$mode" = 'install'; then echo "Installing $f as $FNAME " cp "$f" "$FNAME" diff -uwrN samba-3.0.23.orig/source/script/installswat.sh samba-3.0.23/source/script/installswat.sh --- samba-3.0.23.orig/source/script/installswat.sh 2006-05-23 11:54:36.000000000 -0700 +++ samba-3.0.23/source/script/installswat.sh 2006-10-08 16:01:18.000000000 -0700 @@ -1,20 +1,26 @@ #!/bin/sh #first version March 1998, Andrew Tridgell -DESTDIR=$1 +DESTDIR=$1/ SWATDIR=`echo $2 | sed 's/\/\//\//g'` SRCDIR=$3/ -BOOKDIR="$DESTDIR/$SWATDIR/using_samba" + +if uname | grep -iq CYGWIN +then + DESTDIR= +fi + +BOOKDIR="$DESTDIR$SWATDIR/using_samba" case $0 in *uninstall*) - echo "Removing SWAT from $DESTDIR/$SWATDIR " + echo "Removing SWAT from $DESTDIR$SWATDIR " echo "Removing the Samba Web Administration Tool " echo -n "Removed " mode='uninstall' ;; *) - echo "Installing SWAT in $DESTDIR/$SWATDIR " + echo "Installing SWAT in $DESTDIR$SWATDIR " echo "Installing the Samba Web Administration Tool " echo -n "Installing " mode='install' @@ -26,7 +32,7 @@ if test "$mode" = 'install'; then for ln in $LANGS; do - SWATLANGDIR="$DESTDIR/$SWATDIR/$ln" + SWATLANGDIR="$DESTDIR$SWATDIR/$ln" for d in $SWATLANGDIR $SWATLANGDIR/help $SWATLANGDIR/images \ $SWATLANGDIR/include $SWATLANGDIR/js; do if [ ! -d $d ]; then @@ -47,7 +53,7 @@ if [ ! -f $f ] ; then continue fi - FNAME="$DESTDIR/$SWATDIR/$ln/images/`basename $f`" + FNAME="$DESTDIR$SWATDIR/$ln/images/`basename $f`" echo $FNAME if test "$mode" = 'install'; then cp "$f" "$FNAME" @@ -73,7 +79,7 @@ if [ ! -f $f ] ; then continue fi - FNAME="$DESTDIR/$SWATDIR/$ln/help/`basename $f`" + FNAME="$DESTDIR$SWATDIR/$ln/help/`basename $f`" echo $FNAME if test "$mode" = 'install'; then if [ "x$BOOKDIR" = "x" ]; then @@ -103,7 +109,7 @@ if [ ! -f $f ] ; then continue fi - FNAME="$DESTDIR/$SWATDIR/$ln/include/`basename $f`" + FNAME="$DESTDIR$SWATDIR/$ln/include/`basename $f`" echo $FNAME if test "$mode" = 'install'; then cp "$f" "$FNAME" @@ -134,7 +140,7 @@ continue fi - INSTALLDIR="$DESTDIR/$SWATDIR/help/`echo $dir | sed 's/htmldocs\///g'`" + INSTALLDIR="$DESTDIR$SWATDIR/help/`echo $dir | sed 's/htmldocs\///g'`" if test ! -d "$INSTALLDIR" -a "$mode" = 'install'; then mkdir "$INSTALLDIR" if test ! -d "$INSTALLDIR"; then diff -uwrN samba-3.0.23.orig/source/client/mount.cifs.c samba-3.0.23/source/client/mount.cifs.c --- samba-3.0.23.orig/source/client/mount.cifs.c 2006-06-23 06:16:54.000000000 -0700 +++ samba-3.0.23/source/client/mount.cifs.c 2006-10-21 12:40:54.000000000 -0700 @@ -1088,6 +1088,7 @@ return -1; } +#ifndef __CYGWIN__ if((getuid() != 0) && (geteuid() == 0)) { if((statbuf.st_uid == getuid()) && (S_IRWXU == (statbuf.st_mode & S_IRWXU))) { #ifndef CIFS_ALLOW_USR_SUID @@ -1100,6 +1101,7 @@ return -1; } } +#endif if(got_user == 0) { user_name = getusername(); @@ -1242,10 +1244,12 @@ if(flags & MS_SYNCHRONOUS) strcat(mountent.mnt_opts,",synch"); if(mount_user) { +#ifndef __CYGWIN__ if(getuid() != 0) { strcat(mountent.mnt_opts,",user="); strcat(mountent.mnt_opts,mount_user); } +#endif free(mount_user); } } diff -uwrN samba-3.0.23.orig/source/client/smbmnt.c samba-3.0.23/source/client/smbmnt.c --- samba-3.0.23.orig/source/client/smbmnt.c 2005-07-28 06:19:54.000000000 -0700 +++ samba-3.0.23/source/client/smbmnt.c 2006-10-21 11:47:24.000000000 -0700 @@ -143,12 +143,14 @@ return -1; } +#ifndef __CYGWIN__ if ((getuid() != 0) && ((getuid() != st.st_uid) || ((st.st_mode & S_IRWXU) != S_IRWXU))) { errno = EPERM; return -1; } +#endif return 0; } @@ -206,14 +208,18 @@ exit(1); } +#ifndef __CYGWIN__ if (getuid() != 0) { user_mount = 1; } +#endif +#ifndef __CYGWIN__ if (geteuid() != 0) { fprintf(stderr, "smbmnt must be installed suid root for direct user mounts (%d,%d)\n", getuid(), geteuid()); exit(1); } +#endif mount_uid = getuid(); mount_gid = getgid(); diff -uwrN samba-3.0.23.orig/source/client/smbumount.c samba-3.0.23/source/client/smbumount.c --- samba-3.0.23.orig/source/client/smbumount.c 2005-07-28 06:19:54.000000000 -0700 +++ samba-3.0.23/source/client/smbumount.c 2006-10-21 11:47:24.000000000 -0700 @@ -59,12 +59,14 @@ mount_uid = mount_uid16; } +#ifndef __CYGWIN__ if ((getuid() != 0) && (mount_uid != getuid())) { fprintf(stderr, "You are not allowed to umount %s\n", mount_point); return -1; } +#endif close(fid); return 0; diff -uwrN samba-3.0.23.orig/source/client/umount.cifs.c samba-3.0.23/source/client/umount.cifs.c --- samba-3.0.23.orig/source/client/umount.cifs.c 2006-04-19 19:29:46.000000000 -0700 +++ samba-3.0.23/source/client/umount.cifs.c 2006-10-21 11:47:24.000000000 -0700 @@ -111,7 +111,9 @@ int rc; /* allow root to unmount, no matter what */ +#ifndef __CYGWIN__ if(getuid() == 0) +#endif return 0; /* presumably can not chdir into the target as we do on mount */ diff -uwrN samba-3.0.23.orig/source/lib/afs_settoken.c samba-3.0.23/source/lib/afs_settoken.c --- samba-3.0.23.orig/source/lib/afs_settoken.c 2005-10-17 19:45:00.000000000 -0700 +++ samba-3.0.23/source/lib/afs_settoken.c 2006-10-21 12:43:52.000000000 -0700 @@ -218,8 +218,10 @@ if (!afs_decode_token(token_string, &cell, &ticket, &ct)) return False; +#ifndef __CYGWIN__ if (geteuid() != 0) ct.ViceId = getuid(); +#endif result = afs_settoken(cell, &ct, ticket); diff -uwrN samba-3.0.23.orig/source/pam_smbpass/pam_smb_passwd.c samba-3.0.23/source/pam_smbpass/pam_smb_passwd.c --- samba-3.0.23.orig/source/pam_smbpass/pam_smb_passwd.c 2006-04-19 19:29:22.000000000 -0700 +++ samba-3.0.23/source/pam_smbpass/pam_smb_passwd.c 2006-10-21 12:42:10.000000000 -0700 @@ -167,7 +167,9 @@ /* Password change by root, or for an expired token, doesn't require authentication. Is this a good choice? */ - if (getuid() != 0 && !(flags & PAM_CHANGE_EXPIRED_AUTHTOK)) { +#ifndef __CYGWIN__ + if (getuid() != 0 && + !(flags & PAM_CHANGE_EXPIRED_AUTHTOK)) { /* tell user what is happening */ #define greeting "Changing password for " @@ -199,7 +201,9 @@ retval = _smb_verify_password( pamh, sampass, pass_old, ctrl ); - } else { + } else +#endif + { pass_old = NULL; retval = PAM_SUCCESS; /* root doesn't have to */ } diff -uwrN samba-3.0.23.orig/source/smbd/dmapi.c samba-3.0.23/source/smbd/dmapi.c --- samba-3.0.23.orig/source/smbd/dmapi.c 2006-06-09 12:30:30.000000000 -0700 +++ samba-3.0.23/source/smbd/dmapi.c 2006-10-21 12:43:52.000000000 -0700 @@ -107,7 +107,9 @@ /* If we aren't root, something in the following will fail due to lack * of privileges. Aborting seems a little extreme. */ +#ifndef __CYGWIN__ SMB_WARN(getuid() == 0, "dmapi_init_session must be called as root"); +#endif dmapi_session = DM_NO_SESSION; if (init_dmapi_service() < 0) { diff -uwrN samba-3.0.23.orig/source/utils/net_groupmap.c samba-3.0.23/source/utils/net_groupmap.c --- samba-3.0.23.orig/source/utils/net_groupmap.c 2006-04-19 19:29:42.000000000 -0700 +++ samba-3.0.23/source/utils/net_groupmap.c 2006-10-21 11:47:24.000000000 -0700 @@ -814,10 +814,12 @@ }; /* we shouldn't have silly checks like this */ +#ifndef __CYGWIN__ if (getuid() != 0) { d_fprintf(stderr, "You must be root to edit group mappings.\n"); return -1; } +#endif if ( argc ) return net_run_function(argc, argv, func, net_help_groupmap); diff -uwrN samba-3.0.23.orig/source/utils/net_sam.c samba-3.0.23/source/utils/net_sam.c --- samba-3.0.23.orig/source/utils/net_sam.c 2006-06-23 06:16:54.000000000 -0700 +++ samba-3.0.23/source/utils/net_sam.c 2006-10-21 11:47:24.000000000 -0700 @@ -1240,11 +1240,13 @@ }; /* we shouldn't have silly checks like this */ +#ifndef __CYGWIN__ if (getuid() != 0) { d_fprintf(stderr, "You must be root to edit the SAM " "directly.\n"); return -1; } +#endif return net_run_function2(argc, argv, "net sam", func); } diff -uwrN samba-3.0.23.orig/source/utils/smbpasswd.c samba-3.0.23/source/utils/smbpasswd.c --- samba-3.0.23.orig/source/utils/smbpasswd.c 2006-06-23 06:16:54.000000000 -0700 +++ samba-3.0.23/source/utils/smbpasswd.c 2006-10-21 11:47:24.000000000 -0700 @@ -559,9 +559,13 @@ set_auth_parameters(argc, argv); #endif /* HAVE_SET_AUTH_PARAMETERS */ +#ifndef __CYGWIN__ if (getuid() == 0) { +#endif local_flags = LOCAL_AM_ROOT; +#ifndef __CYGWIN__ } +#endif load_case_tables(); diff -uwrN samba-3.0.23.orig/source/libads/dns.c samba-3.0.23/source/libads/dns.c --- samba-3.0.23.orig/source/libads/dns.c 2006-05-23 11:54:36.000000000 -0700 +++ samba-3.0.23/source/libads/dns.c 2006-10-08 11:32:08.000000000 -0700 @@ -32,8 +32,12 @@ #include #include +#ifndef __CYGWIN__ #include +#endif +#ifndef __CYGWIN__ #include +#endif #include #define MAX_DNS_PACKET_SIZE 0xffff @@ -71,6 +75,9 @@ if ( !start || !end || !q || !*ptr) return False; +#ifdef __CYGWIN__ + return False; +#else /* ! __CYGWIN__ */ /* See RFC 1035 for details. If this fails, then return. */ namelen = dn_expand( start, end, p, hostname, sizeof(hostname) ); @@ -92,6 +99,7 @@ *ptr = p; return True; +#endif /* __CYGWIN__ */ } /********************************************************************* @@ -110,6 +118,10 @@ ZERO_STRUCTP( rr ); /* pull the name from the answer */ +#ifdef __CYGWIN__ + return False; +#else /* ! __CYGWIN__ */ + namelen = dn_expand( start, end, p, hostname, sizeof(hostname) ); if ( namelen < 0 ) { return -1; @@ -146,6 +158,7 @@ *ptr = p; return True; +#endif /* __CYGWIN__ */ } /********************************************************************* @@ -162,6 +175,10 @@ if ( !start || !end || !srv || !*ptr) return -1; +#ifdef __CYGWIN__ + return False; +#else /* ! __CYGWIN__ */ + /* Parse the RR entry. Coming out of the this, ptr is at the beginning of the next record */ @@ -191,6 +208,7 @@ srv->hostname = talloc_strdup( ctx, dcname ); return True; +#endif /* __CYGWIN__ */ } @@ -244,6 +262,10 @@ return NT_STATUS_INVALID_PARAMETER; } +#ifdef __CYGWIN__ + return NT_STATUS_UNSUCCESSFUL; +#else /* ! __CYGWIN__ */ + /* Send the request. May have to loop several times in case of large replies */ @@ -355,6 +377,7 @@ *numdcs = idx; return NT_STATUS_OK; +#endif /* __CYGWIN__ */ } /********************************************************************