Corinna Vinschen
0b8722c2db
* path.cc (normalize_posix_path): Fix long-standing problem which
...
allows to access files via ".." using an invalid POSIX path.
2013-06-12 17:45:42 +00:00
Corinna Vinschen
8b7f83e68f
*** empty log message ***
2013-06-06 15:31:15 +00:00
Corinna Vinschen
0ec4e9966a
*** empty log message ***
2013-06-05 07:21:56 +00:00
Corinna Vinschen
edd73646f3
* fhandler.cc (fhandler_base::lock): Move to flock.cc.
...
(fhandler_base::fixup_after_exec): Reset mandatory_locking.
* fhandler.h (class fhandler_base): Add mandatory_locking status flag.
Add mandatory_locking accessor methods. Accommodate change throughout.
(fhandler_base::mand_lock): Declare.
(class fhandler_disk_file): Drop in favor of new status flag.
* (fhandler_disk_file::fcntl): Call need_fork_fixup if mandatory_locking
flag gets set.
* flock.cc (fhandler_base::lock): Define here.
(flock): Handle mandatory_locking.
(lockf): Ditto.
(fhandler_base::mand_lock): Define.
2013-06-04 10:24:43 +00:00
Corinna Vinschen
86c126b6e3
*** empty log message ***
2013-06-03 10:40:41 +00:00
Corinna Vinschen
a24ad2c346
* autoload.cc (CancelSynchronousIo): Define.
...
* fcntl.cc (fcntl64): Drop handling of locking commands.
* fhandler.h (class fhandler_disk_file): Add mandatory_locking.
(fhandler_disk_file::fcntl): Declare.
(fhandler_disk_file::mand_lock): Declare.
* fhandler_disk_file.cc (fhandler_disk_file::fhandler_disk_file):
Initialize mandatory_locking.
(fhandler_disk_file::fcntl): New method. Handle F_LCK_MANDATORY and
locking commands.
(fhandler_disk_file::dup): Duplicate mandatory_locking. Fix a bug
when duplicating prw_handle failed.
(fhandler_disk_file::fixup_after_fork): Reset mandatory_locking.
* flock.cc (fhandler_disk_file::lock): Add comment.
(struct lock_parms): New struct to pass parameters to blocking_lock_thr
thread function.
(blocking_lock_thr): New thread function.
(fhandler_disk_file::mand_lock): New methof implementing mandatory
locking with Windows semantics.
* ntdll.h (NtLockFile): Declare.
(NtUnlockFile): Declare.
* include/fcntl.h: Fix a comment.
(F_LCK_MANDATORY): Define. Add lengthy comment to explain.
2013-06-02 10:22:14 +00:00
Corinna Vinschen
697ce3c45f
*** empty log message ***
2013-05-31 08:41:39 +00:00
Corinna Vinschen
b09e6ec935
* fhandler_procsys.cc (fhandler_procsys::read): Just call
...
fhandler_base::raw_read from here. Drop comment.
(fhandler_procsys::write): Drop comment.
2013-05-28 15:07:01 +00:00
Corinna Vinschen
0dd70ae521
*** empty log message ***
2013-05-27 19:41:54 +00:00
Corinna Vinschen
7e925d9ac1
*** empty log message ***
2013-05-25 09:00:43 +00:00
Corinna Vinschen
61fb9713c6
* fork.cc (frok::parent): Call CreateProcessW with command line set
...
to the parent command line. Change comment to explain why.
2013-05-23 20:47:45 +00:00
Corinna Vinschen
291d93b58b
* Makefile.in (DLL_OFILES): Add arc4random.o.
...
* common.din: Export arc4random, arc4random_addrandom, arc4random_buf,
arc4random_stir and arc4random_uniform.
* mktemp.cc (arc4random): Remove static replacement function.
* posix.sgml (std-bsd): Add arc4random functions.
* include/cygwin/stdlib.h: Declare arc4random functions.
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
* libc/arc4random.cc: New file implementing arc4random functions taken
from FreeBSD.
2013-05-21 19:04:49 +00:00
Corinna Vinschen
ccd40e46d7
* grp.cc (get_groups): Convert to void function.
...
(initgroups32): Accommodate the aforementioned change.
(getgrouplist): Ditto.
2013-05-14 09:07:30 +00:00
Corinna Vinschen
151f737ab0
* fcntl.cc (fcntl): Define as export alias for fcntl64 on x86_64.
2013-04-26 18:20:17 +00:00
Corinna Vinschen
39bf1f15e7
*** empty log message ***
2013-04-23 14:58:20 +00:00
Christopher Faylor
bbd4e05a4d
.
2013-04-01 11:04:41 +00:00
Christopher Faylor
bb93b7ab95
* pinfo.h (pinfo::status_exit): Rename from former static function in pinfo.cc.
...
(pinfo::operator == (char *)): Remove unused operator.
* pinfo.cc (pinfo::status_exit): Move this function info pinfo class. Use
progname from the pinfo rather than myself. Be defensive when inspecting
procinfo.
2013-03-29 16:19:11 +00:00
Christopher Faylor
744f64fded
test checkin
2013-03-19 16:41:42 +00:00
Christopher Faylor
41090b6193
add news
2013-03-09 21:58:54 +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
Corinna Vinschen
6d17453774
*** empty log message ***
2012-12-14 10:52:34 +00:00
Corinna Vinschen
71c13b9633
*** empty log message ***
2012-10-16 12:02:42 +00:00
Corinna Vinschen
5f5820ec9a
*** empty log message ***
2012-10-16 11:59:59 +00:00
Christopher Faylor
2c9cefa586
* fhandler_tty.cc (fhandler_pty_slave::write): Fix potential exit from loop
...
with write mutex held. Delete redundant mutex release. Clear tty error once
we've grabbed it.
2012-10-15 17:12:17 +00:00
Christopher Faylor
25e5803d35
* cygthread.cc (cygthread::stub): Remove old, unnecessary, FIXMEd code.
...
* spawn.cc (child_info_spawn::worker): Avoid calling close_all_files() twice.
2012-09-14 03:32:52 +00:00
Christopher Faylor
52d2371da5
* DevNotes: Add entry cgf-000014.
...
* cygheap.cc (tls_sentry): Move here, rename from 'sentry' in cygtls.cc
(tls_sentry::lock): Ditto.
(nthreads): Move from cygtls.cc
(THREADLIST_CHUNK): Ditto.
(cygheap_init): Call init_tls_list().
(init_cygheap::init_tls_list): Define new function.
(init_cygheap::add_tls): Ditto.
(init_cygheap::remove_tls): Ditto.
(init_cygheap::find_tls): Ditto. Semi-resurrect from _cygtls::find_tls.
* cygheap.h (init_cygheap::init_tls_list): Declare new function.
(init_cygheap::add_tls): Ditto.
(init_cygheap::remove_tls): Ditto.
(init_cygheap::find_tls): Ditto.
* cygtls.cc (sentry): Delete.
(sentry::lock): Ditto.
(nthreads): Ditto.
(THREADLIST_CHUNK): Ditto.
(_cygtls::init): Delete definition.
(_cygtls::init_thread): Call cygheap->add_tls() to add thread to global list.
(_cygtls::remove): cygheap->remove_tls() to remove thread from global list.
* cygtls.h (_cygtls::init): Delete declaration.
* dcrt0.cc (dll_crt0_0): Delete call to _cygtls::init().
* exceptions.cc (sigpacket::process): When no thread is specified, try to find
one via cygheap->find_tls.
2012-08-09 19:58:53 +00:00
Corinna Vinschen
b875960da7
*** empty log message ***
2012-08-06 09:09:18 +00:00
Christopher Faylor
fedd27a0af
Add
2012-08-06 03:42:07 +00:00
Corinna Vinschen
7cad0dc664
*** empty log message ***
2012-07-19 09:43:56 +00:00
Corinna Vinschen
010f7350ba
* cygwin.din (getmntent_r): Export.
...
* mount.cc (getmntent_r): New function.
* posix.sgml (std-gnu): Add getmntent_r.
* include/mntent.h (getmntent_r): Declare.
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
2012-07-18 11:17:25 +00:00
Corinna Vinschen
ba9846ad9b
*** empty log message ***
2012-06-03 16:47:57 +00:00
Christopher Faylor
45b61a88be
* DevNotes: Add entry cgf-000010.
...
* select.cc (set_handle_or_return_if_not_open): Remove unneeded final backslash
from definition.
(cygwin_select): Reorganize to incorporate outer retry loop. Move remaining
time recalculation here for retry case. Use select_stuff::wait_states for loop
control.
(select_stuff::cleanup): Avoid unneeded initialization.
(select_stuff::wait): Modify definition to return select_stuff::wait_states.
Eliminate is_cancelable. Don't element 1 of an array if it is a cancel handle.
Remove loop. Rely on being called from enclosing loop in cygwin_select.
Remove time recalculation when restarting. Try harder to always return from
the bottom.
* select.h (select_stuff::wait_state): New enum.
(select_stuff::wait): Modify declaration to return select_stuff::wait_states.
2012-06-03 02:59:20 +00:00
Corinna Vinschen
428aba22a9
*** empty log message ***
2012-05-21 16:01:31 +00:00
Christopher Faylor
bd8afa5eb1
* DevNotes: Add entry cgf-000008.
...
* fhandler_tty.cc (bytes_available): Simplify by returning the number of bytes
available in the message unless that is zero.
2012-05-16 01:56:41 +00:00
Christopher Faylor
3de7be4c1d
* DevNotes: Add entry cgf-000007.
...
* child_info.h (child_info_spawn::parent_winpid): Declare new field.
(child_info_spawn::get_parent_handle): Declare new function.
* dcrt0.cc (child_info_spawn::get_parent_handle): Define new function.
(child_info_spawn::handle_spawn): Recreate parent handle if possible when
dynamically loaded. Don't mess with parent handle if it's NULL.
* spawn.cc (child_info_spawn::worker): Set parent_winpid appropriately.
2012-05-14 22:42:56 +00:00
Christopher Faylor
1f99484812
* DevNotes: Add entry cgf-000006.
...
* thread.cc (pthread::pop_cleanup_handler): Set cancel state to disabled to
avoid recursively waiting for cancel.
2012-05-12 20:26:43 +00:00
Christopher Faylor
348b56b5a3
* DevNotes: Add entry cgf-000005.
...
* fhandler.h (PIPE_ADD_PID): Redefine to something we actually DON'T use.
* pipe.cc (fhandler_pipe::create): Avoid clearing all open_mode bits when
checking for PIPE_ADD_PID. Properly keep track of len so that passed in name
is not overwritten.
2012-05-12 19:17:17 +00:00
Corinna Vinschen
2ef123fccc
*** empty log message ***
2012-05-10 08:37:56 +00:00
Christopher Faylor
06bd0ef2ab
* DevNotes: Add entry cgf-000003.
...
* cygheap.h (init_cygheap::pid_handle): Delete.
* dcrt0.cc (child_info_spawn::handle_spawn): Keep parent open if we have
execed.
* pinfo.cc (pinfo::thisproc): Remove pid_handle manipulations.
(pinfo::init): Don't consider a reaped process to be available.
* spawn.cc (child_info_spawn::worker): Remove pid_handle manipulations. Make
wr_proc_pipe and parent noninheritable when starting a program which doesn't
use the Cygwin DLL. Conditionally reset wr_proc_pipe to inheritable if
CreateProcess fails. Inject wr_proc_pipe handle into non-Cygwin process.
Consider a non-cygwin process to be 'synced'.
2012-05-07 15:05:56 +00:00
Corinna Vinschen
d6d8002e43
*** empty log message ***
2012-05-06 08:13:58 +00:00
Corinna Vinschen
070a2dd5dd
*** empty log message ***
2012-04-25 07:33:03 +00:00
Corinna Vinschen
503a59c70b
*** empty log message ***
2012-04-24 14:31:35 +00:00
Christopher Faylor
f76ca72740
add in preparation for release
2012-04-23 15:18:54 +00:00
Christopher Faylor
82405d4448
Add typeahead description.
2012-04-05 14:23:06 +00:00
Corinna Vinschen
ba17d0ed88
*** empty log message ***
2012-04-05 13:39:59 +00:00
Corinna Vinschen
4ceddd6276
*** empty log message ***
2012-03-30 13:27:38 +00:00
Corinna Vinschen
8a92f14092
* posix.sgml (std-notes): Change description of flock restrictions.
2012-03-30 11:29:57 +00:00
Corinna Vinschen
6e4ac6e81c
*** empty log message ***
2012-03-29 18:24:45 +00:00
Corinna Vinschen
5ffd5f300f
*** empty log message ***
2012-02-25 10:48:35 +00:00