[SCM] Samba Shared Repository - branch v3-2-test updated - initial-v3-2-unstable-548-gbca371b

Jeremy Allison jra at samba.org
Fri Dec 7 22:55:15 GMT 2007


The branch, v3-2-test has been updated
       via  bca371bff8e1dd5099eda1774e5bb0fdbd6a1a77 (commit)
       via  efaebdb141a841ec083f20f8905ae0294b81d0d6 (commit)
       via  78c98796d9328723b7c46012adf5393134a4fea3 (commit)
       via  686e4e5efe23e074b661e876b6b118c03ff0058d (commit)
       via  9da4f408433759b7d86d1954e2e7c1365d590389 (commit)
       via  78dc75600099b5b3b5a8ecffec747a227ff51d70 (commit)
       via  4c32a22ac50ada3275d2ffba3c1aa08bee7d1549 (commit)
       via  86700b7e2e79e634b41c272632e42b2e64f58ba3 (commit)
       via  822b2ead9b0ee28d7ae147fc1ef67da099699cf8 (commit)
       via  46b67fd82c795d1a34a1efca9e409c0f3fa4f3a2 (commit)
       via  1d5fee5038413c90b367434f9066d947849bdaed (commit)
       via  0c21c5fa84e18d78801ab79abd726e5588902476 (commit)
       via  187d8a94eae87a32432c7c295698517b6ae31523 (commit)
       via  b91b61b54f02f11d80fc25b268faa354fcd1f6e0 (commit)
       via  d690ba77107d8c2b722972300272f9d540641ce9 (commit)
       via  6d61bb87975839adb25c304e5e5041f91b12d236 (commit)
       via  440e9f5b51e42e5dc5ce3f8d10b9e43ca31e87ef (commit)
       via  da558a7bdb40c755aee60198d1f9eb9efe4c5463 (commit)
       via  6ac5d81655927ba8eabea35adaae5adfcbb821c9 (commit)
       via  252ef28bb8f1406fdd92edba8538cb9e88f0b77f (commit)
       via  420195dd3e8b1b6771ab8be8bc974edaafc0cf8f (commit)
       via  76034d1529a594837725cf599d97019eed7226b4 (commit)
       via  c87f3eba9aa52f4ab25d77e2167262bf5c43b1a6 (commit)
       via  48252d124d83aaa502b7821564978b9bf5babd03 (commit)
       via  49534432d4c63d0dfd7bf080c30adecef06deade (commit)
      from  970daaa0a620d8e47475909cd7b5e54869602530 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-2-test


- Log -----------------------------------------------------------------
commit bca371bff8e1dd5099eda1774e5bb0fdbd6a1a77
Author: Jeremy Allison <jra at samba.org>
Date:   Fri Dec 7 14:54:38 2007 -0800

    A requiem for pstring.
    
                      --------------
                     /              \
                    /      REST      \
                   /        IN        \
                  /       PEACE        \
                 /                      \
                 | The infamous pstring |
                 |                      |
                 |                      |
                 |      7 December      |
                 |                      |
                 |         2007         |
                *|     *  *  *          | *
       _________)/\\_//(\/(/\)/\//\/\///|_)_______
    
    Jeremy

commit efaebdb141a841ec083f20f8905ae0294b81d0d6
Author: Jeremy Allison <jra at samba.org>
Date:   Fri Dec 7 14:43:31 2007 -0800

    More null deref fixes.
    Jeremy.

commit 78c98796d9328723b7c46012adf5393134a4fea3
Author: Jeremy Allison <jra at samba.org>
Date:   Fri Dec 7 14:37:00 2007 -0800

    More null deref fixes.
    Jeremy

commit 686e4e5efe23e074b661e876b6b118c03ff0058d
Author: Jeremy Allison <jra at samba.org>
Date:   Fri Dec 7 14:35:04 2007 -0800

    Don't deref null pointers.
    Jeremy.

commit 9da4f408433759b7d86d1954e2e7c1365d590389
Author: Jeremy Allison <jra at samba.org>
Date:   Fri Dec 7 12:46:55 2007 -0800

    After conversations with Jerry, remove smbctool until it's
    maintained. Now I don't have to fix the pstrings in it :-).
    Jeremy.

commit 78dc75600099b5b3b5a8ecffec747a227ff51d70
Author: Jeremy Allison <jra at samba.org>
Date:   Fri Dec 7 12:43:10 2007 -0800

    We don't need P_GSTRING or P_UGSTRING anymore.
    Jeremy.

