[linux-cifs-client] Add support infrastructure for Named Pipe

Jeff Layton jlayton at redhat.com
Wed Oct 21 05:32:38 MDT 2009


On Mon, 19 Oct 2009 14:56:51 -0500
Steve French <smfrench at gmail.com> wrote:

> On Mon, Oct 19, 2009 at 2:40 PM, Gerald Carter <jerry at plainjoe.org> wrote:
> > Steve French wrote:
> >
> >> I agree that Likewise librpc would address some of this,
> 
> > What I've not really heard here, which I think is what Jeff is
> > trying to get answered, is why a user space client lib implementation
> > (that does connection caching) is not acceptable for Shirish's
> > use case.
> 
> I think that is the point - the kernel implementation in effect does
> cifs connections and connection caching already (in Windows,
> in Linux cifs.ko, even as far back as OS/2).   There are
> various userspace rpc libraries (each with their own problems
> which have been mentioned), but any or all of them could
> with trivial change work today with existing cifs kernel sessions.
> 
> There is a distinct point Jeff and others have made about
> credentials, and automatic use of different credentials than the
> logged on user, and what Jeff would like to eventually see
> for cifs.ko and others pulling credentials from Winbind, but
> that is not really related to the pipe discussion.  LikewiseOpen
> as you note has a different caching infrastructure for credentials
> but as long as kernel mounts and user tools can get at the
> same credentials, its upcall addresses similar credential
> problem - but this is not specific to pipes but general
> problem with cifs tools using the right credentials when
> contacting a remote servr.
> 

The credentials thing was just an example. I was mainly just trying to
determine whether you had thought this through end-to-end yet. That's
really a different matter than my main objection. I think you can sum
up that part of my argument this way:

CIFS mainly exists to provide a posix filesystem interface onto a
clearly non-posix protocol. This is so that we can provide access to
this protocol to tools that are coded to posix standards (and other
linux non-posix interfaces like the xattr stuff). It doesn't matter
whether I use "cp" or a GUI program like nautilus to copy files, they
both work and aren't even necessarily aware that they're dealing with
CIFS.

This named pipe stuff is a different beast entirely. Programs that are
going to make use of it are going to need to be cognizant of the fact
that they're talking to an IPC$ share on another host and in fact will
probably need some sort of library to use it. Because of this, I submit
that there is very little benefit in trying to squish this into a VFS
interface and by extension the kernel.

-- 
Jeff Layton <jlayton at redhat.com>


More information about the linux-cifs-client mailing list