diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2009-07-23 11:46:06 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2009-07-23 11:46:06 +0000 |
commit | a6131454a5de1af75b06d5dc473ffe4af850b46e (patch) | |
tree | 0a8df31a28d35a5126f453cffe4642005b3d3ffe /winsup/cygwin/mount.h | |
parent | 8b1e0815abf421c0d78f569e2601c5041e728900 (diff) | |
download | cygnal-a6131454a5de1af75b06d5dc473ffe4af850b46e.tar.gz cygnal-a6131454a5de1af75b06d5dc473ffe4af850b46e.tar.bz2 cygnal-a6131454a5de1af75b06d5dc473ffe4af850b46e.zip |
* mount.h (fs_info::fsn): New member.
(fs_info::clear): Clear fsn.
(fs_info::fsname): New read accessor for fsn.
* mount.cc (fs_info::update): Fill in fsn member with lowercased
filesystem name if filesystem is not well-known. Fall back to
"unknown" if filesystem name is missing.
(fillout_mntent): Print filesystem name retrieved in fs_info::update
rather than static string "unknown".
Diffstat (limited to 'winsup/cygwin/mount.h')
-rw-r--r-- | winsup/cygwin/mount.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/winsup/cygwin/mount.h b/winsup/cygwin/mount.h index c169ca33b..8876bbe13 100644 --- a/winsup/cygwin/mount.h +++ b/winsup/cygwin/mount.h @@ -43,10 +43,16 @@ class fs_info }; } status; ULONG sernum; + char fsn[80]; unsigned long got_fs () { return status.fs_flags; } public: - void clear () { memset (&status, 0 , sizeof status); sernum = 0UL; } + void clear () + { + memset (&status, 0 , sizeof status); + sernum = 0UL; + fsn[0] = '\0'; + } fs_info () { clear (); } IMPLEMENT_STATUS_FLAG (ULONG, flags) @@ -71,6 +77,7 @@ class fs_info int has_buggy_open () const {return is_sunwnfs ();} int has_buggy_fileid_dirinfo () const {return is_unixfs ();} + const char *fsname () const { return fsn[0] ? fsn : "unknown"; } bool update (PUNICODE_STRING, HANDLE) __attribute__ ((regparm (3))); }; |