commit 4c32a22ac50ada3275d2ffba3c1aa08bee7d1549
Author: Jeremy Allison <jra at samba.org>
Date:   Fri Dec 7 12:26:32 2007 -0800

    Don't build rpctorture anymore - not maintained. Just remove.
    Remove all vestiges of pstring (except for smbctool as noted
    in previous commit).
    Jeremy

commit 86700b7e2e79e634b41c272632e42b2e64f58ba3
Author: Jeremy Allison <jra at samba.org>
Date:   Fri Dec 7 12:08:55 2007 -0800

    Fix call to clistr_pull_talloc.
    Jeremy.

commit 822b2ead9b0ee28d7ae147fc1ef67da099699cf8
Author: Jeremy Allison <jra at samba.org>
Date:   Fri Dec 7 12:04:40 2007 -0800

    Don't double define fstring.
    Jeremy.

commit 46b67fd82c795d1a34a1efca9e409c0f3fa4f3a2
Author: Jeremy Allison <jra at samba.org>
Date:   Fri Dec 7 12:02:44 2007 -0800

    Remove pstrings completely except for smbctool (what does this do ?).
    Don't build this for now.
    Jeremy.

commit 1d5fee5038413c90b367434f9066d947849bdaed
Author: Jeremy Allison <jra at samba.org>
Date:   Fri Dec 7 11:28:16 2007 -0800

    Remove pstring from clitar.c
    Jeremy

commit 0c21c5fa84e18d78801ab79abd726e5588902476
Merge: 187d8a94eae87a32432c7c295698517b6ae31523 970daaa0a620d8e47475909cd7b5e54869602530
Author: Jeremy Allison <jra at samba.org>
Date:   Fri Dec 7 09:57:19 2007 -0800

    Merge branch 'v3-2-test' of ssh://jra@git.samba.org/data/git/samba into v3-2-test

commit 187d8a94eae87a32432c7c295698517b6ae31523
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Dec 6 19:15:56 2007 -0800

    *Really* fix the no password -N opt :-).
    Jeremy.

commit b91b61b54f02f11d80fc25b268faa354fcd1f6e0
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Dec 6 19:06:34 2007 -0800

    Fix the '-N' option.
    Jeremy.

commit d690ba77107d8c2b722972300272f9d540641ce9
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Dec 6 19:01:27 2007 -0800

    These should be char *, but replace them with [1024] for now
    to eliminate the pstring data type.
    Jeremy

commit 6d61bb87975839adb25c304e5e5041f91b12d236
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Dec 6 18:58:01 2007 -0800

    Make all the tools use the proper accessor functions.
    Jeremy.

commit 440e9f5b51e42e5dc5ce3f8d10b9e43ca31e87ef
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Dec 6 18:52:36 2007 -0800

    Fix typos in auth change.
    Jeremy.

commit da558a7bdb40c755aee60198d1f9eb9efe4c5463
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Dec 6 18:51:10 2007 -0800

    Missed smbmnt popt.
    Jeremy.

commit 6ac5d81655927ba8eabea35adaae5adfcbb821c9
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Dec 6 18:49:39 2007 -0800

    Get closer to building with smbmount. Move parameter line changes
    into lib/util.c
    Jeremy.

commit 252ef28bb8f1406fdd92edba8538cb9e88f0b77f
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Dec 6 18:08:01 2007 -0800

    Add popt to binaries in makefile. Hack clitar to compile until I fix it.
    Jeremy.

commit 420195dd3e8b1b6771ab8be8bc974edaafc0cf8f
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Dec 6 17:22:57 2007 -0800

    Make cmdline_auth_info private to lib/popt_common.c. Provide
    accessor functions.
    Jeremy.

commit 76034d1529a594837725cf599d97019eed7226b4
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Dec 6 17:17:03 2007 -0800

    Fix clidfs.c compile.
    Jeremy.

commit c87f3eba9aa52f4ab25d77e2167262bf5c43b1a6
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Dec 6 17:16:33 2007 -0800

    Remove pstrings from client/client.c by doing a large rewrite.
    Mostly compiles....
    Jeremy.

commit 48252d124d83aaa502b7821564978b9bf5babd03
Merge: 49534432d4c63d0dfd7bf080c30adecef06deade cb3a2dfeb047d45bb9eec8cb97d3ba288f21887e
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Dec 6 11:17:37 2007 -0800

    Merge branch 'v3-2-test' of ssh://jra@git.samba.org/data/git/samba into v3-2-test

