summaryrefslogtreecommitdiffstats
path: root/source/client/client.c
diff options
context:
space:
mode:
authorGerald Carter <jerry@samba.org>2005-02-26 14:42:55 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 10:55:48 -0500
commitd4443807bc7a5a8615c69517365a92709db7ce29 (patch)
tree7811aa9d5947ffb6dc915703ed15504df2c1fc5c /source/client/client.c
parentcadd5a44e7f1d532aa4dad7a4233e5ea2c814a10 (diff)
downloadsamba-d4443807bc7a5a8615c69517365a92709db7ce29.tar.gz
samba-d4443807bc7a5a8615c69517365a92709db7ce29.tar.xz
samba-d4443807bc7a5a8615c69517365a92709db7ce29.zip
r5577: get recurse; dir working across single level dfs referrals
Diffstat (limited to 'source/client/client.c')
-rw-r--r--source/client/client.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/source/client/client.c b/source/client/client.c
index 55e9f1a71d9..515a2335adc 100644
--- a/source/client/client.c
+++ b/source/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;