mldonkey-tasks
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Mldonkey-tasks] [task #4342] Access to disk data (free space, max file


From: savannah-bounces
Subject: [Mldonkey-tasks] [task #4342] Access to disk data (free space, max file name length)
Date: Mon, 11 Jul 2005 23:32:52 +0000
User-agent: Opera/8.01 (Windows NT 5.1; U; en)

Follow-up Comment #9, task #4342 (project mldonkey):

Still doesn't work on FreeBSD. Datastructure now in mldonkey:

type statfs = {
  f_type : int64;   (* type of filesystem *)
  f_bsize : int64;  (* optimal transfer block size *)
  f_blocks : int64; (* total data blocks in file system *)
  f_bfree : int64;  (* free blocks in fs *)
  f_bavail : int64; (* free blocks avail to non-superuser *)
  f_files : int64;  (* total file nodes in file system *)
  f_ffree : int64;  (* free file nodes in fs *)
  f_fsid : unit;  (* See note in statfs(2) *)
  f_fnamelen : int64; (* maximum length of filenames *)
  f_basetype : string; (* type of filesystem - Solaris, (-1) on other systems,
use f_type there *)
  f_frsize : int64;  (* Fundamental file system block size, (-1) if not
provided by system *)
}

Datatype decl. in FreeBSD 
     struct statfs {
     uint32_t f_version;             /* structure version number */
     uint32_t f_type;                /* type of filesystem */
     uint64_t f_flags;               /* copy of mount exported flags */
     uint64_t f_bsize;               /* filesystem fragment size */
     uint64_t f_iosize;              /* optimal transfer block size */
     uint64_t f_blocks;              /* total data blocks in filesystem */
     uint64_t f_bfree;               /* free blocks in filesystem */
     int64_t  f_bavail;              /* free blocks avail to non-superuser
*/
     uint64_t f_files;               /* total file nodes in filesystem */
     int64_t  f_ffree;               /* free nodes avail to non-superuser */
     uint64_t f_syncwrites;          /* count of sync writes since mount */
     uint64_t f_asyncwrites;         /* count of async writes since mount */
     uint64_t f_syncreads;           /* count of sync reads since mount */
     uint64_t f_asyncreads;          /* count of async reads since mount */
     uint64_t f_spare[10];           /* unused spare */
     uint32_t f_namemax;             /* maximum filename length */
     uid_t     f_owner;              /* user that mounted the filesystem */
     fsid_t    f_fsid;               /* filesystem id */
     char      f_charspare[80];          /* spare string space */
     char      f_fstypename[MFSNAMELEN]; /* filesystem type name */
     char      f_mntfromname[MNAMELEN];  /* mounted filesystem */
     char      f_mntonname[MNAMELEN];    /* directory on which mounted */
     };

However statvfs should work on freebsd too starting from FreeBSD 5.0. I can't
see light at the end of the tunnel yet.

    _______________________________________________________

Reply to this item at:

  <http://savannah.nongnu.org/task/?func=detailitem&item_id=4342>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.nongnu.org/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]