From owner-freebsd-fs@FreeBSD.ORG Mon Dec 29 14:38:54 2014 Return-Path: Delivered-To: freebsd-fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 19C203B0; Mon, 29 Dec 2014 14:38:54 +0000 (UTC) Received: from esa-annu.net.uoguelph.ca (esa-annu.mail.uoguelph.ca [131.104.91.36]) by mx1.freebsd.org (Postfix) with ESMTP id BB0EA2AD1; Mon, 29 Dec 2014 14:38:53 +0000 (UTC) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AtMEAHRmoVSDaFve/2dsb2JhbABcFoNCWASDAcNiCoVzAoEiAQEBAQF9hAwBAQEDASNWGw4KAgINBwwGAlkGCgkJiBsIDa4zhS2PTgEBAQEBAQEDAQEBAQEBARuBIY4iNAcYghU7EYEwBYlLi0mDDohNh2kigX8fgW4gMQEBAYFCfgEBAQ X-IronPort-AV: E=Sophos;i="5.07,659,1413259200"; d="scan'208";a="181723928" Received: from muskoka.cs.uoguelph.ca (HELO zcs3.mail.uoguelph.ca) ([131.104.91.222]) by esa-annu.net.uoguelph.ca with ESMTP; 29 Dec 2014 09:38:52 -0500 Received: from zcs3.mail.uoguelph.ca (localhost.localdomain [127.0.0.1]) by zcs3.mail.uoguelph.ca (Postfix) with ESMTP id A3BE8B408C; Mon, 29 Dec 2014 09:38:52 -0500 (EST) Date: Mon, 29 Dec 2014 09:38:52 -0500 (EST) From: Rick Macklem To: Kevin Lo Message-ID: <2050662882.3355858.1419863932660.JavaMail.root@uoguelph.ca> In-Reply-To: <20141229053714.GA66793@ns.kevlo.org> Subject: Re: help using mount_smbfs with apple time capsule server MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [172.17.95.12] X-Mailer: Zimbra 7.2.6_GA_2926 (ZimbraWebClient - FF3.0 (Win)/7.2.6_GA_2926) Cc: freebsd-fs@freebsd.org, kirk@ba23.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 14:38:54 -0000 Kevin Lo wrote: > On Sun, Dec 28, 2014 at 06:12:07PM -0500, Rick Macklem wrote: > > > > 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 > > Are you sure the file "afile" really exists? > > > > 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. > > Hmm, it was MFC'ed to stable/9 (r230196). > Oops, my mistake. When I looked at svnweb, I saw the first log entry for smbfs_subr.c listing "MFC: r228796", but didn't notice the second "MFC: r227650" and thought it hadn't been MFC'd. All I can tell you is that wireshark shows "\file" for the good.tcpdump vs "\\afile" for bad.tcpdump, so I guessed that was why the Mac didn't find it? I'll leave now, since I know nothing about SMB, rick > > 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? > > I tested it under FreeBSD -current [1] and and 9.3-STABLE [2], > it works perfectly... > > [1] > ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/ISO-IMAGES/11.0/FreeBSD-11.0-CURRENT-amd64-20141222-r276066-memstick.img > > [2] > ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/ISO-IMAGES/9.3/FreeBSD-9.3-STABLE-amd64-20141222-r276041-memstick.img > > > rick > > > > > -- > > > Kirk Russell > > > http://www.ba23.org/ > > Kevin >