[lkml]   [2000]   [Nov]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: NCPFS not returning Volume Size (???)
On Thu, Nov 16, 2000 at 08:40:29PM -0700, Jeff V. Merkey wrote:
> Petr,
> NCPFS in 2.2.18-pre21 is not returning volume size via df -h. I checked
> your code and found this comment:
> static int ncp_statfs(struct super_block *sb, struct statfs *buf, int bufsiz)
> {
> struct statfs tmp;
> /* We cannot say how much disk space is left on a mounted
> NetWare Server, because free space is distributed over
> volumes, and the current user might have disk quotas. So
> free space is not that simple to determine. Our decision
> here is to err conservatively. */
> tmp.f_type = NCP_SUPER_MAGIC;
> tmp.f_bsize = 512;
> tmp.f_blocks = 0;
> tmp.f_bfree = 0;
> tmp.f_bavail = 0;
> tmp.f_files = -1;
> tmp.f_ffree = -1;
> tmp.f_namelen = 12;
> return copy_to_user(buf, &tmp, bufsiz) ? -EFAULT : 0;
> }
> NCP Code
> 2222/17E6 Get Object's Remaining Disk Space
> (I have docs on this one and can send if you need it).
> will return in NetWare sized blocks the space remaining for this
> user (which will be the user ID used to login). The fact that quota's
> are present for a user (user space restriction node -- in NWDIR.H)
> should be irrelevant, since from the view of a Linux client attached to
> a NetWare server, this is their assigned storage.
> This NCP also speaks in hardcoded blocksizes of 4096 bytes, so that's
> the factor for free space for whatever login ID was used to mount
> the NetWare Volume that can be used in ncpfs_statfs() to return
> free space.

COrrection. 3.x always reports as 4096 blocks, 4.11 > reports as
4K, 8K, 16K, 32K, and 64K. I have not checked what NSS is reporting,
but will test tonight.


> I have not gone through your userspace code as of yet, but to make
> this work, you need the ObjectID for the User Account you used to
> connect to the server in order to make this work.
> I noticed I could not get free space from my Server with NCPFS with
> df -h, and tracked it down. Several NetWare customers migrating
> installations of NetWare to Linux pointed it out when they were
> moving Oracle databases over to Linux from NetWare.
> I noticed that 2.4 also is not reporting Volume free space.
> The current NCPFS code, like a lot of Linux code, is structured
> in a manner that's very different from Novell's internal code,
> (the names are shorter for one, which is an improvement). The
> way the NCP codes are peeled off is different and not the
> large case and switch structure employed in NetWare, so it's
> a little hard for me to follow since I am used to NCPs being
> grouped into case/switch classes. If you can point me to
> where 1) the login ID is stored and B) where NCP packet
> request/reponse headers are constructed, i.e. a skeleton
> to send/receive the requests I can grab, I'll try to
> code this for you.
> :-)
> Jeff
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to
> Please read the FAQ at
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
Please read the FAQ at

 \ /
  Last update: 2005-03-22 12:47    [W:0.058 / U:4.156 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site