summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/mount.h
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2011-12-22 12:25:10 +0000
committerCorinna Vinschen <corinna@vinschen.de>2011-12-22 12:25:10 +0000
commit3a24189bbae9d1b1943e17038e78bb7d65f2a848 (patch)
tree6a8935c6f5899db38525d5b9daeae79cf1c0e707 /winsup/cygwin/mount.h
parent3a03267d6d695b678128db6a8b7028b8b5f93e1f (diff)
downloadcygnal-3a24189bbae9d1b1943e17038e78bb7d65f2a848.tar.gz
cygnal-3a24189bbae9d1b1943e17038e78bb7d65f2a848.tar.bz2
cygnal-3a24189bbae9d1b1943e17038e78bb7d65f2a848.zip
* external.cc (cygwin_internal): Implement CW_ALLOC_DRIVE_MAP,
CW_MAP_DRIVE_MAP, CW_FREE_DRIVE_MAP. * fhandler_process.cc: Include mount.h. (get_volume_path_names_for_volume_name): Move to mount.cc. (struct dos_drive_mappings): Ditto. * mount.cc (get_volume_path_names_for_volume_name): Move here. (dos_drive_mappings::dos_drive_mappings): Ditto. (dos_drive_mappings::fixup_if_match): Ditto. (dos_drive_mappings::~dos_drive_mappings): Ditto. * mount.h (class dos_drive_mappings): Declare her. * include/sys/cygwin.h (cygwin_getinfo_types): Add CW_ALLOC_DRIVE_MAP, CW_MAP_DRIVE_MAP, CW_FREE_DRIVE_MAP. * include/cygwin/version.h: Bump API minor number.
Diffstat (limited to 'winsup/cygwin/mount.h')
-rw-r--r--winsup/cygwin/mount.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/winsup/cygwin/mount.h b/winsup/cygwin/mount.h
index 0f0690a82..606e9f595 100644
--- a/winsup/cygwin/mount.h
+++ b/winsup/cygwin/mount.h
@@ -197,4 +197,22 @@ class mount_info
int cygdrive_win32_path (const char *src, char *dst, int& unit);
};
+
+class dos_drive_mappings
+{
+ struct mapping
+ {
+ mapping *next;
+ size_t doslen;
+ size_t ntlen;
+ wchar_t *dospath;
+ wchar_t *ntdevpath;
+ };
+ mapping *mappings;
+
+public:
+ dos_drive_mappings ();
+ ~dos_drive_mappings ();
+ wchar_t *fixup_if_match (wchar_t *path);
+};
#endif