Date: Sun, 28 Dec 2014 18:12:07 -0500 (EST) From: Rick Macklem <rmacklem@uoguelph.ca> To: kirk@ba23.org, Kevin Lo <kevlo@FreeBSD.org> Cc: freebsd-fs@freebsd.org Subject: Re: help using mount_smbfs with apple time capsule server Message-ID: <1027320326.3203438.1419808327617.JavaMail.root@uoguelph.ca> In-Reply-To: <CAN1LDCG3FEtQ1mhyrGOyB3QKdNe%2BK3Miqz2tBgxjAQ6jxXzz6g@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Kirk Russell wrote: > Hi, > > I cannot get FreeBSD 10's smbfs client to work with my server -- an > Apple time > capsule 4th generation version 7.6.4. > > Here are the commands I ran, to reproduce the issue: > # uname -a > FreeBSD 10.1-RELEASE FreeBSD 10.1-RELEASE #0 r274401: Tue Nov 11 > 21:02:49 UTC 2014 > root@releng1.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64 > # mount_smbfs -R 16 //lamb@Meganium/Data /mnt > Password: > # dd if=/mnt/afile bs=1 count=1 of=/dev/null > dd: /mnt/afile: No such file or directory > > For the FreeBSD 10 session, I tried to capture the raw packets, using > tcpdump, > in file bad.tcpdump. > > > This works with FreeBSD 9. For this working session, I tried to > capture the > raw packets, using tcpdump, in file good.tcpdump. > > # uname -a > FreeBSD 9.3-STABLE FreeBSD 9.3-STABLE #0: Wed Dec 24 16:16:05 EST > 2014 kirk@freenas:/usr/obj/usr/src/sys/GENERIC amd64 > # mount_smbfs -R 16 //lamb@Meganium/Data /mnt > Password: > # dd if=/mnt/afile bs=1 count=1 of=/dev/null > 1+0 records in > 1+0 records out > 1 bytes transferred in 0.000345 secs (2899 bytes/sec) > > > The two raw packets dumps are in this archive: > http://www.employees.org/~kirk/bstgbugs/smbfs.tar.gz > > Any pointers how to get his working? > The server appears to be returning an ERRbadpath error. > Well, my guess is that it has something to do with the Unicode changes added to smbfs about three years ago by kevlo@ (r227650 and friends in head). These changes are not in FreeBSD9. It appears that it now sends "\\afile" instead of "\afile" and I know nothing about the code/protocol but r227650 added changes like: error = mb_put_uint8(mbp, '\\'); replaced with: if (SMB_UNICODE_STRINGS(vcp)) error = mb_put_uint16le(mbp, '\\') else error = mb_put_uint8(mbp, '\\'); Note that the '\\' is actually 4 \ characters. Hopefully someone knows enough about Unicode or how SMB uses it to make sense of this? rick > -- > Kirk Russell <kirk@ba23.org> > http://www.ba23.org/ > _______________________________________________ > freebsd-fs@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-fs > To unsubscribe, send any mail to "freebsd-fs-unsubscribe@freebsd.org" >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1027320326.3203438.1419808327617.JavaMail.root>