1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-02 05:32:08 -08:00
emacs/lib-src
Eli Zaretskii 6dad71783c Support symlinks on latest versions of MS-Windows.
src/w32.c: Include winioctl.h and aclapi.h.
 (is_symlink, chase_symlinks, enable_privilege, restore_privilege)
 (revert_to_self): Forward declarations of static functions.
 <static BOOL g_b_init_get_security_info>:
 <g_b_init_create_symbolic_link>: New static flags.
 (globals_of_w32): Initialize them to zero.
 (GetSecurityInfo_Proc, CreateSymbolicLink_Proc): New typedefs.
 (map_w32_filename): Improve commentary.  Simplify switch.
 (SYMBOLIC_LINK_FLAG_DIRECTORY): Define if not defined in system
 headers (most versions of MinGW w32api don't).
 (get_security_info, create_symbolic_link)
 (get_file_security_desc_by_handle, is_symlink, chase_symlinks):
 New functions.
 (sys_access, sys_chmod): Call 'chase_symlinks' to resolve symlinks
 in the argument file name.
 (sys_access): Call unc_volume_file_attributes only if
 GetFileAttributes fails with network-related error codes.
 (sys_rename): Diagnose renaming of a symlink when the user doesn't
 have the required privileges.
 (get_file_security_desc_by_name): Renamed from
 get_file_security_desc.
 (stat_worker): New function, with most of the guts of 'stat', and
 with addition of handling of symlinks and support for 'lstat'.  If
 possible, get file's attributes and security information by
 handle, not by name.  Produce S_IFLNK bit for symlinks, when
 called from 'lstat'.
 (stat, lstat): New functions, call 'stat_worker'.
 (symlink, readlink, careadlinkat): Rewritten to create and resolve
 symlinks when the underlying filesystem supports them.

 lib/src/ntlib.c (lstat): New function, calls 'stat'.

 nt/inc/sys/stat.h (S_IFLNK): Define.
 (S_ISLNK): A non-trivial definition.
 (lstat): Prototype instead of a macro that redirects to 'stat'.

 lisp/files.el (file-truename): Don't skip symlink-chasing part on
 windows-nt.  Incorporate the resolution of 8+3 short aliases on
 Windows into the loop that recursively chases symlinks.  Compare
 directory and its parent case-insensitively on MS-Windows and
 MS-DOS.

 etc/NEWS: Announce the symlink support on MS-Windows.
2012-08-03 13:23:30 +03:00
..
.gitignore Don't ignore files that are no longer generated 2011-02-13 19:35:05 +01:00
ChangeLog Support symlinks on latest versions of MS-Windows. 2012-08-03 13:23:30 +03:00
COPYING Change to GPLv3. 2007-07-25 07:00:38 +00:00
ebrowse.c Switch from NO_RETURN to C11's _Noreturn. 2012-06-24 10:39:14 -07:00
emacsclient.c Assume strerror. 2012-07-10 22:44:06 -07:00
etags.c Simplify by avoiding confusing use of strncpy etc. 2012-07-10 14:48:34 -07:00
grep-changelog Add 2012 to FSF copyright years for Emacs files 2012-01-05 01:46:05 -08:00
hexl.c Clean out last vestiges of the old HAVE_CONFIG_H stuff. 2012-06-25 18:05:39 -07:00
make-docfile.c Simplify by avoiding confusing use of strncpy etc. 2012-07-10 14:48:34 -07:00
Makefile.in Update lib-src config.h dependencies 2012-08-01 13:54:06 -04:00
makefile.w32-in Move NT-specific include file to the NT include directory 2012-08-01 23:19:48 -07:00
movemail.c Port to Solaris 8. 2012-08-01 21:14:48 -07:00
ntlib.c Support symlinks on latest versions of MS-Windows. 2012-08-03 13:23:30 +03:00
ntlib.h Add 2012 to FSF copyright years for Emacs files 2012-01-05 01:46:05 -08:00
pop.c Simplify by avoiding confusing use of strncpy etc. 2012-07-10 14:48:34 -07:00
pop.h Add 2012 to FSF copyright years for Emacs files 2012-01-05 01:46:05 -08:00
profile.c Use C99-style 'extern inline' if available. 2012-08-02 00:31:34 -07:00
rcs2log Add 2012 to FSF copyright years for Emacs files 2012-01-05 01:46:05 -08:00
README changed Emacs' to GNU Emacs' 2006-03-31 07:25:44 +00:00
test-distrib.c Add 2012 to FSF copyright years for Emacs files 2012-01-05 01:46:05 -08:00
testfile
update-game-score.c Assume strerror. 2012-07-10 22:44:06 -07:00

This directory contains the source code for the architecture-dependent
files that go in ${archlibdir}.  At present, these are mostly utility
programs used by GNU Emacs.