summaryrefslogtreecommitdiff
path: root/source3/client
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2011-06-30 15:26:21 +0200
committerVolker Lendecke <vl@samba.org>2011-07-03 11:31:29 +0200
commite2498b1110d260c917be3f938c11f68e6b6c80e4 (patch)
tree60dad61c51f5bacce70d51e751030448766263de /source3/client
parent79d27e28ad27b61169689586ca1cd30050c5ce1f (diff)
downloadsamba-e2498b1110d260c917be3f938c11f68e6b6c80e4.tar.gz
samba-e2498b1110d260c917be3f938c11f68e6b6c80e4.tar.bz2
samba-e2498b1110d260c917be3f938c11f68e6b6c80e4.zip
s3: Read symlink information in smbclient "allinfo"
Diffstat (limited to 'source3/client')
-rw-r--r--source3/client/client.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/source3/client/client.c b/source3/client/client.c
index 207147c6d0..94c7e98ab3 100644
--- a/source3/client/client.c
+++ b/source3/client/client.c
@@ -1716,6 +1716,23 @@ static int do_allinfo(const char *name)
(unsigned long long)streams[i].size);
}
+ if (mode & FILE_ATTRIBUTE_REPARSE_POINT) {
+ char *subst, *print;
+ uint32_t flags;
+
+ status = cli_readlink(cli, name, talloc_tos(), &subst, &print,
+ &flags);
+ if (!NT_STATUS_IS_OK(status)) {
+ d_fprintf(stderr, "cli_readlink returned %s\n",
+ nt_errstr(status));
+ } else {
+ d_printf("symlink: subst=[%s], print=[%s], flags=%x\n",
+ subst, print, flags);
+ TALLOC_FREE(subst);
+ TALLOC_FREE(print);
+ }
+ }
+
status = cli_ntcreate(cli, name, 0,
CREATE_ACCESS_READ, 0,
FILE_SHARE_READ|FILE_SHARE_WRITE