summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/path.h
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2003-03-08 03:36:39 +0000
committerChristopher Faylor <me@cgf.cx>2003-03-08 03:36:39 +0000
commit762520f3bc4d160d2af658f5dd59dfd09d76bc7f (patch)
tree3f5a1f2f6163ab399d1f01c102421aba098a2c6a /winsup/cygwin/path.h
parent5582abd2c78a738bc9559c8807acbe62d4e07f48 (diff)
downloadcygnal-762520f3bc4d160d2af658f5dd59dfd09d76bc7f.tar.gz
cygnal-762520f3bc4d160d2af658f5dd59dfd09d76bc7f.tar.bz2
cygnal-762520f3bc4d160d2af658f5dd59dfd09d76bc7f.zip
* path.h (PATH_LNK): New enum val.
(path_conv::is_lnk_symlink): New function. True if path represents .lnk style symlink. * path.cc (check_shortcut): Set PATH_LNK in pflags when appropriate. (symlink_info::check): Ditto. Remove PATH_LNK from pflags initially. * syscalls.cc (unlink): Always remove readonly attribute from a symlink regardless of type. (link): (from Corinna Vinschen) Allow links to symlinks. Reset attributes on a symlink after successful link creation. (chmod): Use is_lnk_symlink where appropriate. (rename): Ditto. * tty.cc (create_tty_master): Call GetComputerName instead of cygwin_gethostname. Set ut_id. * syscalls.cc (login): Call endutent. (setutent): Do not seek after a fresh open.
Diffstat (limited to 'winsup/cygwin/path.h')
-rw-r--r--winsup/cygwin/path.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/winsup/cygwin/path.h b/winsup/cygwin/path.h
index 4de14bf4b..bd5b4a286 100644
--- a/winsup/cygwin/path.h
+++ b/winsup/cygwin/path.h
@@ -47,6 +47,7 @@ enum path_types
PATH_NOTEXEC = MOUNT_NOTEXEC,
PATH_CYGWIN_EXEC = MOUNT_CYGWIN_EXEC,
PATH_ALL_EXEC = (PATH_CYGWIN_EXEC | PATH_EXEC),
+ PATH_LNK = 0x01000000,
PATH_TEXT = 0x02000000,
PATH_ISDISK = 0x04000000,
PATH_HAS_SYMLINKS = 0x10000000,
@@ -97,6 +98,7 @@ class path_conv
return 0;
}
int issymlink () const {return path_flags & PATH_SYMLINK;}
+ int is_lnk_symlink () const {return path_flags & PATH_LNK;}
int issocket () const {return path_flags & PATH_SOCKET;}
int iscygexec () const {return path_flags & PATH_CYGWIN_EXEC;}
bool exists () const {return fileattr != INVALID_FILE_ATTRIBUTES;}