Re: NCPFS flags all files executable on NetWare Volumes wit

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


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 : Tue Oct 31 2000 - 21:00:22 EST