Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/winsup
AgeCommit message (Collapse)Author
2010-06-21* dcrt0.cc (__api_fatal): Temporarily generate a stackdump.Christopher Faylor
2010-06-21* tls_pbuf.cc (tmp_pathbuf::w_get): Report what's failing when too many buffersChristopher Faylor
are in use.
2010-06-17 * fhandler_disk_file.cc (fhandler_base::fstat_by_handle): Fetch statCorinna Vinschen
handle only after checking for NFS.
2010-06-15 * fhandler_disk_file.cc (fhandler_base::fstat_by_nfs_ea): Use handleCorinna Vinschen
returned by get_stat_handle. (fhandler_base::fstat_helper): Reinstatiate code to re-open the file when checking for executability if called via fstat. Explain why.
2010-06-15 * dtable.cc (dtable::dup_worker): Reset path_conv handle in duplicatedCorinna Vinschen
fhandler. * fhandler.cc (fhandler_base::fstatvfs): Keep handle in created path_conv. * fhandler.h (fhandler_base::get_stat_access): New method. (fhandler_base::get_stat_handle): New method. * fhandler_disk_file.cc (fhandler_base::fstat_by_handle): Use handle returned by get_stat_handle. Only request inode from system if it isn't already set in the fhandler, and only for filesystems supporting them. (fhandler_base::fstat_fs): Use handle returned by get_stat_handle. Change the way open_fs is called. Explain why. (fhandler_base::fstat_helper): Use handle returned by get_stat_handle. Never use 0 inode number. Simplify executable recognition by re-using get_stat_handle if file could be opened with sufficient rights. (fhandler_disk_file::fstatvfs): Use handle returned by get_stat_handle. (fhandler_disk_file::facl): Use handle returned by get_stat_handle in GETACL and GETACLCNT cases. (fhandler_disk_file::link): Use handle returned by get_stat_handle instead of opening file here again. Add comment. (readdir_get_ino): Keep handle in created path_conv and drop opening file. * ntdll.h (wait_pending): New helper function. * path.cc (symlink_info::check): Drop unused 'opt' parameter from declaration. Add path_conv_handle argument. (path_conv::check): Make sure conv_handle is closed. Keep PC_KEEP_HANDLE flag in pflags_or. Accommodate call to sym.check to new args. (path_conv::~path_conv): Close conv_handle. (symlink_info::check_shortcut): Don't re-open file here, just use incoming handle. Drop goto's and label out. (symlink_info::check_sysfile): Don't re-open file here, just use incoming handle. Keep track of file position to accommodate the fact that file has been opened asynchronously in calling function. (symlink_info::check_nfs_symlink): Don't re-open file here, just use incoming handle. (symlink_info::check): Drop unused 'opt' parameter. Add path_conv_handle argument. Always try to open file with GENERIC_READ rights first to allow reading file content w/o having to re-open the file. Drop back to READ_CONTROL | FILE_READ_ATTRIBUTES otherwise. Call symlink test functions (except for check_reparse_point) only if file could be opened with GENERIC_READ. Keep file handle open if PC_KEEP_HANDLE is set in pflags. * path.h (enum pathconv_arg): Add PC_KEEP_HANDLE flag. (class path_conv_handle): New class. (class path_conv): Add conv_handle member. (path_conv::operator =): Duplicate conv_handle. (path_conv::handle): New method. (path_conv::access): New method. (path_conv::reset_conv_handle): New method. (path_conv::close_conv_handle): New method.
2010-06-15 * fhandler_disk_file.cc (fhandler_disk_file::fstatvfs): Fix indentation.Corinna Vinschen
2010-06-15 * fhandler_disk_file.cc (path_conv::get_ino_by_handle): Convert fromCorinna Vinschen
static function to path_conv method. Accommodate throughout. (path_conv::ndisk_links): Unused, comment out. * path.h (path_conv::get_ino_by_handle): Declare. (path_conv::ndisk_links): Comment out declaration.
2010-06-15 * path.cc (path_conv::check): Return with ENOTDIR if component is aCorinna Vinschen
device.
2010-06-14 * dlfcn.cc (get_full_path_of_dll): Revert patch from 2010-04-29.Corinna Vinschen
2010-06-12* times.cc (gtod): Move to sharable region.Christopher Faylor
2010-06-09 * path.cc (symlink_info::check_shortcut): Use ro_u_empty rather thanCorinna Vinschen
local UNICODE_STRING object. (symlink_info::check_sysfile): Ditto. Return immediately if NtOpenFile failed to avoid closing random handle. Improve debug output in case NtReadFile failed.
2010-06-08 * path.cc (symlink_info::check): Set h to NULL after closing handleCorinna Vinschen
in udf check. Remove overagressive bracketing. Don't set h to NULL without closing the handle. Fix using wrong handle in checking file system when using parent directory handle.
2010-06-07 * include/sys/stdio.h: Remove _GNU_SOURCE guard around getlineCorinna Vinschen
and getdelim prototypes since they are SUSv4 now.
2010-06-02 * ntdll.h (STATUS_BAD_NETWORK_PATH): Define.Corinna Vinschen
(STATUS_BAD_NETWORK_NAME): Define. * path.cc (symlink_info::check): Convert STATUS_BAD_NETWORK_PATH and STATUS_BAD_NETWORK_NAME into an immediate ENOENT.
2010-06-01 * exceptions.cc (open_stackdumpfile): Correctly append .stackdumpCorinna Vinschen
suffix. * nlsfuncs.cc (rebase_locale_buf): Reorder arguments. Accommodate throughout. Add pointer to end of buffer and avoid changing pointers not pointing into the buffer.
2010-06-01 * fhandler_netdrive.cc (fhandler_netdrive::exists): Always free WNetCorinna Vinschen
resource if created.
2010-05-31 * cygheap.cc (cygheap_user::set_name): Allow to change the user nameCorinna Vinschen
if it only differs by case.
2010-05-26 * fhandler_registry.cc (multi_wcstombs): New function.Corinna Vinschen
(fhandler_registry::fstat): Call multi_wcstombs for strings of type REG_MULTI_SZ. (fhandler_registry::fill_filebuf): Ditto.
2010-05-26* hires.h (hires_base::reset): New function.Christopher Faylor
(hires_us): Specify that hires_base is a public import. (hires_ms): Ditto. * times.cc (gtod): Move earlier in file. (settimeofday): Reset gtod so that base will be subsequently recalculated.
2010-05-26 * path.cc (symlink_info::check): Don't try to handle remote reparseCorinna Vinschen
points as symlinks. Explain why.
2010-05-26 * include/inttypes.h: Change PTR definitions to int to align with theCorinna Vinschen
stdint.h type definitions of intptr_t/uintptr_t.
2010-05-26 * fhandler.h (class fhandler_pty_master): Add master_thread member.Corinna Vinschen
* fhandler_tty.cc (fhandler_pty_master::close): Properly detach from master thread. (fhandler_pty_master::setup): Store cygthread pointer of pty master control thread in master_thread. Don't zap thread handle.
2010-05-26 * nlsfuncs.cc (__set_lc_time_from_win): Use LOCALE_SMONTHNAME1Corinna Vinschen
instead of LOCALE_SABBREVMONTHNAME1 in Japanese and Korean locales to get abbreviated month names. Explain why.
2010-05-192010-04-27 Danny Smith <dannysmith@users.sourceforge.net>Chris Sutcliffe
* mingwex/mb_wc_common.h (get_codepage): Revert change of 2006-09-19.
2010-05-18* environ.cc (regopt): Change the first argument to wide char string.Christopher Faylor
(environ_init): Accommodate change to the first argument of regopt. * exception.cc (open_stackdumpfile): Accommodate change to the type of progname in _pinfo. * external.cc (fillout_pinfo): Ditto. * fhandler_process.cc (format_process_winexename): Ditto. (format_process_stat): Ditto. * fork.cc (fork::parent): Ditto. * pinfo.cc (pinfo_basic::pinfo_basic): Call GetModuleFileNameW instead of GetModuleFileName. (pinfo::thisproc): Accommodate change to the type of progname in _pinfo. (pinfo_init): Ditto. * pinfo.h (_pinfo): Change the type of progname to a wide char array. * registry.h (reg_key::get_int): Change the first argument from constant point to pointer to constant. (reg_key::get_string): Ditto. Change the last argument likewise. * registry.cc (reg_key::get_int): Accommodate change to the declaration. (reg_key::get_string): Ditto. * strace.cc (strace::hello): Accommodate change to the type of progname in _pinfo. (strace::vsprntf): Ditto.
2010-05-08* Makefile.in (DLL_OFILES): Add pseudo-reloc.o.Christopher Faylor
* dcrt0.cc (child_info_fork::handle_fork): Call _pei386_runtime_relocator here. (dll_crt0_1): Ditto for non-fork case. * dll_init.cc (dll::init): Complain more in comment. Clean up slightly. (dll_dllcrt0_1): Call _pei386_runtime_relocator when we know we have a filled-in per_process structure. * globals.cc (__cygwin_user_data): Accommodate new fields for _pei386_runtime_relocator. * pseudo-reloc.cc: New file adapted from old lib/pseudo-reloc.c. Include winsup.h directly. Collapse #ifdef __CYGWIN__ into one block. Perform minor whitespace code reformatting. (__report_error): Use small_printf to output error. (_pei386_runtime_relocator): Conditionalize for cygwin to take per_process pointer parameter. * winsup.h (_pei386_runtime_relocator): Declare. * include/cygwin/version.h (CYGWIN_VERSION_PER_PROCESS_API_VERSION_COMBINED): New macro. (CYGWIN_VERSION_USER_API_VERSION_COMBINED): Use above macro. (CYGWIN_VERSION_USE_PSEUDO_RELOC_IN_DLL): New macro. (CYGWIN_VERSION_API_MINOR): Bump to 227. * include/sys/cygwin.h: Remove obsolete comment. (per_process::unused2): Shorten. (per_process::pseudo_reloc_start): New field. (per_process::pseudo_reloc_end): Ditto. (per_process::image_base): Ditto. * lib/_cygwin_crt0_common.cc: Declare pseudo runtime externs needed for per_process structure. (_cygwin_crt0_common): Fill in pseudo_reloc runtime constants. * lib/pseudo-reloc-dummy.c: New file. Dummy function to satisify ld. * lib/pseudo-reloc.c: Delete.
2010-05-07 * fhandler_tty.cc (fhandler_tty_slave::init): Disable grabbingCorinna Vinschen
process group ownership of tty in case we're being debugged.
2010-05-06 * path.cc (path_conv::check): Drop setting sym.pflags before callingCorinna Vinschen
mount_info::conv_to_win32_path since the flag value is overwritten by mount_info::conv_to_win32_path anyway. Set flags for DOS paths before calling symlink_info::check so they can be used in that function already.
2010-05-03* dll_init.cc (dll_list::alloc): Add debugging assertion.Christopher Faylor
2010-04-29 * dlfcn.cc (get_full_path_of_dll): Handle non-existent file.Corinna Vinschen
2010-04-29 * new-features.sgml (ov-new1.7.6): Add new "dos" and "inode" mountCorinna Vinschen
options. * pathnames.sgml (mount-table): Ditto. (pathnames-specialchars): Change description order. Add paragraph to explain new behaviour in terms of leading spaces and trailing dots and spaces in pathnames.
2010-04-29 * utils.sgml (mount): Add description for "dos" and "ihash" mountCorinna Vinschen
options.
2010-04-29 * path.cc: Include sys/cygwin.h if built for mount(1).Corinna Vinschen
(struct opt): Add "dos" and "ihash" options. (from_fstab_line): Call cygwin_internal rather than read_flags if built for mount(1).
2010-04-29 * mount.cc (struct opt): Add "dos" and "ihash" options.Corinna Vinschen
(fillout_mntent): Ditto. * path.cc (path_conv::get_nt_native_path): Use path_conv's has_dos_filenames_only method. (path_conv::check): Add PATH_IHASH flag if FS has unreliable inode numbers. (symlink_info::check_shortcut): Or symlink flags to pflags. (symlink_info::check_sysfile): Ditto. Change test accordingly. (symlink_info::check_reparse_point): Ditto. (symlink_info::check_nfs_symlink): Ditto. (symlink_info::check): Check PATH_DOS flag in call to get_nt_native_path to utilize mount flag. Ditto in test for potential restarting. Set PATH_DOS if FS only allows DOS filename rules. * path.h (enum path_types): Add PATH_DOS and PATH_IHASH. (path_conv::hasgood_inode): Check PATH_IHASH instead of fs.hasgood_inode. (path_conv::has_dos_filenames_only): New method. * include/sys/mount.h (MOUNT_DOS): New mount flag. (MOUNT_IHASH): Ditto.
2010-04-29 * mount.cc (oopts): Remove entirely.Corinna Vinschen
(usage): Call cygwin_internal (CW_LST_MNT_OPTS) to create list of mount options. (print_version): Fix copyright date. (main): Replace option processing loop with single call to cygwin_internal (CW_CVT_MNT_OPTS).
2010-04-29 * external.cc (cygwin_internal): Add CW_CVT_MNT_OPTS to allow mountCorinna Vinschen
flag parsing. Add CW_LST_MNT_OPTS case to allow mount flag listing. * mount.cc (fstab_read_flags): Rename from read_flags. Make externally available. Change input string to char ** to allow returning faulty option. Add flag for avoiding debug output. (fstab_list_flags): New function to create list of options. * include/sys/cygwin.h (cygwin_getinfo_types): Add CW_CVT_MNT_OPTS and CW_LST_MNT_OPTS.
2010-04-28 * mount.cc (compare_flags): New function.Corinna Vinschen
(read_flags): Replace loop with bsearch. Simplify error check.
2010-04-28 * include/cygwin/version.h: Bump API minor version.Corinna Vinschen
2010-04-28 * new-features.sgml (ov-new1.7.6): Add locale wide-char changes.Corinna Vinschen
2010-04-28 * locale.cc (print_lc_xxx_charset): Remove.Corinna Vinschen
(enum type_t): Change according to the fact that nl_langinfo now returns all locale category values. (lc_ctype_names): Add new category members. Redefine for exclusive nl_langinfo usage. (lc_numeric_names): Ditto. (lc_time_names): Ditto. (lc_collate_names): Ditto. (lc_monetary_names): Ditto. (lc_messages_names): Ditto. (print_lc): Change switch according to new type_t values.
2010-04-28 * cygwin.din (__locale_mb_cur_max): Export.Corinna Vinschen
* nlsfuncs.cc (__getlocaleinfo): Drop conversion to multibyte. (__charfromwchar): New function to convert to multibyte. (__eval_datetimefmt): Convert to return wchar_t pointer. Work on wide char string. (__set_lc_time_from_win): Take additional pointer to "C" category info to accommodate C.foo locales. Rework to fill wide char members in category info. (__set_lc_ctype_from_win): New function. (__set_lc_numeric_from_win): Take additional pointer to "C" category info to accommodate C.foo locales. Rework to fill wide char members in category info. (__set_lc_monetary_from_win): Ditto. (__set_lc_messages_from_win): Ditto. (__get_current_collate_codeset): New function, called from nl_langinfo. * include/cygwin/config.h (__HAVE_LOCALE_INFO_EXTENDED__): Define.
2010-04-28* spawn.cc (find_exec): Use the first detected errno when lookup fails.Christopher Faylor
2010-04-27 * include/regex.h: Include _ansi.h to avoid missing out on preprocessorCorinna Vinschen
macros in sys/_types.h.
2010-04-26 * mount.h (fs_info::inited): New inline method.Corinna Vinschen
* path.cc (path_conv::check): Clear filesystem info if following a symlink. Use new fs_info::inited method to check if FS info is already available. (symlink_info::check): Drop fs_update_called. Use fs_info::inited method instead. Streamline test for leading space and trailing dot or space. Add comments.
2010-04-23 * path.h (get_nt_native_path): Add third parameter to declaration andCorinna Vinschen
declare with regparms. * path.cc (get_nt_native_path): Add third parameter to allow conversion of leading and trailing dots and spaces on filesystems only supporting filenames following DOS rules. (path_conv::get_nt_native_path): Call get_nt_native_path according to fs.has_dos_filenames_only flag. (getfileattr): Accommodate new parameter to get_nt_native_path. (symlink_info::check): Revamp fs_update_called handling to call fs.update only once per call. Call get_nt_native_path according to fs.has_dos_filenames_only flag. Streamline filesystem dependent code not to be called more than once unnecessarily. Drop code tweaking incoming path for broken filesystems only allowing DOS pathnames. Rely on changed get_nt_native_path instead. * mount.cc (fillout_mntent): Accommodate new parameter to get_nt_native_path. * strfuncs.cc (tfx_rev_chars): New conversion table with comment. (sys_cp_wcstombs): Use tfx_rev_chars rather than tfx_chars.
2010-04-22 * path.cc (symlink_info::check): Make sure to restart only once.Corinna Vinschen
2010-04-22 * mount.cc (GETVOLINFO_VALID_MASK): Drop FILE_SEQUENTIAL_WRITE_ONCECorinna Vinschen
from mask. Expand the comment a bit. (WIN_FAT_FLAGS): New define. (FS_IS_WINDOWS_FAT): New macro. (fs_info::update): Handle remote FS faking to be FAT. Subsume under CIFS. Check for NWFS and has_buggy_basic_info only for remote filesystems. Add check for has_dos_filenames_only. * mount.h (class fs_info): Add has_dos_filenames_only status flag. Implement accessors. * path.cc (symlink_info::check): Rearrange variable definitions to clear them up. Add a restart label to allow a clean restart within the method. Add a check for broken filesystems only allowing DOS pathnames in case we encounter a STATUS_OBJECT_NAME_NOT_FOUND status. If all checks point to one of that, restart method with tweaked incoming path. Add lengthy comments to explain what we do.
2010-04-22 * path.cc (symlink_info::check): Fix a comment.Corinna Vinschen
2010-04-22 * cygserver.sgml: Note the fact that slave tty/pty handle dispersal isCorinna Vinschen
unsed as of Cygwin 1.7.6. * new-features.sgml (ov-new1.7.6): New section. Add tty/pty and setrlimit changes.
2010-04-21 * fhandler_termios.cc (tcinit): Remove previously applied change.Corinna Vinschen
Replace with... * fhandler_tty.cc (fhandler_tty_slave::init): Become process group leader if called from dtable::init_std_file_from_handle. Add comment to explain.