Christopher Faylor
6a375e0325
* spawn.cc (child_info_spawn::worker): Save and restore my_wr_proc_pipe around
...
non-execing operations to avoid handle leak seen in
http://cygwin.com/ml/cygwin/2013-03/msg00152.html .
2013-03-09 00:11:31 +00:00
Corinna Vinschen
8981489bec
* include/sys/un.h (UNIX_PATH_MAX): Rename from UNIX_PATH_LEN to
...
follow Linux.
* fhandler_socket.cc: Change UNIX_PATH_LEN to UNIX_PATH_MAX throughout.
(fhandler_socket::recv_internal): Don't return prematurely in case of
successful return. For AF_LOCAL sockets, overwrite returned AF_INET
name with AF_LOCAL name.
2013-03-07 15:39:35 +00:00
Corinna Vinschen
b5545a7b7e
* fhandler_socket.cc (fhandler_socket::bind): Fix check for AF_LOCAL
...
filename length to allow non-NUL terminated strings within namelen
bytes. Copy over sun_path to local array sun_path to have a
NUL-terminated string for subsequent function calls. Move path_conv
check before OS bind call to not bind the socket before being sure
the file doesn't exist. Add and fix comments.
2013-03-07 11:04:28 +00:00
Corinna Vinschen
bd142b93ae
* mount.cc (fs_names): Add trailing NULL element to avoid potential
...
SEGV in format_proc_filesystems.
2013-03-06 14:10:23 +00:00
Christopher Faylor
4afefdec51
Remove now-inappropriate comment.
2013-03-01 16:28:09 +00:00
Christopher Faylor
f77f82bba5
fix latest changelog description
2013-03-01 15:55:39 +00:00
Christopher Faylor
aad4a3c932
* exceptions.cc (exception::handle): Eliminate buggy recursed value and just
...
check if we're exiting.
2013-03-01 15:48:14 +00:00
Corinna Vinschen
1ef8ce71a8
* include/pthread.h (pthread_atfork): Add missing declaration.
2013-02-26 10:32:36 +00:00
Yaakov Selkowitz
7b3739f2ae
* include/error.h (error_message_count): Declare as dllimport.
...
(error_one_per_line): Ditto.
(error_print_progname): Ditto.
2013-02-21 03:15:47 +00:00
Corinna Vinschen
064e3a9115
* child_info.h (CURR_CHILD_INFO_MAGIC): Update.
...
(class child_info_fork): Drop extraneous semicolon.
2013-02-08 20:15:05 +00:00
Corinna Vinschen
cf4acdbc1f
* fhandler_socket.cc (fhandler_socket::bind): Fix error code for
...
empty filename.
2013-02-04 12:21:56 +00:00
Corinna Vinschen
188fc1cf6e
* fhandler_socket.cc (fhandler_socket::bind): Fix length check of
...
AF_LOCAL filename so it never accesses memory beyond namelen. Also
make sure filename is NUL-terminated.
2013-02-04 12:04:20 +00:00
Christopher Faylor
118e51be1d
* DevNotes: Add entry cgf-000022.
...
* cygtls.h (_cygtls::func): Define as a sa_sigaction style function.
* exceptions.cc (sig_handle_tty_stop): Ditto.
(_cygtls::interrupt_setup): Fix coercion to accommodate 'func' change.
(ctrl_c_handler): Use tty kill_pgrp to send a signal.
(sigpacket::process): Don't process sigflush here.
(_cygtls::call_signal_handler): Reorganize to avoid a race. Always call
sa_sigaction style function.
* fhandler_termios.cc (is_flush_sig): Define new function.
(tty_min::kill_pgrp): Handle tty flush when signal detected.
(fhandler_termios::bg_check): Be slightly more paranoid about checking for
valid tty.
(fhandler_termios::sigflush): Don't flush unless tty owner.
* fhandler_tty.cc (fhandler_pty_slave::ioctl): Use tty kill_pgrp to send
signal.
(fhandler_pty_master::ioctl): Ditto.
* signal.cc (killsys): Delete definition.
* sigproc.h (killsys): Delete declaration.
* include/cygwin/signal.h (siginfo_t): Simplify union/struct nesting slightly.
Implement mechanism to allow cygwin data passing.
2013-01-31 05:26:47 +00:00
Christopher Faylor
a69e27906f
* miscfuncs.cc (__import_address): Check if malloc field points directly at
...
'malloc'.
2013-01-23 14:24:34 +00:00
Christopher Faylor
0e8c8b0093
* miscfuncs.cc (__import_address): On second thought, the chance that this
...
pointer could be NULL is very low so don't bother checking for it.
2013-01-23 14:06:06 +00:00
Christopher Faylor
df37bdc5b7
* exceptions.cc (exception::handle): Make attempt to recursively dump stack
...
fatal.
2013-01-23 05:27:36 +00:00
Christopher Faylor
1fc747f37a
* miscfuncs.cc (__import_address): Avoid NULL explicitly.
2013-01-23 02:06:44 +00:00
Christopher Faylor
9c4478df47
* miscfuncs.cc (__import_address): Avoid treating random instructions as import
...
jump.
* malloc_wrapper.cc (malloc_init): Remove comment about 64-bit.
2013-01-23 02:02:36 +00:00
Christopher Faylor
93ff4bbee0
* dcrt0.cc (dll_crt0_1): Comment assumption.
...
* exceptions.cc (sigpacket::setup_handler): Avoid sending signals during fork
processing.
2013-01-21 17:17:44 +00:00
Christopher Faylor
3b1a8c572f
* dcrt0.cc (dll_crt0_1): Flag that we are working "incyg". Handle any signals
...
(presumably exiting signals) which may have come in while we are in the process
of setting up.
2013-01-21 16:56:09 +00:00
Christopher Faylor
02211f348d
Update copyrights
2013-01-21 16:21:23 +00:00
Christopher Faylor
f5183c2533
* update-copyright: Recognize configure.ac scripts too.
2013-01-21 16:20:23 +00:00
Corinna Vinschen
e6e5ab6936
Use same fix to silence newer gcc as in 64 bit branch
2013-01-21 13:53:03 +00:00
Christopher Faylor
6d34849474
* cygerrno.h (__reg3): Define.
...
* cygmalloc.h (__reg3): Ditto.
2013-01-21 07:42:02 +00:00
Christopher Faylor
a526df1e20
* cygerrno.h: Conditionally define __regN for cygserver.
2013-01-21 07:34:07 +00:00
Christopher Faylor
2033ccdd17
* malloc_wrapper.cc (malloc_init): Re-add inadvertently dropped comment which
...
explains what's going on with the use_internal calculation.
2013-01-21 04:43:48 +00:00
Christopher Faylor
bc837d22f3
Throughout, update copyrights to reflect dates which correspond to main-branch
...
checkins. Regularize copyright format.
2013-01-21 04:38:31 +00:00
Christopher Faylor
6e75c72b89
Throughout, change __attribute__ ((regparm (N))) to just __regN. Throughout,
...
(mainly in fhandler*) start fixing gcc 4.7.2 mismatch between regparm
definitions and declarations.
* gendef: Define some functions to take @ declaration to accommodate _regN
defines which use __stdcall.
* gentls_offsets: Define __regN macros as empty.
* autoload.cc (wsock_init): Remove unneeded regparm attribute.
* winsup.h (__reg1): Define.
(__reg2): Define.
(__reg3): Define.
* advapi32.cc (DuplicateTokenEx): Coerce some initializers to avoid warnings
from gcc 4.7.2.
* exceptions.cc (status_info): Declare struct to use NTSTATUS.
(cygwin_exception::dump_exception): Coerce e->ExceptionCode to NTSTATUS.
* fhandler_clipboard.cc (cygnativeformat): Redefine as UINT to avoid gcc 4.7.2
warnings.
(fhandler_dev_clipboard::read): Ditto.
2013-01-21 04:34:52 +00:00
Christopher Faylor
d89e61f354
* update-copyright (update_maybe): Accommodate perl-style copyright comments.
2013-01-21 04:30:27 +00:00
Christopher Faylor
eb0876b22f
* update-copyright: Silently skip nonexistent files. Display filename on
...
update. Don't update non-Red Hat copyrights.
2013-01-21 03:55:55 +00:00
Christopher Faylor
0413f0bd40
* update-copyright: Update standard copyright information based on cvs log and
...
current sandbox status.
2013-01-20 23:56:26 +00:00
Christopher Faylor
4713b1b294
* malloc_wrapper.cc: Change 'use_internal_malloc' to 'use_internal' throughout.
...
(export_malloc_called): Delete.
(internal_malloc_determined): New variable.
(malloc_init): Control calculation of internal/external malloc based on
'internal_malloc_determined'. Use import_address() to determine if malloc in
user_data is ours or not.
* miscfuncs.cc (thread_wrapper): Make static.
(__import_address): Define new function.
* miscfuncs.h (import_address): New define.
(__import_address): Declare new function.
2013-01-20 22:59:58 +00:00
Christopher Faylor
1471537a8f
* sigproc.cc (sig_dispatch_pending): Add correct regparm attributes to match
...
declaration.
(pid_exists): Ditto.
(proc_subproc): Ditto.
(sig_clear): Ditto.
(sig_send): Ditto.
(checkstate): Ditto.
2013-01-20 06:34:59 +00:00
Corinna Vinschen
a32a9a87a1
* syscalls.cc (rename): Remove ill-conceived NFS workaround from
...
2013-01-10 for self-inflicted NFS server problem.
2013-01-19 14:54:18 +00:00
Christopher Faylor
d5c977948b
* exceptions.cc (ctrl_c_handler): Remove special-case handler for
...
"cygwin_finished_initializing".
* sigproc.cc (exit_thread): Undefine ExitThread earlier to avoid recursion on
error return.
2013-01-19 05:57:06 +00:00
Corinna Vinschen
5d858e49eb
* errno.cc (errmap): Map ERROR_LOCK_VIOLATION to EBUSY.
2013-01-18 16:09:51 +00:00
Corinna Vinschen
b31aa3904c
* mmap.cc (handler_disk_file::msync): Add call to FlushFileBuffers
...
to implement MS_SYNC.
2013-01-18 09:35:05 +00:00
Christopher Faylor
c5eb7a4971
* mmap.cc (handler_disk_file::msync): Retry up to 99 times if FlushViewOFile
...
fails with ERROR_LOCK_VIOLATION.
2013-01-18 00:28:21 +00:00
Christopher Faylor
211dd84b83
* sigproc.cc (no_signals_available): Finally remove this macro entirely.
...
(exit_thread): Ensure process lock is released on error exit.
(sig_send): Simplify "its_me" test. Remove no_signals_available tests.
2013-01-16 23:04:28 +00:00
Christopher Faylor
b01065f174
* pthread.cc (pthread_exit): Add kludge to accommodate noreturn attribute.
2013-01-16 19:20:59 +00:00
Christopher Faylor
18905f5551
fix typo
2013-01-14 22:24:36 +00:00
Christopher Faylor
b8540dae6c
* include/pthread.h (pthread_exit): Mark as "noreturn".
2013-01-14 21:17:37 +00:00
Christopher Faylor
656a20cbd1
fix typo
2013-01-14 18:10:28 +00:00
Corinna Vinschen
c136ca2a93
Fix copyrights
2013-01-14 17:16:02 +00:00
Christopher Faylor
930eacff8b
update with my changes
2013-01-14 16:32:51 +00:00
Corinna Vinschen
d39e9d1596
*** empty log message ***
2013-01-14 13:23:55 +00:00
Christopher Faylor
b712b4408a
* exceptions.cc (signal_exit): Move captive process termintation...
...
(_cygtls::interrupt_setup): ...into here.
(sigpacket::process): Simplify setting of handler when have_execed.
(_cygtls::interrupt_setup): Don't call proc_subproc when we've execed.
* globals.cc (exit_states): Delete unneeded ES_EXEC_EXIT.
* pinfo.cc (pinfo::exit): Change debugging output. Call proc_terminate rather
than the now-obsolete sigproc_terminate. Don't set exit_state to ES_EXEC_EXIT.
Set exit_state to ES_FINAL later.
* sigproc.cc (sigproc_terminate): Delete function.
(wait_sig): Don't call proc_subproc if have_execed.
* sigproc.h (sigproc_terminate): Delete declaration.
* sync.h (lock_process::lock_process): Don't set exit_state to
ES_PROCESS_LOCKED.
(lock_process::operator LONG): Define.
2013-01-14 06:03:59 +00:00
Christopher Faylor
2f47bbd555
* DevNotes: Add entry cgf-000021.
...
* select.cc (select): Unconditionally return when a signal is detected.
(select_stuff::wait): Ditto.
2013-01-11 15:36:40 +00:00
Corinna Vinschen
7142197465
* syscalls.cc (rename): Drop handling paths > 32757 chars, emit EINVAL
...
instead, thus simplifying code allocating and filling pfri. Drop size
and use constant expression in NtSetInformationFile call. Add comments.
Drop redundant test for fs_serial_number and change comment accordingly.
2013-01-11 12:34:41 +00:00
Corinna Vinschen
09707415eb
* fhandler.h (class dev_console): Flag for expanded control sequence.
...
* fhandler_console.cc (char_command): Supporting cursor style modes.
2013-01-11 11:04:50 +00:00