commit 49534432d4c63d0dfd7bf080c30adecef06deade
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Dec 6 10:10:16 2007 -0800

    Don't understand this. I have no changes here....
    Jeremy.

-----------------------------------------------------------------------

Summary of changes:
 source/Makefile.in                   |  102 +-
 source/client/client.c               | 2550 ++++++++++++++---------
 source/client/clitar.c               |  375 ++--
 source/client/smbctool.c             | 3780 ----------------------------------
 source/dynconfig.c                   |   19 +-
 source/include/client.h              |    5 +-
 source/include/dynconfig.h           |   16 +-
 source/include/includes.h            |   25 +-
 source/include/msdfs.h               |    2 +-
 source/include/popt_common.h         |    6 +-
 source/include/pstring.h             |   35 -
 source/include/safe_string.h         |   69 +-
 source/include/smb.h                 |    2 +-
 source/lib/afs.c                     |   24 +-
 source/lib/charcnv.c                 |   13 +-
 source/lib/popt_common.c             |  140 +-
 source/lib/readline.c                |   23 +-
 source/lib/system.c                  |    1 -
 source/lib/util.c                    |  138 +-
 source/lib/util_str.c                |   44 +-
 source/libsmb/cliconnect.c           |   10 +-
 source/libsmb/clidfs.c               |  171 +-
 source/libsmb/clifsinfo.c            |   62 +-
 source/libsmb/clilist.c              |   97 +-
 source/libsmb/climessage.c           |   46 +-
 source/libsmb/clistr.c               |   43 +-
 source/libsmb/libsmbclient.c         |   19 +-
 source/nmbd/nmbd.c                   |    2 +-
 source/nsswitch/winbind_nss_config.h |    5 +-
 source/param/loadparm.c              |   45 +-
 source/rpcclient/cmd_spoolss.c       |    8 +-
 source/rpcclient/rpcclient.c         |   23 +-
 source/smbd/msdfs.c                  |    2 +-
 source/smbd/server.c                 |    6 +-
 source/torture/rpctorture.c          |  566 -----
 source/torture/vfstest.c             |    9 +-
 source/utils/net_conf.c              |    4 -
 source/utils/net_rpc_shell.c         |   14 +-
 source/utils/smbcacls.c              |   14 +-
 source/utils/smbcquotas.c            |   20 +-
 source/utils/smbtree.c               |   14 +-
 source/web/swat.c                    |   15 -
 source/winbindd/winbindd.c           |    2 +-
 43 files changed, 2478 insertions(+), 6088 deletions(-)
 delete mode 100644 source/client/smbctool.c
 delete mode 100644 source/include/pstring.h
 delete mode 100644 source/torture/rpctorture.c


Changeset truncated at 500 lines:

diff --git a/source/Makefile.in b/source/Makefile.in
index a204ee7..f686ac0 100644
--- a/source/Makefile.in
+++ b/source/Makefile.in
@@ -679,15 +679,9 @@ CLIENT_OBJ = $(CLIENT_OBJ1) $(PARAM_OBJ) $(LIBSMB_OBJ) \
              $(PASSDB_OBJ) $(SMBLDAP_OBJ) $(GROUPDB_OBJ) $(LDB_OBJ) \
 	     $(DISPLAY_SEC_OBJ)
 
-TOOL_OBJ = client/smbctool.o client/clitar.o $(PARAM_OBJ) $(LIBSMB_OBJ) \
-	     $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) \
-             $(READLINE_OBJ) $(POPT_LIB_OBJ) $(SECRETS_OBJ) \
-             $(PASSDB_OBJ) $(SMBLDAP_OBJ) $(GROUPDB_OBJ) $(LDB_OBJ) \
-	     $(DISPLAY_SEC_OBJ)
-
 UTIL_REG_OBJ = lib/util_reg.o
 UTIL_REG_API_OBJ = lib/util_reg_api.o
-UTIL_REG_SMBCONF_OBJ = lib/util_reg_smbconf.o 
+UTIL_REG_SMBCONF_OBJ = lib/util_reg_smbconf.o
 
 # objects to be used when not all of the registry code should be
 # loaded but only the portion needed by reg_api, typically for
@@ -731,7 +725,7 @@ NET_OBJ = $(NET_OBJ1) $(PARAM_WITHOUT_REG_OBJ) $(SECRETS_OBJ) $(LIBSMB_OBJ) \
 	  $(REG_API_OBJ) $(DISPLAY_DSDCINFO_OBJ) $(NETAPI_OBJ)
 
 CUPS_OBJ = client/smbspool.o $(PARAM_OBJ) $(LIBSMB_OBJ) \
