summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* * dlfcn.cc (gfpod_helper): Helper function to search DLL usingCorinna Vinschen2011-09-012-6/+53
| | | | | | a given DLL name. Change default search path to allow /usr/bin. (get_full_path_of_dll): Find DLLs even if the caller used a ".so" suffix or a "lib" prefix for the DLL.
* * flock.cc (inode_t::unlock_and_remove_if_unused): Rename fromCorinna Vinschen2011-08-312-6/+11
| | | | unlock_and_remove.
* * flock.cc (LOCK_OBJ_NAME_LEN): Change to accommodate extra lf_verCorinna Vinschen2011-08-292-136/+152
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | field. (class lockf_t): Add lf_ver field. (lockf_t::lockf_t): Initialize lf_ver to 0. (class inode_t): Change i_wait to i_cnt. Change comment to explain change in usage. (inode_t:use): Rename from wait. Make private. (inode_t::unuse): Rename from unwait. Make private. (inode_t::inuse): Rename from waiting. Make private. (inode_t::notused): New public method to set use count to 0. (inode_t::unlock_and_remove): New method to unlock node and to delete it if it's unused in current process. (fhandler_base::del_my_locks): Drop global list lock. Drop variable no_locks_left. Simpify unlocking and removing node by just calling unlock_and_remove. (fixup_lockf_after_exec): Call notused method for each node. (inode_t::get): Call use method. Lock node only if outside of list lock. (inode_t::get_all_locks_list): Accommodate additional lf_ver field when creating lockf_t structure from object name. (lockf_t::create_lock_obj_attr): Accommodate additional lf_ver field when creating object name from lockf_t structure. Handle STATUS_OBJECT_NAME_COLLISION gracefully in F_POSIX case as well. Change comment accordingly. Increment lf_ver field rather than high byte of lf_wid field. Simplify comment. (fhandler_disk_file::lock): Always call unlock_and_remove rather than just UNLOCK on node. (lf_setlock): Move ret definition where it's used. Drop unneeded tests for obj being not NULL. Only check for deadlock condition if the lock we're trying to establish is a POSIX lock. Revamp object collecting and wait code to cover all cases. Don't return with EDEADLK if blocking process can't be opened for synchronization in F_POSIX case, rather just wait like in F_FLOCK case. Change system_printf to debug_printf in that case. Only run WaitForMultipleObjects with high priority. Close obj and process handles prior to locking node.
* Don't expose implementation detail for opaque DIRENT structures.Keith Marshall2011-08-273-53/+69
|
* * fhandler.cc (fhandler_base::open): Fix typo in comment.Corinna Vinschen2011-08-275-98/+165
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (fhandler_base::close): Move call to del_my_locks from here... * fhandler_disk_file.cc (fhandler_disk_file::open): ...to here. * flock.cc (struct lockfattr_t): New type. (lockf_t::close_lock_obj): New method, use throughout. (lockf_t::create_lock_obj_attr): New method. (lockf_t::create_lock_obj): Use create_lock_obj_attr method. Handle STATUS_OBJECT_NAME_COLLISION in F_FLOCK case gracefully. Add lengthy comments to explain why and how. (lockf_t::open_lock_obj): Use create_lock_obj_attr method. (lockf_t::del_lock_obj): Call NtSetEvent rather than SetEvent for symmetry. (fhandler_disk_file::lock): Define n only where it's used. Call need_fork_fixup only if call was successful. Handle EINTR and ECANCELED return values from lf_setlock. (lf_setlock): Drop WAIT_UNLOCKED and WAIT_PROC_EXITED. Don't wait for event object handle count to become <= 1 in F_LOCK case. Simplify WFMO return value handling. Don't handle signal and cancel events here; just return with appropriate error code instead. (lf_getblock): Ignore locks for which the handle can't be opened. Use IsEventSignalled. * ntdll.h (STATUS_INVALID_INFO_CLASS): Undef if defined elsewhere to make sure the definition is casted to NTSTATUS. (STATUS_INVALID_HANDLE): Define and ditto. (STATUS_OBJECT_NAME_COLLISION): Define. (NtSetEvent): Declare.
* * libc/time/mktm_r.c (_mktm_r): Fix previous fix.Corinna Vinschen2011-08-262-2/+5
|
* * cygthread.cc (cygthread::simplestub): Notify that the thread has detachedChristopher Faylor2011-08-252-0/+9
| | | | also in freerange thread case.
* * fhandler.cc (fhandler_base::open): Never open files withCorinna Vinschen2011-08-252-12/+37
| | | | | | FILE_OVERWITE/FILE_OVERWRITE_IF. Set file size to 0 explicitely if regular, existing file has been opened for writing with O_TRUNC flag set. Explain why.
* * thread.cc (pthread::pthread): Drop setting parent_tls. CallCorinna Vinschen2011-08-243-3/+12
| | | | | | | | sigprocmask to copy parent thread signal mask into new parent_sigmask member. (pthread::thread_init_wrapper): Copy _my_tls.sigmask from new parent_sigmask member. * thread.h (class pthread): Drop parent_tls. Add parent_sigmask.
* * thread.cc (pthread::exit): Create dummy tls structure to hold _main_tlsChristopher Faylor2011-08-242-1/+15
| | | | contents if we've asked _main_tls to exit.
* * libc/time/mktm_r.c (_mktm_r): Fix computing tm_year.Corinna Vinschen2011-08-242-1/+5
|
* 2011-08-23 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>Chris Sutcliffe2011-08-232-2/+6
| | | | * include/_mingw.h: Increment version to 3.20.
* 2011-08-23 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>Chris Sutcliffe2011-08-233-41/+16
| | | | | * tlsmthread.c: Update to reflect changes in tlssup.c. * tlssup.c: code clean-up.
* * poll.cc (poll): Don't return prematurely if invalid fds have beenCorinna Vinschen2011-08-232-7/+24
| | | | | encountered. Enforce timeout set to 0 in case of invalid fds. Take number of invalid fds into account when returning.
* * fhandler_socket.cc (fhandler_socket::send_internal): Fix settingCorinna Vinschen2011-08-232-2/+9
| | | | | nosignal flag. Convert ECONNABORTED on connection-oriented socket to EPIPE, too.
* 2011-08-23 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-08-233-2/+7
| | | | | * libc/stdlib/putenv_r.c: Use "strchr" instead of obsolete "index". * libc/stdlib/setenv_r.c: Use "memcpy" instead of obsolete "bcopy".
* 2011-08-23 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-08-239-12/+21
| | | | | | | * libc/misc/ffs.c, libc/string/bcmp.c, libc/string/bcopy.c, libc/string/bzero.c, libc/string/index.c, libc/string/rindex.c, libc/string/strcasecmp.c, libc/string/strncasecmp.c: Let synopsis reference "#include <strings.h>".
* 2011-08-23 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-08-234-0/+14
| | | | | | | * libc/posix/regexec.c: Define "nope" only #ifndef NDEBUG. * libc/stdio/vfscanf.c: Define "state" only #ifdef _MB_CAPABLE. * libc/string/wcwidth.c: Include <wctypes.h> for "iswprint" and "iswcntrl".
* 2011-08-23 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-08-232-0/+11
| | | | | * libc/sys/rtems/include/limits.h: Compute SSIZE_MAX based on __SIZE_MAX__, __SIZEOF_SIZE_T__ and __CHAR_BIT__.
* * picflag.m4: New file.Rainer Orth2011-08-222-0/+99
|
* 2011-08-22 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-08-227-4/+19
| | | | | | | | | | | | | * libc/string/index.c: Include <strings.h> for "index". * libc/string/rindex.c: Include <strings.h> for "rindex". * libc/string/strcasecmp.c: Include <strings.h> for "strcasecmp". Don't include <string.h>. * libc/string/strncasecmp.c: Include <strings.h> for "strncasecmp". Don't include <string.h>. * libc/string/bzero.c: Include <strings.h> for "bzero". Don't include <string.h> * libc/misc/ffs.c: Include <strings.h> for "ffs". Don't include <_ansi.h>.
* * Makefile.in: Check for header file existence when building dumper.exe too.Christopher Faylor2011-08-212-3/+10
|
* * dtable.cc (conv_start_chars): Remove unneeded section attribute.Christopher Faylor2011-08-212-2/+5
|
* * include/paths.h (_PATH_MAILDIR): Define.Yaakov Selkowitz2011-08-212-0/+7
| | | | (_PATH_SHELLS): Define.
* * fhandler_process.cc (format_process_maps): Define page protectionCorinna Vinschen2011-08-202-6/+15
| | | | | shortcuts RO, X, and WC. Use in creating access flag string. Don't set type flag to 's' for copy-on-write pages, as on Linux.
* 2011-08-19 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-08-202-95/+72
| | | | | | | | * libc/sys/rtems/crt0.c: Rework RTEMS_STUB macro. Include <unistd.h>. Remove C++-style comments. Remove hppa, a29k. Add clock_gettime, gettimeofday, sched_yield.
* 2011-08-20 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>Chris Sutcliffe2011-08-202-2/+6
| | | | * include/_mingw.h: Increment version to 3.19.
* 2011-08-19 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>Chris Sutcliffe2011-08-202-1/+8
| | | | | | * include/float.h: Modify guard to accomodate CLang. Thanks to Ruben Van Boxem for the report.
* 2011-08-19 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>Chris Sutcliffe2011-08-202-34/+4
| | | | * tlssup.c: Remove mingwm10.dll fallback.
* 2011-08-19 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>Chris Sutcliffe2011-08-202-1/+7
| | | | | | * include/sys/types.h (ssize_t): Defined as int as opposed to long. Thanks to bvassche for the report.
* * new-features.sgml (ov-new1.7.10): Document /proc/devicesYaakov Selkowitz2011-08-192-0/+10
| | | | and /proc/misc.
* * devices.h (fh_devices): Define DEV_MISC_MAJOR, DEV_MEM_MAJOR,Yaakov Selkowitz2011-08-193-12/+90
| | | | | | | | DEV_SOUND_MAJOR. Use throughout. * fhandler_proc.cc (proc_tab): Add /proc/devices and /proc/misc virtual files. (format_proc_devices): New function. (format_proc_misc): New function.
* * dtable.cc: Mark some const variables as static.Christopher Faylor2011-08-194-18/+65
| | | | | | | | | | * environ.cc (conv_start_chars): Move to shared cygwin region and initialize at compile time. (match_first_char): New generic function for querying conv_start_chars. (posify_maybe): Rename from posify. (environ_init): Remove conv_envvars initialization. Don't check conv_start_chars, just allow posify_maybe to make the decision. * fhandler_console.cc (__vt100_conv): Fix formatting. Mark as const.
* 2011-08-19 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-08-197-0/+21
| | | | | | | | | * libc/stdio/vasiprintf.c: Include "local.h" for "_svfiprintf_r". * libc/stdio/vasprintf.c Include "local.h" for "_svfprintf_r". * libc/stdio/vsiprintf.c: Include "local.h" for "_svfiprintf_r". * libc/stdio/vsniprintf.c: Include "local.h" for "_svfiprintf_r". * libc/stdio/vsnprintf.c: Include "local.h" for "_svfprintf_r" * libc/stdio/vsprintf.c: Include "local.h" for "_svfprintf_r"
* 2011-08-19 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-08-195-0/+11
| | | | | | | * libc/string/bcmp.c: Include <strings.h> for "bcmp". * libc/string/bcopy.c: Include <strings.h> for "bcopy". * libc/string/strcasestr.c: Include <strings.h> for "strncasecmp". * libc/time/strptime.c: Include <strings.h> for "strncasecmp".
* Include the <root>/cpu/ dir in GDB releasesJoel Brobecker2011-08-192-1/+5
| | | | | | | | | | This directory contains some files that are used to generate some of the files included in the GDB release, and thus must be part of the GDB release also. ChangeLog: * src-release (GDB_SUPPORT_DIRS): Add 'cpu'.
* * iq2000/sim.ld (.gcc_except_table): Include .gcc_except_table.fooNick Clifton2011-08-192-1/+6
| | | | sections as well.
* * libc/include/process.h: Remove exec family function declarations.Corinna Vinschen2011-08-193-10/+12
| | | | | Add comment. * libc/include/sys/unistd.h (execlpe): Declare for Cygwin.
* * libc/time/mktime.c (validate_structure): Account for tm_mon possiblyCorinna Vinschen2011-08-192-6/+13
| | | | | being given as negative. (mktime): Set tm_isdst=0 when !daylight.
* * fhandler_console.cc (fhandler_console::read): Recognize backspace keyCorinna Vinschen2011-08-192-1/+7
| | | | | using the device independent key code, rather than the device dependent scan code.
* * include/winuser.h: Ad missing MAPVK_xxx definitions.Corinna Vinschen2011-08-192-0/+10
|
* * sysv_shm.cc (ACCESSPERMS): Remove to fix redefined warning, asYaakov Selkowitz2011-08-192-1/+5
| | | | this is now defined in <sys/stat.h>.
* * dcrt0.cc (dll_crt0_0): Remove unneeded __stdcall decoration.Christopher Faylor2011-08-183-2/+7
| | | | * init.cc: Reflect change to dll_crt0_0 in declaration.
* * dtable.cc (dtable::get_debugger_info): Add missing braces.Corinna Vinschen2011-08-182-7/+14
| | | | (dtable::stdio_init): Fix incorrect negation of not_open(2) condition.
* 2011-08-16 Pierre Humblet <Pierre.Humblet@ieee.org>Pierre Humblet2011-08-162-50/+22
| | | | | * net.cc (gethostby_helper): Remove DEBUGGING code from and streamline the second pass.
* * dlfcn.cc (dlopen): Reimplement RTLD_NODELETE for Windows 2000 usingCorinna Vinschen2011-08-164-9/+67
| | | | | | | | | | internal datastructures. Explain the code. * ntdll.h (struct _LDR_DATA_TABLE_ENTRY): Define. (struct _PEB_LDR_DATA): Define. (struct _PEB): Change PVOID LoaderData to PPEB_LDR_DATA Ldr. * fhandler_process.cc (format_process_maps): Call NtQueryVirtualMemory with valid return length pointer. Explain why.
* * new-features.sgml (ov-new1.7.10): Document new RTLD flags.Corinna Vinschen2011-08-162-0/+8
|
* * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.Corinna Vinschen2011-08-162-1/+6
|
* * autoload.cc (GetModuleHandleExW): Define.Corinna Vinschen2011-08-164-16/+50
| | | | | | | | | | * dlfcn.cc: Throughout mark exported symbols as extern "C". (dlopen): Unignore flags argument. Define ret to NULL. Fix typo in comment. Support Glibc flags RTLD_NOLOAD and RTLD_NODELETE. * include/dlfcn.h: Clean up comments. (RTLD_NODELETE): Define. (RTLD_NOLOAD): Define. (RTLD_DEEPBIND): Define.
* * pipe.cc (pipe): Just call _pipe with O_BINARY mode. Move code toCorinna Vinschen2011-08-152-19/+11
| | | | | generate normalized pathnames from here... (_pipe): ...to here.