X-Git-Url: https://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fmountlist.c;h=ed91f9ec7e812e5a16fe1e437f928c6f6e1eef47;hb=8b8ff236fe4bd09b2cdbd5d26909a008d342a695;hp=49109e737c65bcf415a3220ca03bdf21df0e14ac;hpb=55b81b990f6f80f9f622f56aada6357e67286ed2;p=gnulib.git diff --git a/lib/mountlist.c b/lib/mountlist.c index 49109e737..ed91f9ec7 100644 --- a/lib/mountlist.c +++ b/lib/mountlist.c @@ -21,7 +21,7 @@ #include #include -#include "mountlist.h" + #ifdef STDC_HEADERS # include @@ -33,13 +33,11 @@ void free (); #else # include #endif +#include "xalloc.h" #ifndef strstr char *strstr (); #endif -char *xmalloc (); -char *xrealloc (); -char *xstrdup (); #include #ifndef errno @@ -58,9 +56,21 @@ extern int errno; # include #endif -#if defined MOUNTED_GETFSSTAT /* __alpha running OSF_1 */ -# include -# include +#if defined MOUNTED_GETFSSTAT /* OSF_1 and Darwin1.3.x */ +# if HAVE_SYS_UCRED_H +# include /* needed by powerpc-apple-darwin1.3.7 */ +# endif +# if HAVE_SYS_MOUNT_H +# include +# endif +# if HAVE_SYS_FS_TYPES_H +# include /* needed by powerpc-apple-darwin1.3.7 */ +# endif +# if HAVE_STRUCT_FSSTAT_F_FSTYPENAME +# define FS_TYPE(Ent) ((Ent).f_fstypename) +# else +# define FS_TYPE(Ent) mnt_names[(Ent).f_type] +# endif #endif /* MOUNTED_GETFSSTAT */ #ifdef MOUNTED_GETMNTENT1 /* 4.3BSD, SunOS, HP-UX, Dynix, Irix. */ @@ -132,6 +142,9 @@ extern int errno; # define MNT_IGNORE(M) 0 #endif +#include "mountlist.h" +#include "unlocked-io.h" + #ifdef MOUNTED_GETMNTENT1 /* 4.3BSD, SunOS, HP-UX, Dynix, Irix. */ /* Return the value of the hexadecimal number represented by CP. No prefix (like '0x') or suffix (like 'h') is expected to be @@ -549,7 +562,7 @@ read_filesystem_list (int need_fs_type) me = (struct mount_entry *) xmalloc (sizeof (struct mount_entry)); me->me_devname = xstrdup (stats[counter].f_mntfromname); me->me_mountdir = xstrdup (stats[counter].f_mntonname); - me->me_type = mnt_names[stats[counter].f_type]; + me->me_type = xstrdup (FS_TYPE (stats[counter])); me->me_dummy = ME_DUMMY (me->me_devname, me->me_type); me->me_remote = ME_REMOTE (me->me_devname, me->me_type); me->me_dev = (dev_t) -1; /* Magic; means not known yet. */