-	  $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) $(SECRETS_OBJ)
+	  $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) $(SECRETS_OBJ) $(POPT_LIB_OBJ)
 
 MOUNT_OBJ = client/smbmount.o \
              $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) $(SECRETS_OBJ)
@@ -819,16 +813,6 @@ NDRDUMP_OBJ = librpc/tools/ndrdump.o \
 			  $(LIBSAMBA_OBJ) $(LIB_NONSMBD_OBJ) $(POPT_LIB_OBJ) \
 			  $(RPC_PARSE_OBJ1) $(DOSERR_OBJ) $(SECRETS_OBJ)
 
-RPCTORTURE_OBJ = torture/rpctorture.o \
-             rpcclient/display.o \
-             rpcclient/cmd_lsarpc.o \
-             rpcclient/cmd_wkssvc.o \
-             rpcclient/cmd_samr.o \
-             rpcclient/cmd_srvsvc.o \
-             rpcclient/cmd_netlogon.o \
-             $(PARAM_OBJ) $(LIBSMB_OBJ) $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) \
-             $(RPC_CLIENT_OBJ) $(RPC_PARSE_OBJ) $(PASSDB_GET_SET_OBJ) $(SECRETS_OBJ)
-
 DEBUG2HTML_OBJ = utils/debug2html.o utils/debugparse.o
 
 SMBFILTER_OBJ = utils/smbfilter.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(SECRETS_OBJ) \
@@ -999,12 +983,8 @@ smbcacls : SHOWFLAGS bin/smbcacls at EXEEXT@
 
 smbcquotas : SHOWFLAGS bin/smbcquotas at EXEEXT@
 
-smbctool: SHOWFLAGS bin/smbctool at EXEEXT@
-
 locktest2 : SHOWFLAGS bin/locktest2 at EXEEXT@
 
-rpctorture : SHOWFLAGS bin/rpctorture at EXEEXT@
-
 debug2html : SHOWFLAGS bin/debug2html at EXEEXT@
 
 smbfilter : SHOWFLAGS bin/smbfilter at EXEEXT@
@@ -1168,10 +1148,6 @@ bin/smbclient at EXEEXT@: $(BINARY_PREREQS) $(CLIENT_OBJ) @BUILD_POPT@
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(CLIENT_OBJ) $(LDFLAGS) $(DYNEXP) $(TERMLDFLAGS) $(TERMLIBS) $(LIBS) @POPTLIBS@ $(KRB5LIBS) $(LDAP_LIBS) $(NSCD_LIBS)
 
-bin/smbctool at EXEEXT@: $(BINARY_PREREQS) $(TOOL_OBJ) @BUILD_POPT@
-	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(TOOL_OBJ) $(LDFLAGS) $(DYNEXP) $(TERMLDFLAGS) $(TERMLIBS) $(LIBS) @POPTLIBS@ $(KRB5LIBS) $(LDAP_LIBS) -Lbin -lsmbclient
-
 bin/net at EXEEXT@: $(BINARY_PREREQS) $(NET_OBJ) @BUILD_POPT@
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(NET_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) @POPTLIBS@ $(KRB5LIBS) $(UUID_LIBS) $(LDAP_LIBS) $(PASSDB_LIBS) $(TERMLDFLAGS) $(TERMLIBS) $(NSCD_LIBS) @INIPARSERLIBS@
@@ -1180,34 +1156,34 @@ bin/profiles at EXEEXT@: $(BINARY_PREREQS) $(PROFILES_OBJ) @BUILD_POPT@
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(PROFILES_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) $(LDAP_LIBS) @POPTLIBS@
 
-bin/smbspool at EXEEXT@: $(BINARY_PREREQS) $(CUPS_OBJ)
+bin/smbspool at EXEEXT@: $(BINARY_PREREQS) $(CUPS_OBJ) @BUILD_POPT@
 	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(CUPS_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS)
+	@$(CC) $(FLAGS) -o $@ $(CUPS_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) @POPTLIBS@
 
-bin/smbmount at EXEEXT@: $(BINARY_PREREQS) $(MOUNT_OBJ)
+bin/smbmount at EXEEXT@: $(BINARY_PREREQS) $(MOUNT_OBJ) @BUILD_POPT@
 	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(MOUNT_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS)
+	@$(CC) $(FLAGS) -o $@ $(MOUNT_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) @POPTLIBS@
 
