diff options
author | Gerald Carter <jerry@samba.org> | 2005-02-26 14:42:55 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 10:55:48 -0500 |
commit | 96572957fc3df956ec0fad242fc7d04ab6a6961f (patch) | |
tree | 59379dd1ff10ce299201eae187893c0b2124c716 /source3/client | |
parent | 76d72a6bc62cba0111cb82b87b560255513e49c2 (diff) | |
download | samba-96572957fc3df956ec0fad242fc7d04ab6a6961f.tar.gz samba-96572957fc3df956ec0fad242fc7d04ab6a6961f.tar.bz2 samba-96572957fc3df956ec0fad242fc7d04ab6a6961f.zip |
r5577: get recurse; dir working across single level dfs referrals
(This used to be commit d4443807bc7a5a8615c69517365a92709db7ce29)
Diffstat (limited to 'source3/client')
-rw-r--r-- | source3/client/client.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/source3/client/client.c b/source3/client/client.c index 55e9f1a71d..515a2335ad 100644 --- a/source3/client/client.c +++ b/source3/client/client.c @@ -509,7 +509,7 @@ static int do_list_queue_empty(void) A helper for do_list. ****************************************************************************/ -static void do_list_helper(file_info *f, const char *mask, void *state) +static void do_list_helper(const char *mntpoint, file_info *f, const char *mask, void *state) { if (f->mode & aDIR) { if (do_list_dirs && do_this_one(f)) { @@ -526,7 +526,8 @@ static void do_list_helper(file_info *f, const char *mask, void *state) return; } - pstrcpy(mask2, mask); + pstrcpy(mask2, mntpoint); + pstrcat(mask2, mask); p = strrchr_m(mask2,'\\'); if (!p) return; @@ -583,6 +584,7 @@ void do_list(const char *mask,uint16 attribute,void (*fn)(file_info *),BOOL rec, if ( !cli_resolve_path( cli, head, &targetcli, targetpath ) ) { d_printf("do_list: [%s] %s\n", head, cli_errstr(cli)); + remove_do_list_queue_head(); continue; } @@ -2871,7 +2873,7 @@ typedef struct { int len; } completion_remote_t; -static void completion_remote_filter(file_info *f, const char *mask, void *state) +static void completion_remote_filter(const char *mnt, file_info *f, const char *mask, void *state) { completion_remote_t *info = (completion_remote_t *)state; |