Re: NCPFS flags all files executable on NetWare Volumes wit

From: Jeff V. Merkey (jmerkey@timpanogas.org)
Date: Fri Oct 27 2000 - 18:31:56 EDT

  • Next message: Udo A. Steinberg: "[BUG] Another ext2 OOPS"

    Petr Vandrovec wrote:
    >
    >
    >
    > In kernel fs/ncpfs/ncplib_kernel.c, there is function named
    > ncp_del_file_or_subdir() which does:
    >
    > #ifdef CONFIG_NCPFS_NFS_NS
    > if (server->name_space[volnum] == NW_NS_NFS)
    > {
    > int result;
    >
    > result = ncp_obtain_DOS_dir_base(server, volnum, dirent, name, &dirent);
    > if (result) return result;
    > return ncp_DeleteNSEntry(server, 1, volnum, dirent, NULL, NW_NS_DOS,
    > htons(0x0680));

    What wrong here is you have to read in each NS record (and the records
    for the parent
    file) and modify them. You are just doing one and expecting the server
    to do the work
    of unlinking just the one. You have to do each link yourself. I will
    fix.

    > }
    > else
    > #endif
    > return ncp_DeleteNSEntry(server, 1, volnum, dirent, name,
    > server->name_space[volnum], htons(0x0680));
    >
    > If you'll remove #ifdef-ed part, and you'll try to unlink some file
    > using NFS namespace, server dies (on traditional filesystem, NSS works)
    > with some internal inconsistency found error. Depending on search
    > attributes (0x8006) passed to function, it either works only for directories
    > (and abend for files), or works only for dirs (and refuses files), or
    > does not work at all.
    >
    >
    > > You can expose these as .files the way HFS likes to see them, and MAC
    > > clients to a Linux box
    > > will be able to see and store their data in native MAC format -- with
    > > finder info.
    >
    > It is possible when using DOS or OS/2 namespace. But as NFS namespace
    > allows all byte sequences up to 255 chars for filename (excluding chars
    > 0, '/' and names "." and "..")...

    I have code that translates MAC to DOS, DOS to NFS, NFS to MAC, etc.
    You have to convert the
    names using the tables in NWFS, file NWCREATE.C. There are tables I use
    to generate the
    MAC names from an NFS name using these tables of valid and invalid
    characters for each
    namespace. I have to do it for all the server Namespaces, since Netware
    can cross mount
    NWFS volumes created under Linux.

    Jeff

    > Best regards,
    > Petr Vandrovec
    > vandrove@vc.cvut.cz
    >
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    Please read the FAQ at http://www.tux.org/lkml/



    This archive was generated by hypermail 2b29 : Fri Oct 27 2000 - 18:36:38 EDT