-bin/smbmnt at EXEEXT@: $(BINARY_PREREQS) $(MNT_OBJ)
+bin/smbmnt at EXEEXT@: $(BINARY_PREREQS) $(MNT_OBJ) @BUILD_POPT@
 	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(MNT_OBJ) $(DYNEXP) $(LDFLAGS)
+	@$(CC) $(FLAGS) -o $@ $(MNT_OBJ) $(DYNEXP) $(LDFLAGS) @POPTLIBS@
 
-bin/smbumount at EXEEXT@: $(BINARY_PREREQS) $(UMOUNT_OBJ)
+bin/smbumount at EXEEXT@: $(BINARY_PREREQS) $(UMOUNT_OBJ) @BUILD_POPT@
 	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(UMOUNT_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS)
+	@$(CC) $(FLAGS) -o $@ $(UMOUNT_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) @POPTLIBS@
 
-bin/mount.cifs at EXEEXT@: $(BINARY_PREREQS) $(CIFS_MOUNT_OBJ)
+bin/mount.cifs at EXEEXT@: $(BINARY_PREREQS) $(CIFS_MOUNT_OBJ) @BUILD_POPT@
 	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(CIFS_MOUNT_OBJ) $(DYNEXP) $(LDFLAGS)
+	@$(CC) $(FLAGS) -o $@ $(CIFS_MOUNT_OBJ) $(DYNEXP) $(LDFLAGS) @POPTLIBS@
 
-bin/umount.cifs at EXEEXT@: $(BINARY_PREREQS) $(CIFS_UMOUNT_OBJ)
+bin/umount.cifs at EXEEXT@: $(BINARY_PREREQS) $(CIFS_UMOUNT_OBJ) @BUILD_POPT@
 	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(CIFS_UMOUNT_OBJ) $(DYNEXP) $(LDFLAGS)
+	@$(CC) $(FLAGS) -o $@ $(CIFS_UMOUNT_OBJ) $(DYNEXP) $(LDFLAGS) @POPTLIBS@
 
-bin/cifs.spnego at EXEEXT@: $(BINARY_PREREQS) $(CIFS_SPNEGO_OBJ) $(LIBSMBCLIENT_OBJ)
+bin/cifs.spnego at EXEEXT@: $(BINARY_PREREQS) $(CIFS_SPNEGO_OBJ) $(LIBSMBCLIENT_OBJ) @BUILD_POPT@
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(CIFS_SPNEGO_OBJ) $(DYNEXP) $(LDFLAGS) -lkeyutils $(LIBS) \
-		$(LIBSMBCLIENT_OBJ) $(KRB5LIBS) $(LDAP_LIBS)
+		$(LIBSMBCLIENT_OBJ) $(KRB5LIBS) $(LDAP_LIBS) @POPTLIBS@
 
 bin/testparm at EXEEXT@: $(BINARY_PREREQS) $(TESTPARM_OBJ) @BUILD_POPT@
 	@echo Linking $@
@@ -1249,27 +1225,27 @@ bin/nmblookup at EXEEXT@: $(BINARY_PREREQS) $(NMBLOOKUP_OBJ) @BUILD_POPT@
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(NMBLOOKUP_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) @POPTLIBS@ $(LDAP_LIBS)
 
-bin/smbtorture at EXEEXT@: $(BINARY_PREREQS) $(SMBTORTURE_OBJ)
+bin/smbtorture at EXEEXT@: $(BINARY_PREREQS) $(SMBTORTURE_OBJ) @BUILD_POPT@
 	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(SMBTORTURE_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS)
+	@$(CC) $(FLAGS) -o $@ $(SMBTORTURE_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) @POPTLIBS@
 
-bin/talloctort at EXEEXT@: $(BINARY_PREREQS) $(TALLOCTORT_OBJ)
+bin/talloctort at EXEEXT@: $(BINARY_PREREQS) $(TALLOCTORT_OBJ) @BUILD_POPT@
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(TALLOCTORT_OBJ) $(LDFLAGS) \
-		$(DYNEXP) $(LIBS) $(LDAP_LIBS)
+		$(DYNEXP) $(LIBS) $(LDAP_LIBS) @POPTLIBS@
 
-bin/replacetort at EXEEXT@: $(REPLACETORT_OBJ)
+bin/replacetort at EXEEXT@: $(REPLACETORT_OBJ) @BUILD_POPT@
 	@echo Linking $@
 	@$(CC) $(FLAGS) @PIE_LDFLAGS@ -o $@ $(REPLACETORT_OBJ) $(LDFLAGS) \
