Commit Graph

  • 1ac9d47a7e *** empty log message *** Corinna Vinschen 2014-10-22 20:04:50 +0000
  • fdf455637b * Makefile.in: Create install targets. (cygwin-ug-net/cygwin-ug-net.pdf): Create subdir to allow building PDF even if subdir is missing. (cygwin-api/cygwin-api.pdf): Ditto. * configure.ac: Add AC_PROG_INSTALL rule. * configure: Regenerate. * new-features.xml (ov-new1.7.33): Add installation of docs. Corinna Vinschen 2014-10-22 20:04:42 +0000
  • 419092e490 * posix.xml (std-gnu): Add ffsl, ffsll, quotactl. (std-notes): Add restrictions of quotactl. Corinna Vinschen 2014-10-22 19:29:33 +0000
  • 8a091aad42 * new-features.xml (ov-new1.7.33): Document stime. * posix.xml (std-deprec): Add stime. Yaakov Selkowitz 2014-10-22 19:18:50 +0000
  • d6aa3abb4f * common.din (stime): Export. * times.cc (stime): New function. * include/cygwin/time.h (stime): Declare. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump. Yaakov Selkowitz 2014-10-22 19:03:02 +0000
  • 06fb98f4b5 *** empty log message *** Corinna Vinschen 2014-10-22 09:04:23 +0000
  • 27b7220d20 * new-features.xml (ov-new1.7.33): s/Linux/glibc. Corinna Vinschen 2014-10-22 09:03:50 +0000
  • 37b1a944c7 * new-features.xml (ov-new1.7.33): Update to current state. Corinna Vinschen 2014-10-22 08:33:37 +0000
  • 783341b629 *** empty log message *** Corinna Vinschen 2014-10-22 08:32:07 +0000
  • a45be63b29 *** empty log message *** Corinna Vinschen 2014-10-22 08:12:45 +0000
  • 51521b2a6e * sec_auth.cc (get_user_groups): Remove experimental exception handler added 2014-09-05. (get_user_local_groups): Ditto. Corinna Vinschen 2014-10-21 19:17:09 +0000
  • a208583750 * cygcheck.cc (CYGLSA64_DLL): Remove unused macro. (dump_sysinfo): If COMSPEC isn't set in the MSVCRT environment, set it. Explain why. Corinna Vinschen 2014-10-21 10:59:40 +0000
  • f2ee8ffeb1 Fix typo Corinna Vinschen 2014-10-20 16:38:19 +0000
  • 03a6a1e408 * fhandler_serial.cc: Revert debug code accidentally checked in on 2014-08-18. Corinna Vinschen 2014-10-20 14:30:35 +0000
  • 5cb6400ec2 *** empty log message *** Corinna Vinschen 2014-10-20 13:19:58 +0000
  • 85bfa90696 * path.cc (symlink_info::check): Set error from status code if opening the parent directory failed, but keep special case for root dirs. Corinna Vinschen 2014-10-20 10:29:30 +0000
  • 2a126568ad * libc/time/gmtime_r.c (gmtime_r): Remove dead code. Corinna Vinschen 2014-10-20 07:30:17 +0000
  • cc5a7d7519 * cygheap.cc (cygheap_fixup_in_child): Call set_dll_dir. (init_cygheap::init_installation_root): Just memmove contents of installation_root instead of calling GetModuleFileNameW again. Copy installation_root to installation_dir before stripping of "bin" dir. Don't call SetDllDirectory here. Explain what we do. (setup_cygheap): New function taking over initial cygheap setup from memory_init. Additionally call set_dll_dir. * cygheap.h (struct init_cygheap): Add installation_dir member. (init_cygheap::set_dll_dir): Define. (setup_cygheap): Declare. * dcrt0.cc: Throughout drop parameter from memory_init call. (dll_crt0_0): Call setup_cygheap prior to memory_init. * dlfcn.cc (dlopen): Change comment to point to the right function. * shared.cc (memory_init): Drop parameter. Drop cygheap setup. * shared_info.h (memory_init): Change declaration accordingly. Corinna Vinschen 2014-10-17 14:36:59 +0000
  • 1f0bd6f96f fix typo Corinna Vinschen 2014-10-17 13:47:48 +0000
  • 1182991e60 * cygtls.h (__try): Define __l_endtry as block-local label in 32 bit case as well. Corinna Vinschen 2014-10-17 08:34:51 +0000
  • ced85f053e *** empty log message *** Corinna Vinschen 2014-10-17 08:33:37 +0000
  • 1db937e986 * Makefile.in (DLL_OFILES): Add quotactl.o. * common.din (quotactl): Export. * ntdll.h: Define FILE_FS_CONTROL_INFORMATION::FileSystemControlFlags flag values. (struct _FILE_FS_CONTROL_INFORMATION): Define. (struct _FILE_GET_QUOTA_INFORMATION): Define. (typedef struct _FILE_QUOTA_INFORMATION): Define. (NtQueryObject): Use PVOID rather than VOID*. (NtQueryVolumeInformationFile): Ditto. (NtQueryQuotaInformationFile): Declare. (NtSetQuotaInformationFile): Declare. (NtSetVolumeInformationFile): Declare. * quotactl.cc: New file implementing quotactl(). * include/sys/mount.h (BLOCK_SIZE): Define. (BLOCK_SIZE_BITS): Define. * include/sys/quota.h: New header. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump. Corinna Vinschen 2014-10-17 08:19:27 +0000
  • 5fedfc22b8 * Makefile.in (DLL_OFILES): Rearrange with one file per line. Corinna Vinschen 2014-10-16 15:40:09 +0000
  • a3dfd53a74 * fhandler_proc.cc (format_proc_partitions): Extend output to print the windows mount points the device is mounted on. Corinna Vinschen 2014-10-16 15:35:10 +0000
  • ec2a57f476 * libc/unix/getcwd.c (getcwd): Close directory also in case of an error. Corinna Vinschen 2014-10-16 15:00:59 +0000
  • b23449bce1 merge from gcc DJ Delorie 2014-10-15 21:12:58 +0000
  • 50e4b6d557 * fhandler_socket.cc (fhandler_socket::connect): Don't change state on WSAEALREADY error. Change comment accordingly. Corinna Vinschen 2014-10-14 19:43:09 +0000
  • 1dd75c50d5 * cygheap.cc (init_cygheap::init_installation_root): Install Cygwin's installation dir as DLL search path, instead of ".". * cygheap.h (class cwdstuff): Add parameter names in function declarations for readability. (cwdstuff::get): Ad inline implementation fetching the CWD as wide char string. * dlfcn.cc (dlopen): Add searching for dependent DLLs in DLL installation dir or CWD, if all else failed. Add comment to explain scenarios this is accommodating. Corinna Vinschen 2014-10-14 19:14:33 +0000
  • 2599a694a6 * fhandler_socket.cc (fhandler_socket::connect): Init connect_state to connect_pending only on unconnected socket. Set connect_state to connected on WSAEISCONN error. Set connect_state to connect_failed on any other error except WSAEWOULDBLOCK if connect is still pending. Add lots of comment to explain why all of the above. Corinna Vinschen 2014-10-14 19:08:27 +0000
  • 34e2edb76a merge from gcc DJ Delorie 2014-10-14 18:02:03 +0000
  • 6a56366a9e * net.cc (cygwin_setsockopt): Drop redundant test for AF_LOCAL and SOCK_STREAM in SO_PEERCRED case, as in the original patch. Corinna Vinschen 2014-10-13 08:18:18 +0000
  • 7563a26d9b * dlfcn.cc (gfpod_helper): Only check for POSIX dir separator, same as in get_full_path_of_dll. Corinna Vinschen 2014-10-12 19:14:07 +0000
  • 57cd3486e6 * dlfcn.cc (set_dl_error): Drop useless __stdcall. (check_path_access): Ditto. Drop FE_CWD from call to find_exec. (gfpod_helper): Call path_conv::check for all paths containing a dir separator to more closely follow the Linux search algorithm. (get_full_path_of_dll): Drop useless __stdcall. (dlopen): Simplify RTLD_NOLOAD case by calling GetModuleHandleEx instead of GetModuleHandle/LoadLibrary. Corinna Vinschen 2014-10-12 19:03:52 +0000
  • 697b9afe00 Add setsockopt(sd, SOL_SOCKET, SO_PEERCRED, NULL, 0) to disable initial handshake on AF_LOCAL sockets. * fhandler.h (class fhandler_socket): Add no_getpeereid status flag. (fhandler_socket::af_local_set_no_getpeereid): New prototype. * fhandler_socket.cc (fhandler_socket::af_local_connect): Skip handshake if no_getpeereid is set. Add debug output. (fhandler_socket::af_local_accept): Likewise. (fhandler_socket::af_local_set_no_getpeereid): New function. (fhandler_socket::af_local_copy): Copy no_getpeereid. (fhandler_socket::getpeereid): Fail if no_getpeereid is set. * net.cc (cygwin_setsockopt): Add SO_PEERCRED for AF_LOCAL/SOCK_STREAM sockets. Add comment to explain why we need it. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump. Corinna Vinschen 2014-10-11 18:28:04 +0000
  • a85ab1d482 * fhandler_socket.cc (fhandler_socket::af_local_connect): Drop outdated comment. (fhandler_socket::evaluate_events): Only set connect_state and call af_local_connect if connect_state is connect_pending. Explain why. Drop redundant test for socket family and type. (fhandler_socket::connect): Extend comment. Corinna Vinschen 2014-10-11 16:37:29 +0000
  • 2483fa2719 * fhandler_socket.cc (fhandler_socket::evaluate_events): Handle connect_state and af_local_connect connect call here, once, independent of FD_CONNECT being requested. Add comment to explain why. (fhandler_socket::connect): Drop connect_state handling and calling af_local_connect. Move remaining AF_LOCAL stuff prior to calling ::connect and explain why. Simplify error case. * poll.cc (poll): Handle connect state independently of POLLOUT being requested for the descriptor to allow setting POLLIN if connect failed. Add comment. * select.cc (set_bits): Drop connect_state and AF_LOCAL handling here. Corinna Vinschen 2014-10-11 12:14:29 +0000
  • 9f64fd8081 * fhandler_socket.cc (fhandler_socket::evaluate_events): Slightly rearrange code. Rephrase a comment. Corinna Vinschen 2014-10-11 10:50:36 +0000
  • 3ab591cf71 * dlfcn.cc (dlopen): Disable old 32 bit code on 64 bit. * dcrt0.cc (check_sanity_and_sync): Ditto. * dll_init.cc (dll_dllcrt0_1): Fix typo in comment. Corinna Vinschen 2014-10-10 15:29:18 +0000
  • 7a84e9c4bc * libc/include/_ansi.h: _LONG_LONG_TYPE definition removed. * libc/include/math.h: _LONG_LONG_TYPE replaced by "long long". Guards for C99 and C++11 functions fixed. * libc/include/stdlib.h: Guards for C99 and C++11 functions fixed. Corinna Vinschen 2014-10-10 14:43:19 +0000
  • f49469bb1e * fhandler_procsys.cc (fhandler_procsys::readdir): Just test ObjectTypeName for object types rather than calling lstat to avoid performance hit. * globals.cc (ro_u_natdir): Define. (ro_u_natsyml): Define. (ro_u_natdev): Define. Corinna Vinschen 2014-10-09 17:45:27 +0000
  • 50f799240e 2014-10-09 Sebastian Huber <sebastian.huber@embedded-brains.de> Jeff Johnston 2014-10-09 15:57:50 +0000
  • 0613efefc7 * fhandler_disk_file.cc (fhandler_disk_file::readdir_helper): Set d_type for virtual directories. Corinna Vinschen 2014-10-09 13:32:59 +0000
  • 54338f169f * fhandler_proc.cc (fhandler_proc::readdir): Set dirent d_type. * fhandler_process.cc (fhandler_process::readdir): Ditto. * fhandler_procnet.cc (fhandler_procnet::readdir): Ditto. * fhandler_procsys.cc (fhandler_procsys::readdir): Ditto. * fhandler_procsysvipc.cc (fhandler_procsysvipc::readdir): Ditto. * fhandler_virtual.h (virt_ftype_to_dtype): Define new inline function to generate dirent d_type from virtual_ftype_t. Corinna Vinschen 2014-10-09 13:24:37 +0000
  • 633cf9b5dd * libc/string/memccpy.c (memccpy): Fix warning about signed-unsigned comparison * libc/string/memchr.c (memchr): Ditto. * libc/string/memrchr.c (memrchr): Ditto. * libc/string/memset.c: (memset): Ditto. * libc/string/rawmemchr.c (rawmemchr): Ditto. * libc/string/local.h (__locale_cjk_lang): Fix "function declaration isn't a prototype" warning. * libc/string/strcasestr.c (strcasestr): Ditto. * libc/string/u_strerr.c (_user_strerror): Fix "unused parameter" warnings. * libc/string/rawmemchr.c (rawmemchr): Fix comment type "// ..." -> "/* ... */". Corinna Vinschen 2014-10-09 12:24:56 +0000
  • 657ca84427 Add accidentally missing ChangeLog for latest change. Corinna Vinschen 2014-10-09 08:31:34 +0000
  • ca86eee8de 2014-10-08 Steve Ellcey <sellcey@mips.com> Steve Ellcey 2014-10-08 22:29:52 +0000
  • da77c6d1e5 * libc/include/string.h (ffsl): Declare as GNU function. (ffsll): Ditto. Corinna Vinschen 2014-10-08 21:04:59 +0000
  • d326f841c3 * common.din (ffsl): Export. (ffsll): Export. * syscalls.cc (ffs): Implement using GCC intrinsic. (ffsl): Ditto. (ffsll): Ditto. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump. Corinna Vinschen 2014-10-08 21:03:40 +0000
  • 2fb56bbfaa * syscall.cc (ffs): Fix crash of ffs (0x80000000) on 64 bit. Corinna Vinschen 2014-10-08 16:34:31 +0000
  • 2bf7d695ea * fhandler_process.cc (format_process_statm): Fix output of dirty pages. Add linefeed. Corinna Vinschen 2014-10-08 15:25:52 +0000
  • ee97a4e332 Fix typo Corinna Vinschen 2014-10-08 14:41:44 +0000
  • 34fbc9859c merge from gcc DJ Delorie 2014-09-28 17:46:07 +0000
  • c30356443e * configure.in: Remove config_libnosys=false * configure: Regenerated. * msp430/nosyscalls.S: Rename to ciosyscalls.S * msp430/Makefile.in: Change LIBNOSYS to LIB_CIO. Nick Clifton 2014-09-22 15:26:46 +0000
  • 99eb60455b 2014-09-17 Jeff Johnston <jjohnstn@redhat.com> Jeff Johnston 2014-09-17 22:20:16 +0000
  • ad9ed96b6b 2014-09-17 Joel Sherrill <joel.sherrill@oarcorp.com> Thomas Uhle <thomas.uhle@eas.iis.fraunhofer.de> Jeff Johnston 2014-09-16 19:59:01 +0000
  • 3158e7d674 2014-09-15 Jeff Johnston <jjohnstn@redhat.com> Jeff Johnston 2014-09-15 16:05:37 +0000
  • 78a52749b2 2014-09-12 Jeff Johnston <jjohnstn@redhat.com> Jeff Johnston 2014-09-12 21:41:46 +0000
  • 43b3310bc9 2014-09-12 Jeff Johnston <jjohnstn@redhat.com> Jeff Johnston 2014-09-12 16:38:10 +0000
  • c9dded6775 2014-09-11 Freddie Chopin <freddie_chopin@op.pl> Jeff Johnston 2014-09-11 21:55:01 +0000
  • 1c5ab1f862 2014-09-08 Freddie Chopin <freddie_chopin@op.pl> Jeff Johnston 2014-09-08 18:57:52 +0000
  • 6e16a3169f * pathnames.xml (cygdrive): Add /proc/cygdrive description. Corinna Vinschen 2014-09-05 19:40:39 +0000
  • f207699a53 * fhandler_proc.cc (proc_tab): Add entry for cygdrive symlink. (format_proc_cygdrive): New function to implement /proc/cygdrive. Corinna Vinschen 2014-09-05 19:11:01 +0000
  • c8a01afd97 2014-09-05 Hale Wang <hale.wang@arm.com> Jeff Johnston 2014-09-05 17:26:42 +0000
  • bea3ef947a * exception.h (class exception): Remove unnecessary #ifdef. * uinfo.cc (client_request_pwdgrp::client_request_pwdgrp): Fix length counter to include trailing NUL. Corinna Vinschen 2014-09-05 11:47:33 +0000
  • acc511d184 * uinfo.cc (pwdgrp::fetch_account_from_windows): Handle APPLICATION PACKAGE AUTHORITY SIDs. * winlean.h (DNLEN): Raise to 31. Explain why. Corinna Vinschen 2014-09-05 09:46:26 +0000
  • e7565f1088 * libc/stdio/findfp.c (_cleanup_r): Call _fflush_r when configuration option "--enable-lite-exit" is in effect. Refactor the code. Corinna Vinschen 2014-09-05 09:42:15 +0000
  • 1ec7de7271 * libc/stdio/fwalk.c (_fwalk_reent): Remove redundant test. Corinna Vinschen 2014-09-05 09:31:32 +0000
  • a015d9b507 Add missing libc/machine/arm/aeabi_memcpy.c file Corinna Vinschen 2014-09-05 08:42:45 +0000
  • 9adec6fd79 * libc/time/mktm_r.c (_mktm_r): Optimize speed. Corinna Vinschen 2014-09-04 09:47:14 +0000
  • 7d407cb678 Add missing libc/machine/arm/aeabi_memcpy-armv7a.S file Corinna Vinschen 2014-09-04 08:27:35 +0000
  • f9bafa4640 * libc/time/clock.c (clock): Fix warnings about signed-unsigned comparisons. * libc/time/strftime.c (strftime): Likewise. * libc/time/strptime.c (match_string): Fix warning about discarding 'restrict' qualifier from pointer target type. Corinna Vinschen 2014-09-04 08:27:03 +0000
  • 4a9103c410 * libc/machine/arm/aeabi_memcpy.c: New file. * libc/machine/arm/aeabi_memcpy-armv7a.S: New file. * libc/machine/arm/Makefile.am: Add dependencies. * libc/machine/arm/Makefile.in: Regenerated. Corinna Vinschen 2014-09-04 08:23:23 +0000
  • e5110581dc * sec_acl.cc (aclcheck32): Check for required default entries as well. Enable check for missing CLASS_OBJ entries, now that setfacl creates them. Corinna Vinschen 2014-09-03 12:46:19 +0000
  • ef1e66cfbf * setfacl.c (addmissing): New function to add missing acl entries to a modified acl per the rules set by aclcheck. (setfacl): Call addmissing unless action is Delete. Corinna Vinschen 2014-09-03 12:44:05 +0000
  • 3e61dde3f1 * utils.xml (setfacl): Align documentation to help text in setfacl. Corinna Vinschen 2014-09-03 09:34:10 +0000
  • 451e1f4879 * setfacl.c (getaclentry): Fix previous fix again. Allow lone 'm' as well as any lone default entry if action is Delete. Fix comments. (usage): Align usage text. Corinna Vinschen 2014-09-03 09:32:53 +0000
  • 89d195a7d1 * setfacl.c (getaclentry): Fix return value in case of a lone 'm' if action is Delete. Drop requirement for a trailing colon if action is Delete. Corinna Vinschen 2014-09-03 08:57:20 +0000
  • 7a1cf1a003 * sec_acl.cc (aclsort32): Set errno to EINVAL if aclcheck32 failed. Corinna Vinschen 2014-09-02 20:07:21 +0000
  • b4536f29c5 * ntsec.xml (ntsec-common): Drop outdated comment about underdeveloped Solaris ACL API support. Corinna Vinschen 2014-08-31 20:06:14 +0000
  • f2b03c9258 * uinfo.cc (pwdgrp::fetch_account_from_windows): Disallow user accounts as groups. Add comment. Corinna Vinschen 2014-08-31 19:33:19 +0000
  • f3b0b4cb51 * utils.xml (setfacl): Drop outdated note that default ACEs are not taken into account. Corinna Vinschen 2014-08-31 19:20:10 +0000
  • 9845fcbb6b * setfacl.c (usage): Drop outdated note that default ACEs are not taken into account. Corinna Vinschen 2014-08-31 19:20:04 +0000
  • 489d1e5db9 * ntsec.xml: Disable description of db_prefix and db_separator settings. Corinna Vinschen 2014-08-31 18:19:03 +0000
  • cc332c9e27 * uinfo.cc (cygheap_pwdgrp::init): Fix comment. Rearrange code for style. (cygheap_pwdgrp::nss_init_line): Disable db_prefix and db_separator settings. Add comment. (pwdgrp::fetch_account_from_windows): Drop outdated comment. Fix code fetching primary group gid of group setting in SAM description field. Change comment accordingly. Corinna Vinschen 2014-08-31 18:18:49 +0000
  • 3faecb14b4 * uinfo.cc (pwdgrp::fetch_account_from_windows): Disallow creating an entry for "NULL SID". Corinna Vinschen 2014-08-31 14:16:04 +0000
  • ebf78cec85 * sec_acl.cc (setacl): Add comment. Handle NULL ACE for SUID, SGID, and VTX bits. Create owner, group, other and NULL entries in the same way and in the same order as alloc_sd. (getacl): Skip NULL ACE. Corinna Vinschen 2014-08-31 14:13:01 +0000
  • e7ee42f33d * utils.xml (getfacl): Document additional suid/sgid/vtx flag printing. Corinna Vinschen 2014-08-31 13:47:32 +0000
  • c7953da22d * getfacl.c (usage): Add flags description. (main): Print suid/sgid/vtx flags if available. Corinna Vinschen 2014-08-31 13:46:34 +0000
  • 1a33a5c6d3 * fhandler.cc (fhandler_base::facl): Drop CLASS_OBJ entry. * fhandler_disk_file.cc (fhandler_disk_file::facl): Ditto in noacl case. * sec_acl.cc (getacl): Compute useful fake CLASS_OBJ and DEF_CLASS_OBJ permission bits based on how these values are generated on Linux. Add commants to explain what the code is doing. * security.cc (get_attribute_from_acl): Compute group permission based on the actual primary group permissions and all secondary user and group ACCESS_ALLOWED_ACEs to emulate Linux' behaviour more closely. (check_access): Fix typos im comment. * include/cygwin/acl.h (MIN_ACL_ENTRIES): Redefine as 3. Corinna Vinschen 2014-08-28 12:38:52 +0000
  • c51ce2447a * fhandler_disk_file.cc (fhandler_disk_file::fstatvfs): Try the FileFsSizeInformation information class on filesystems choking on FileFsFullSizeInformation (I see you Netapp!) Corinna Vinschen 2014-08-28 12:29:42 +0000
  • dd48219ba9 * libc/include/math.h (frexpl): Remove parameter name. DJ Delorie 2014-08-27 19:27:03 +0000
  • 326510785e * fhandler.h (fhandler_pty_slave::fch_open_handles): Add bool parameter to declaration. * fhandler_tty.cc (fhandler_pty_slave::fch_open_handles): Add bool parameter "chown". Only request WRITE_OWNER access when opening pty synchronization objects if "chown" is set. (fhandler_pty_slave::fchmod): Call fch_open_handles with new bool parameter set to false. (fhandler_pty_slave::fchown): Call fch_open_handles with new bool parameter set to true. * kernel32.cc (CreateFileMappingW): Fix default standard rights for file mappings from READ_CONTROL to STANDARD_RIGHTS_REQUIRED to allow changing the DACL (fixes "access denied" error in pinfo::set_acl). Corinna Vinschen 2014-08-27 11:42:17 +0000
  • 37579836e3 * kernel32.cc (CreateFileMappingW): Fix default standard rights for file mappings from READ_CONTROL to STANDARD_RIGHTS_REQUIRED to allow changing the DACL (fixes "access denied" error in pinfo::set_acl). Corinna Vinschen 2014-08-27 10:44:50 +0000
  • db1ff3b932 * ntea.cc (read_ea): Change left-over return to __leave. Fix condition to close handle. Call NtClose rather than CloseHandle. (write_ea): Fix condition to close handle. Call NtClose rather than CloseHandle. * security.cc (get_file_sd): Call pc.init_reopen_attr if a valid incoming handle was given, pc.get_object_attr otherwise. (set_file_sd): Ditto. Corinna Vinschen 2014-08-27 09:39:44 +0000
  • dc847e6b9e * path.h (path_conv::init_reopen_attr): Change from void to returning POBJECT_ATTRIBUTES. Take OBJECT_ATTRIBUTES reference as argument, not pointer. * fhandler_disk_file.cc: Throughout accommodate above change. * syscalls.cc: Ditto. * ntea.cc (read_ea): Don't set hdl to NULL if it's already NULL. Set attr with pc.init_reopen_attr before trying to reopen file. (write_ea): Ditto. * security.cc (get_file_sd): Use pc.init_reopen_attr rather than pc.get_object_attr when trying to reopen file. (set_file_sd): Ditto. Corinna Vinschen 2014-08-26 20:47:46 +0000
  • 12b244394c * cygtls.cc (san::leave/x86_64): Implement. * cygtls.h (class tls_pathbuf): Move counter variables into a union. Add 64 bit element _counters covering both counter variables to optimize save and restore operations. (class san/x86_64): Only store single 64 bit value. (san::san/x86_64): Implement. (san::leave/x86_64): Only declare here, as returns_twice function. Explain why. (class san/i686): Change type of _c_cnt and _w_cnt to uint32_t. (__try/x86_64): Move definition of __sebastian after the first memory barrier. Drop __sebastian.setup call. Corinna Vinschen 2014-08-25 19:47:44 +0000
  • 5578cc4b73 * cygtls.cc (_cygtls::remove): Revert previous patch. * cygtls.h (struct _local_storage): Move pathbufs back here. (class san/x86_64): Revert class. Save and restore pathbufs counters only. (class san/i686): Revert saving and restoring pathbufs counters. (__try/x86_64): Add a san variable and call it's setup method. (__except/x86_64): Call san::leave to restore pathbufs counters. * gendef (_sigbe): Revert previous change. * thread.cc (verifyable_object_state): Remove gcc 4.7 workaround in forward declaration as well. * tls_pbuf.cc (tls_pbuf): Revert previous change. * tls_pbuf.h (class tmp_pathbuf): Accommodate reverting pathbufs to locals structure. * tlsoffsets.h: Regenerate. * tlsoffsets64.h: Regenerate. Corinna Vinschen 2014-08-25 14:53:49 +0000
  • 3f3bd10104 * Throughout, use __try/__except/__endtry blocks, rather than myfault handler. * cygtls.cc (_cygtls::remove): Accommodate the fact that pathbufs has been moved from _local_storage to _cygtls. * cygtls.h (class tls_pathbuf): Add comment to hint to gendef usage of counters. Change type of counters to uint32_t for clarity. Remove _cygtls as friend class. (struct _local_storage): Move pathbufs from here... (struct _cygtls): ...to here, allowing to access it from _sigbe. (class san): Only define on 32 bit. Remove errno, _c_cnt and _w_cnt members. (san::setup): Drop parameter. Don't initialize removed members. (san::leave): Don't set removed members. (class myfault): Only define on 32 bit. (myfault::faulted): Only keep implementation not taking any parameter. Drop argument in call to sebastian.setup. (__try/__leave/__except/__endtry): Implement to support real SEH. For now stick to SJLJ on 32 bit. * dcrt0.cc (dll_crt0_0): Drop 64 bit call to exception::install_myfault_handler. * exception.h (exception_handler): Define with EXCEPTION_DISPOSITION as return type. (PDISPATCHER_CONTEXT): Define as void * on 32 bit. Define as pointer to _DISPATCHER_CONTEXT on 64 bit. (class exception): Define separately for 32 and 64 bit. (exception::myfault): Add handler for myfault SEH handling on 64 bit. (exception::exception): Fix mangled method name to account for change in type of last parameter. (exception::install_myfault_handler): Remove. * exceptions.cc (exception::myfault_handle): Remove. (exception::myfault): New SEH handler for 64 bit. * gendef (_sigbe): Set tls_pathbuf counters to 0 explicitely when returning to the caller. * ntdll.h: Move a comment to a better place. (struct _SCOPE_TABLE): Define on 64 bit. * thread.cc (verifyable_object_isvalid): Remove gcc 4.7 workaround. * tls_pbuf.cc (tls_pbuf): Fix to accommodate new place of pathbufs. (tls_pathbuf::destroy): Change type of loop variables to uint32_t. * tls_pbuf.h (class tmp_pathbuf): Change type of buffer counters to uint32_t. Accommodate new place of pathbufs. * tlsoffsets.h: Regenerate. * tlsoffsets64.h: Regenerate. Corinna Vinschen 2014-08-22 09:21:33 +0000
  • 33ed7bb5bc * miscfuncs.cc (__import_address): Cover the first dereference to imp under the fault handler. Corinna Vinschen 2014-08-21 09:04:09 +0000
  • b1f81c3b71 * net.cc (if_freenameindex): Don't catch a SEGV from free to fail loudly on double free. Corinna Vinschen 2014-08-21 08:59:28 +0000