func (srv *Server) SignIn(user, root string) (ssn rh.Session, err error) {

	// Slash
	slash := newFID("/", path.Join(srv.root, root), "/", false, 0, nil)
	dir, err := slash.Stat() // Calling Stat will initiailze fid, by updating its mode cache
	if err != nil {
		return nil, err
	}
	if !dir.IsDir() {
		return nil, rh.ErrNotExist // attaching non-directory
	}
	//
	ssn_ := &Session{
		user:  user,
		root:  root,
		slash: slash,
	}
	ssn = ssn_
	ssn_.name = fmt.Sprintf("%s:(%02x)", srv.String(), uint64(uintptr(unsafe.Pointer(ssn_)))&0xff)
	runtime.SetFinalizer(ssn, func(x *Session) {
		x.SignOut()
	})
	return ssn, nil
}
// SignIn creates a new file system server for the user, rooted at root within the server's local root directory.
SignIn creates a new file system server for the user, rooted at root within the server's local root directory.
// SignIn creates a new file system server for the user rooted at root within the server ' s local root directory .
func (srv *Server) SignIn(user, root string) (ssn rh.Session, err error) {
	slash := newFID("/", path.Join(srv.root, root), "/", false, 0, nil)
	dir, err := slash.Stat() 
	if err != nil {
		return nil, err
	}
	if !dir.IsDir() {
		return nil, rh.ErrNotExist 
	}
	ssn_ := &Session{
		user:  user,
		root:  root,
		slash: slash,
	}
	ssn = ssn_
	ssn_.name = fmt.Sprintf("%s:(%02x)", srv.String(), uint64(uintptr(unsafe.Pointer(ssn_)))&0xff)
	runtime.SetFinalizer(ssn, func(x *Session) {
		x.SignOut()
	})
	return ssn, nil
}
func ( srv * Server ) SignIn ( user , root string ) ( ssn rh . Session , err error ) { slash := newFID ( " " , path . Join ( srv . root , root ) , " " , false , 0 , nil ) dir , err := slash . Stat ( ) if err != nil { return nil , err } if ! dir . IsDir ( ) { return nil , rh . ErrNotExist } ssn_ := & Session { user : user , root : root , slash : slash , } ssn = ssn_ ssn_ . name = fmt . Sprintf ( " " , srv . String ( ) , uint64 ( uintptr ( unsafe . Pointer ( ssn_ ) ) ) & 0xff ) runtime . SetFinalizer ( ssn , func ( x * Session ) { x . SignOut ( ) } ) return ssn , nil }
SignIn creates a new file system server for the user, rooted at root within the server's local root directory.
SignIn creates a new file system server for the user rooted at root within the server ' s local root directory .
// Slash // Calling Stat will initiailze fid, by updating its mode cache // attaching non-directory //