-		$(DYNEXP) $(LIBS)
+		$(DYNEXP) $(LIBS) @POPTLIBS@
 
-bin/masktest at EXEEXT@: $(BINARY_PREREQS) $(MASKTEST_OBJ)
+bin/masktest at EXEEXT@: $(BINARY_PREREQS) $(MASKTEST_OBJ) @BUILD_POPT@
 	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(MASKTEST_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS)
+	@$(CC) $(FLAGS) -o $@ $(MASKTEST_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) @POPTLIBS@
 
-bin/msgtest at EXEEXT@: $(BINARY_PREREQS) $(MSGTEST_OBJ)
+bin/msgtest at EXEEXT@: $(BINARY_PREREQS) $(MSGTEST_OBJ) @BUILD_POPT@
 	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(MSGTEST_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS)
+	@$(CC) $(FLAGS) -o $@ $(MSGTEST_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) @POPTLIBS@
 
 bin/smbcacls at EXEEXT@: $(BINARY_PREREQS) $(SMBCACLS_OBJ) @BUILD_POPT@
 	@echo Linking $@
@@ -1289,15 +1265,15 @@ bin/sharesec at EXEEXT@: $(BINARY_PREREQS) $(SHARESEC_OBJ) @BUILD_POPT@
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(SHARESEC_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) $(LDAP_LIBS) @POPTLIBS@
 
-bin/locktest at EXEEXT@: $(BINARY_PREREQS) $(LOCKTEST_OBJ)
+bin/locktest at EXEEXT@: $(BINARY_PREREQS) $(LOCKTEST_OBJ) @BUILD_POPT@
 	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(LOCKTEST_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS)
+	@$(CC) $(FLAGS) -o $@ $(LOCKTEST_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) @POPTLIBS@
 
-bin/nsstest at EXEEXT@: $(BINARY_PREREQS) $(NSSTEST_OBJ)
+bin/nsstest at EXEEXT@: $(BINARY_PREREQS) $(NSSTEST_OBJ) @BUILD_POPT@
 	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(NSSTEST_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS)  $(LDAP_LIBS)
+	@$(CC) $(FLAGS) -o $@ $(NSSTEST_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS)  $(LDAP_LIBS) @POPTLIBS@
 
-bin/pdbtest at EXEEXT@: $(BINARY_PREREQS) $(PDBTEST_OBJ)
+bin/pdbtest at EXEEXT@: $(BINARY_PREREQS) $(PDBTEST_OBJ) @BUILD_POPT@
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(PDBTEST_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(PASSDB_LIBS) $(LIBS) @POPTLIBS@
 
@@ -1313,26 +1289,22 @@ bin/log2pcap at EXEEXT@: $(BINARY_PREREQS) $(LOG2PCAP_OBJ) @BUILD_POPT@
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(LOG2PCAP_OBJ) $(LDFLAGS) $(DYNEXP) @POPTLIBS@ $(LIBS)
 
-bin/locktest2 at EXEEXT@: $(BINARY_PREREQS) $(LOCKTEST2_OBJ)
-	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(LOCKTEST2_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS)
-
-bin/rpctorture at EXEEXT@: $(BINARY_PREREQS) $(RPCTORTURE_OBJ)
+bin/locktest2 at EXEEXT@: $(BINARY_PREREQS) $(LOCKTEST2_OBJ) @BUILD_POPT@
 	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(RPCTORTURE_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS)
+	@$(CC) $(FLAGS) -o $@ $(LOCKTEST2_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) @POPTLIBS@
 
-bin/ndrdump at EXEEXT@: $(BINARY_PREREQS) $(NDRDUMP_OBJ)
+bin/ndrdump at EXEEXT@: $(BINARY_PREREQS) $(NDRDUMP_OBJ) @BUILD_POPT@
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(NDRDUMP_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) \
 		@POPTLIBS@ @LDAP_LIBS@
 
-bin/debug2html at EXEEXT@: $(BINARY_PREREQS) $(DEBUG2HTML_OBJ)
+bin/debug2html at EXEEXT@: $(BINARY_PREREQS) $(DEBUG2HTML_OBJ) @BUILD_POPT@
 	@echo Linking $@
 	@$(CC) $(FLAGS) -o $@ $(DEBUG2HTML_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS)
 
-bin/smbfilter at EXEEXT@: $(BINARY_PREREQS) $(SMBFILTER_OBJ)
+bin/smbfilter at EXEEXT@: $(BINARY_PREREQS) $(SMBFILTER_OBJ) @BUILD_POPT@
 	@echo Linking $@
-	@$(CC) $(FLAGS) -o $@ $(SMBFILTER_OBJ) $(LDFLAGS) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS)
+	@$(CC) $(FLAGS) -o $@ $(SMBFILTER_OBJ) $(LDFLAGS) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) @POPTLIBS@
 
 bin/ldbedit: $(BINARY_PREREQS) $(LDBEDIT_OBJ) @BUILD_POPT@
 	@echo Linking $@
