• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: AppleDouble format
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: AppleDouble format


  • Subject: Re: AppleDouble format
  • From: Vince DeMarco <email@hidden>
  • Date: Mon, 5 Nov 2001 13:25:13 -0800

On Monday, November 5, 2001, at 11:46 am, Charles Srstka wrote:

Does anyone know of a way to programmatically decode those ._filename AppleDouble files that UFS uses into actual HFS resource forks?

I don't know this one.

Also, is it possible to determine the format of a drive programmatically?


use statfs()

STATFS(2) System Programmer's Manual STATFS(2)

NAME
statfs - get file system statistics

SYNOPSIS
#include <sys/param.h>
#include <sys/mount.h>

int
statfs(const char *path, struct statfs *buf)

int
fstatfs(int fd, struct statfs *buf)

DESCRIPTION
Statfs() returns information about a mounted file system. Path is the
path name of any file within the mounted file system. Buf is a pointer
to a statfs structure defined as follows:

typedef struct { int32_t val[2]; } fsid_t;

#define MFSNAMELEN 16 /* length of fs type name, including nul */
#define MNAMELEN 32 /* length of buffer for returned name */

struct statfs {
short f_type; /* type of file system (unused; zero) */
short f_flags; /* copy of mount flags */
long f_bsize; /* fundamental file system block size */
long f_iosize; /* optimal transfer block size */
long f_blocks; /* total data blocks in file system */
long f_bfree; /* free blocks in fs */
long f_bavail; /* free blocks avail to non-superuser */
long f_files; /* total file nodes in file system */
long f_ffree; /* free file nodes in fs */
fsid_t f_fsid; /* file system id (super-user only) */
uid_t f_owner; /* user that mounted the file system */
long f_spare[4]; /* spare for later */
char f_fstypename[MFSNAMELEN]; /* fs type name */
char f_mntonname[MNAMELEN]; /* directory on which mounted *
/
char f_mntfromname[MNAMELEN]; /* mounted file system */
};

Fields that are undefined for a particular file system are set to -1.
Fstatfs() returns the same information about an open file referenced by
descriptor fd.

look at the f_fstypename field

vince


References: 
 >AppleDouble format (From: Charles Srstka <email@hidden>)

  • Prev by Date: Re: Bug in Interface Builder concerning Drawers at the Bottom
  • Next by Date: Re: cocoa newbie questions
  • Previous by thread: AppleDouble format
  • Next by thread: Re: AppleDouble format
  • Index(es):
    • Date
    • Thread