diff --git a/source/client/client.c b/source/client/client.c
index ed33d42..bbe5572 100644
--- a/source/client/client.c
+++ b/source/client/client.c
@@ -1,21 +1,22 @@
-/* 
+/*
    Unix SMB/CIFS implementation.
    SMB client
    Copyright (C) Andrew Tridgell          1994-1998
    Copyright (C) Simo Sorce               2001-2002
    Copyright (C) Jelmer Vernooij          2003
    Copyright (C) Gerald (Jerry) Carter    2004
-   
+   Copyright (C) Jeremy Allison           1994-2007
+
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
-   
+
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
-   
+
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
@@ -32,13 +33,10 @@ extern bool override_logfile;
 extern char tar_type;
 extern bool in_client;
 static int port = 0;
-pstring cur_dir = "\\";
-static pstring cd_path = "";
-static pstring service;
-static pstring desthost;
-static pstring username;
-static pstring calling_name;
-static bool grepable=False;
+static char *service;
+static char *desthost;
+static char *calling_name;
+static bool grepable = false;
 static char *cmdstr = NULL;
 
 static int io_bufsize = 64512;
@@ -46,12 +44,10 @@ static int io_bufsize = 64512;
 static int name_type = 0x20;
 extern int max_protocol;
 
-static int process_tok(pstring tok);
+static int process_tok(char *tok);
 static int cmd_help(void);
 
-static TALLOC_CTX *ctx;
 #define CREATE_ACCESS_READ READ_CONTROL_ACCESS
-static pstring cwd;
 
 /* 30 second timeout on most commands */
 #define CLIENT_TIMEOUT (30*1000)
@@ -63,7 +59,7 @@ static pstring cwd;
 time_t newer_than = 0;
 static int archive_level = 0;
 
-static bool translation = False;
+static bool translation = false;
 static bool have_ip;
 
 /* clitar bits insert */
@@ -71,23 +67,18 @@ extern int blocksize;
 extern bool tar_inc;
 extern bool tar_reset;
 /* clitar bits end */
- 
 
-static bool prompt = True;
+static bool prompt = true;
 
-static bool recurse = False;
-static bool showacls = False;
-bool lowercase = False;
+static bool recurse = false;
+static bool showacls = false;
+bool lowercase = false;
 
 static struct sockaddr_storage dest_ss;
 
 #define SEPARATORS " \t\n\r"
 
-static bool abort_mget = True;
-
-static pstring fileselection = "";
-
-extern file_info def_finfo;
+static bool abort_mget = true;
 
 /* timing globals */
 SMB_BIG_UINT get_total_size = 0;
@@ -105,8 +96,63 @@ struct cli_state *cli;
 static char CLI_DIRSEP_CHAR = '\\';
 static char CLI_DIRSEP_STR[] = { '\\', '\0' };
 
+/* Accessor functions for directory paths. */
+static char *fileselection;
+static const char *client_get_fileselection(void)
+{
+	if (fileselection) {
+		return fileselection;
+	}
+	return "";
+}
+
+static const char *client_set_fileselection(const char *new_fs)
+{
+	SAFE_FREE(fileselection);
+	if (new_fs) {
+		fileselection = SMB_STRDUP(new_fs);
+	}
+	return client_get_fileselection();
+}
+
+static char *cwd;
+static const char *client_get_cwd(void)
+{
+	if (cwd) {
+		return cwd;
+	}
+	return CLI_DIRSEP_STR;
+}
+
+static const char *client_set_cwd(const char *new_cwd)
+{
+	SAFE_FREE(cwd);
+	if (new_cwd) {
+		cwd = SMB_STRDUP(new_cwd);
+	}
+	return client_get_cwd();
+}
+
+static char *cur_dir;
+const char *client_get_cur_dir(void)
+{
+	if (cur_dir) {
+		return cur_dir;
+	}
+	return CLI_DIRSEP_STR;
+}
+
+const char *client_set_cur_dir(const char *newdir)
+{
+	SAFE_FREE(cur_dir);
+	if (newdir) {
+		cur_dir = SMB_STRDUP(newdir);
+	}
+	return client_get_cur_dir();
+}
+
 /****************************************************************************
- Write to a local file with CR/LF->LF translation if appropriate. Return the 
+ Write to a local file with CR/LF->LF translation if appropriate. Return the
  number taken from the buffer. This may not equal the number written.
 ****************************************************************************/
 
@@ -129,12 +175,12 @@ static int writefile(int f, char *b, int n)
 		b++;
 		i++;
 	}
-  
+
 	return(i);
 }
 
 /****************************************************************************
- Read from a file with LF->CR/LF translation if appropriate. Return the 
+ Read from a file with LF->CR/LF translation if appropriate. Return the
  number read. read approx n bytes.
 ****************************************************************************/
 
@@ -145,23 +191,23 @@ static int readfile(char *b, int n, XFILE *f)
 
 	if (!translation)
 		return x_fread(b,1,n,f);
-  
+
 	i = 0;
 	while (i < (n - 1) && (i < BUFFER_SIZE)) {
 		if ((c = x_getc(f)) == EOF) {
 			break;
 		}
-      
+
 		if (c == '\n') { /* change all LFs to CR/LF */
 			b[i++] = '\r';
 		}
-      
+
 		b[i++] = c;
 	}
-  
+
 	return(i);
 }
- 
+
 /****************************************************************************
  Send a message.
 ****************************************************************************/
@@ -171,7 +217,8 @@ static void send_message(void)
 	int total_len = 0;
 	int grp_id;
 
-	if (!cli_message_start(cli, desthost, username, &grp_id)) {
+	if (!cli_message_start(cli, desthost,
+				get_cmdline_auth_info_username(), &grp_id)) {
 		d_printf("message start: %s\n", cli_errstr(cli));
 		return;
 	}
@@ -181,7 +228,7 @@ static void send_message(void)
 
 	while (!feof(stdin) && total_len < 1600) {
 		int maxlen = MIN(1600 - total_len,127);
-		pstring msg;
+		char msg[1024];
 		int l=0;
 		int c;
 
@@ -190,7 +237,7 @@ static void send_message(void)
 		for (l=0;l<maxlen && (c=fgetc(stdin))!=EOF;l++) {
 			if (c == '\n')
 				msg[l++] = '\r';
-			msg[l] = c;   
+			msg[l] = c;
 		}
 
 		if ((total_len > 0) && (strlen(msg) == 0)) {
@@ -200,8 +247,8 @@ static void send_message(void)
 		if (!cli_message_text(cli, msg, l, grp_id)) {
 			d_printf("SMBsendtxt failed (%s)\n",cli_errstr(cli));
 			return;
-		}      
-		
+		}
+
 		total_len += l;
 	}
 
@@ -213,7 +260,7 @@ static void send_message(void)
 	if (!cli_message_end(cli, grp_id)) {
 		d_printf("SMBsendend failed (%s)\n",cli_errstr(cli));
 		return;
-	}      
+	}
 }
 
 /****************************************************************************
@@ -223,16 +270,17 @@ static void send_message(void)
 static int do_dskattr(void)
 {
 	int total, bsize, avail;
-	struct cli_state *targetcli;
-	pstring targetpath;
+	struct cli_state *targetcli = NULL;
+	char *targetpath = NULL;
+	TALLOC_CTX *ctx = talloc_tos();
 
-	if ( !cli_resolve_path_pstring( "", cli, cur_dir, &targetcli, targetpath ) ) {
+	if ( !cli_resolve_path(ctx, "", cli, client_get_cur_dir(), &targetcli, &targetpath)) {
 		d_printf("Error in dskattr: %s\n", cli_errstr(cli));
 		return 1;
 	}
 
 	if (!cli_dskattr(targetcli, &bsize, &total, &avail)) {
-		d_printf("Error in dskattr: %s\n",cli_errstr(targetcli)); 
+		d_printf("Error in dskattr: %s\n",cli_errstr(targetcli));
 		return 1;
 	}
 
@@ -249,7 +297,7 @@ static int do_dskattr(void)
 static int cmd_pwd(void)
 {
 	d_printf("Current directory is %s",service);
-	d_printf("%s\n",cur_dir);
+	d_printf("%s\n",client_get_cur_dir());
 	return 0;
 }


-- 
Samba Shared Repository


More information about the samba-cvs mailing list