Commit Graph

5130 Commits

Author SHA1 Message Date
Thomas Pfaff 00d296a3f9 * cygwin.din: Add pthread_rwlock_destroy, pthread_rwlock_init,
pthread_rwlock_rdlock, pthread_rwlock_tryrdlock,
pthread_rwlock_wrlock, pthread_rwlock_trywrlock,
pthread_rwlock_unlock, pthread_rwlockattr_init,
pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared,
and pthread_rwlockattr_destroy.
* include/cygwin/version.h: Bump API minor number.
* include/pthread.h (PTHREAD_RWLOCK_INITIALIZER): Define a
reasonable value.
Add prototypes for pthread_rwlock_destroy, pthread_rwlock_init,
pthread_rwlock_rdlock, pthread_rwlock_tryrdlock,
pthread_rwlock_wrlock, pthread_rwlock_trywrlock,
pthread_rwlock_unlock, pthread_rwlockattr_init,
pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared,
and pthread_rwlockattr_destroy.
* thread.h (PTHREAD_ONCE_MAGIC): Remove superflous semicolon.
(PTHREAD_RWLOCK_MAGIC): New define.
(PTHREAD_RWLOCKATTR_MAGIC): Ditto.
(pthread_rwlockattr): New class.
(pthread_rwlock): Ditto.
(MTinterface::rwlocks): New member.
(MTinterface::MTinterface): Initialize rwlocks.
Add prototypes for __pthread_rwlock_destroy,
__pthread_rwlock_wrlock, __pthread_rwlock_trywrlock,
__pthread_rwlock_unlock, __pthread_rwlockattr_init,
__pthread_rwlockattr_getpshared, __pthread_rwlockattr_setpshared,
and __pthread_rwlockattr_destroy.
* thread.cc (MTinterface::Init): Initialize rwlock internal mutex.
(MTinterface::fixup_after_fork): Fixup rwlocks after fork.
(pthread_rwlockattr::isGoodObject): Implement.
(pthread_rwlockattr::pthread_rwlockattr): Ditto.
(pthread_rwlockattr::~pthread_rwlockattr): Ditto.
(pthread_rwlock::initMutex): Ditto.
(pthread_rwlock::pthread_rwlock): Ditto.
(pthread_rwlock::~pthread_rwlock): Ditto.
(pthread_rwlock::RdLock): Ditto.
(pthread_rwlock::TryRdLock): Ditto.
(pthread_rwlock::WrLock): Ditto.
(pthread_rwlock::TryWrLock): Ditto.
(pthread_rwlock::UnLock): Ditto.
(pthread_rwlock::addReader): Ditto.
(pthread_rwlock::removeReader): Ditto.
(pthread_rwlock::lookupReader): Ditto.
(pthread_rwlock::RdLockCleanup): Ditto.
(pthread_rwlock::WrLockCleanup): Ditto.
(pthread_rwlock::fixup_after_fork): Ditto.
(pthread_rwlock::isGoodObject): Ditto.
(pthread_rwlock::isGoodInitializer): Ditto.
(pthread_rwlock::isGoodInitializerOrObject): Ditto.
(pthread_rwlock::isGoodInitializerOrBadObject): Ditto.
(__pthread_rwlock_destroy): Ditto.
(pthread_rwlock::init): Ditto.
(__pthread_rwlock_rdlock): Ditto.
(__pthread_rwlock_tryrdlock): Ditto.
(__pthread_rwlock_wrlock): Ditto.
(__pthread_rwlock_trywrlock): Ditto.
2003-03-18 20:01:07 +00:00
Thomas Pfaff 5df1410028 * winsup.api/pthread/condvar7.c: New test.
* winsup.api/pthread/condvar9.c: Ditto.
2003-03-18 19:51:58 +00:00
Thomas Pfaff f592b05df1 * thread.h (pthread_cond::ExitingWait): Remove.
(pthread_cond::mutex): Ditto.
(pthread_cond::cond_access): Ditto.
(pthread_cond::win32_obj_id): Ditto.
(pthread_cond::TimedWait): Ditto.
(pthread_cond::BroadCast): Ditto.
(pthread_cond::Signal): Ditto.
(pthread_cond::waiting): Change type to unsigned long.
(pthread_cond::pending): New member.
(pthread_cond::semWait): Ditto.
(pthread_cond::mtxIn): Ditto.
(pthread_cond::mtxOut): Ditto.
(pthread_cond::mtxCond): Ditto.
(pthread_cond::UnBlock): New method.
(pthread_cond::Wait): Ditto.
* thread.cc: Update list of cancellation points.
(pthread_cond::pthread_cond): Rewrite.
(pthread_cond::~pthread_cond): Ditto.
(pthread_cond::TimedWait): Remove.
(pthread_cond::BroadCast): Ditto.
(pthread_cond::Signal): Ditto.
(pthread_cond::UnBlock): Implement.
(pthread_cond::Wait): Ditto.
(pthread_cond::fixup_after_fork): Rewrite.
(pthread_mutex::fixup_after_fork): Remove DETECT_BAD_APP
conditional.
(__pthread_cond_broadcast): Just return 0 if the condition is
not initialized. Call pthread_cond::UnBlock to release blocked
threads.
(__pthread_cond_signal): Ditto.
(__pthread_cond__dowait): Rewrite.
(pthread_cond_timedwait): Add pthread_testcancel call. Fix
waitlength calculation.
(pthread_cond_wait): Add pthread_testcancel call.
2003-03-18 19:49:38 +00:00
Thomas Pfaff 0bad7c2e26 * winsup.api/pthread/mutex1n.c: New test.
* winsup.api/pthread/mutex6n.c: Ditto.
* winsup.api/pthread/mutex7n.c: Ditto.
2003-03-18 19:42:43 +00:00
Thomas Pfaff 2ff03dc2e0 * include/pthread.h (PTHREAD_MUTEX_NORMAL): New define.
* thread.cc: Remove errno.h include.
(pthread::precreate): Change internal mutex type to normal.
(pthread_mutex::canBeUnlocked): Implement.
(pthread_mutex::pthread_mutex): Initialize lock_counter with 0.
(pthread_mutex::Lock): Rename to _Lock. Add self parameter.
Change lock_counter logic. Update SetOwner call.
(pthread_mutex::TryLock): Rename to _TryLock. Add self parameter.
Change lock_counter logic. Update SetOwner call.
(pthread_mutex::UnLock): Rename to _UnLock. Add self parameter.
Change lock_counter logic.
(pthread_mutex::Destroy): Rename to _Destroy. Update TryLock call.
(pthread_mutex::SetOwner): Move to thread.h as inline.
(pthread_mutex::LockRecursive): Ditto.
(pthread_mutex::fixup_after_fork): Change lock_counter logic.
(__pthread_mutexattr_settype): Add PTHREAD_MUTEX_NORMAL to valid
types check.
* thread.h: Include errno.h and limits.h.
(MUTEX_LOCK_COUNTER_INITIAL): Remove.
(MUTEX_OWNER_ANONYMOUS): New define.
(pthread_mutex::canBeUnlocked): New static method.
(pthread_mutex::lock_counter): Change type to unsigned long.
(pthread_mutex::GetPthreadSelf): New method.
(pthread_mutex::Lock): Call _Lock with pthread_self pointer.
(pthread_mutex::TryLock): Call _TryLock with pthread_self pointer.
(pthread_mutex::UnLock): Call _UnLock with pthread_self pointer.
(pthread_mutex::Destroy): Call _Destroy with pthread_self pointer.
(pthread_mutex::SetOwner): Moved from thread.cc as inline.
(pthread_mutex::LockRecursive): Ditto.
(pthread_mutex::_Lock): New method.
(pthread_mutex::_TryLock): New method.
(pthread_mutex::_UnLock): New method.
(pthread_mutex::_Destroy): New method.
2003-03-18 19:39:21 +00:00
Corinna Vinschen dcd350f0ec * fhandler_proc.cc (format_proc_cpuinfo): Use IsProcessorFeaturePresent
only on Windows NT. Read CPU Mhz value only on NT. Revert previous
	change so cpuid instruction is called even on non-NT systems.
2003-03-18 09:30:03 +00:00
Danny Smith bc1658ad66 * include/lmaccess.h (UF_LOCKOUT): Correct name from UF_LOCK.
Thanks to: Fabricio D. Rossi  <gurusoda@users.sourceforge.net>
 	(UF_SETTABLE_BITS): Correct UF_LOCKOUT here too.
2003-03-18 09:19:21 +00:00
Christopher Faylor eeb65b9513 * Makefile.common (w32api_lib): Default to system w32api directory if w32api is
missing from source.
2003-03-17 23:13:26 +00:00
DJ Delorie 259db89238 merge from gcc 2003-03-17 23:09:54 +00:00
Christopher Faylor 298b2249e6 * Makefile.common: Fix typo from previous checkin. 2003-03-17 22:35:53 +00:00
Christopher Faylor 237ab58c28 * configure.in: w32api directory was already optional. Semi-revert 2003-02-06
change.
* configure: Regenerate.
* Makefile.common: Don't specific -nostdinc if there is no w32api directory.
2003-03-17 22:27:07 +00:00
Corinna Vinschen c51dc9c245 * glob.c (g_lstat): Change API minor test to match API minor number
change in previous patch.
	(g_stat): Ditto.
2003-03-17 20:44:10 +00:00
Christopher Faylor f194ba1ff3 * include/cygwin/version.h: Reorganize last two api versions so that btowc and
trunc exports show up before previous bump since there has been no exported
version of the DLL with the 64 bit changes yet but 1.3.22 will have the btowc
and trunc.
2003-03-17 19:16:15 +00:00
Christopher Faylor 3543669fd3 * cygwin.din: Export btowc, trunc.
* include/cygwin/version.h: Reflect new exports.
* syscalls.cc (_stat): Rename to stat to avoid newlib wrapper.
* syscalls.cc (_fstat): Ditto.
* fhandler_console.cc (fhandler_console::close): Correct check for current tty.
Add debugging output when console is freed.
(set_console_state_for_spawn): Add debugging output.
* fhandler_tty.cc (fhandler_tty_slave::open): Don't decrement console open flag
when vforking.
* sigproc.cc (sigproc_terminate): Fix debugging output.
* spawn.cc (handle): Eliminate second argument.
(spawn_guts): Reflect elimination of argument change to handle.
* syscalls.cc (setsid): Add debugging output when console is freed.
* syscalls.cc (rename): Revert assumption that DELETE_ON_CLOSE works on Win9x.
2003-03-17 19:08:11 +00:00
DJ Delorie db14b4abb7 merge from gcc 2003-03-17 18:01:05 +00:00
Jeff Johnston 6b3bb52b84 2003-03-17 Bob Cassels <bcassels@abinitio.com>
* libc/string/wcschr.c: (wcschr): Look for character first,
        then for end of string, so you can do wcschr(x, '\0').
2003-03-17 17:12:32 +00:00
Nick Clifton c745f853be (O_SYS_CMDLINE): New pseudo opcode for command line processing. 2003-03-17 10:34:29 +00:00
Danny Smith 4b170a4bf4 2003-03-17 Bang Jun-Young <junyoung@netbsd.org>
* include/winbase.h (EnumResourceLanguages[AW]): Correct prototypes.
	(EnumResourceNames[AW]): Ditto.
	(EnumResourceTypes[AW]): Ditto.
	* include/wincon.h (CONSOLE_FONT_INFO): Add struct.
2003-03-17 10:01:07 +00:00
Danny Smith 48051a71ce Get rid of some warnings
* mingwex/dirent.c (_topendir): Eliminate signed/unsigned warning.
	* mingwex/strtoimax.c (strtoimax): Likewise.
	* mingwex/wcstoimax.c (wcstoimax): Likewise.
	* mingwex/wtoll.c (wtoll): Remove unnecessary ';'
	* mingwex/fesentenv.c: Include float.h.
	* mingwex/math/powl.c: Eliminate type punning/strict aliasing 
	warning.
	* mingwex/math/tanhl.c: Eliminate signed/unsigned warning in
	constants.
	* mingwex/math/tgammal.c: Likewise.
2003-03-17 01:03:43 +00:00
Danny Smith 9bd09d45f0 2003-03-16 Toby Malone <malone@users.sourceforge.net>
* include/winuser.h (SendInput): Add prototype.
	* lib/user32.def (SendInput): Add stub.
2003-03-17 00:14:39 +00:00
Danny Smith f99ee1608c * include/utime.h: New file, forwarding to sys/utime.h. 2003-03-16 22:23:58 +00:00
Danny Smith 5652f74ed2 * include/sys/param.h (MAXPATHLEN): Define. 2003-03-16 22:18:05 +00:00
Danny Smith e685ccffdf * include/tchar.h: Ansi-fy a comment. 2003-03-16 22:15:19 +00:00
Danny Smith dcbe33d83a * profile/profile.h (mcount): Use __builtin_return_address
rather than __asm statements.
	* profile/Makefile.in: Remove special rule for mcount.o
	Specify dependencies for mcount.o profil.o gmon.o.
2003-03-16 22:12:01 +00:00
Danny Smith 7729cf524f 2003-03-16 Vadim Yegorov <zg@bmg.lv>
* winioctl.h (FSCTL_SET_REPARSE_POINT: Correct macro.
	(FSCTL_DELETE_REPARSE_POINT): Likewise.
2003-03-16 01:41:58 +00:00
Danny Smith 5b537130a3 2003-03-15 Bang Jun-Young <junyoung@netbsd.org>
* winnt.h (JOBOBJECTINFOCLASS): Define enum.
	(JOBOBJECT_*): Define corresponding structures.
2003-03-15 03:50:48 +00:00
Nathanael Nerode 1c53cd00ba * Makefile.tpl: Move .NOEXPORT, MAKEOVERRIDES back down.
* Makefile.in: Regenerate.
2003-03-14 20:49:14 +00:00
Michael Chastain b93e1111fa 2003-03-14 Michael Chastain <mec@shout.net>
* Makefile.in: Regenerate with correct Makefile.def.
2003-03-14 18:59:59 +00:00
Corinna Vinschen 2a940c1a22 * libc/include/stdio.h: Declare fgetpos, fsetpos, fseeko and ftello
with internal (_fpos_t and _off_t) datatypes when compiling newlib.
	* libc/include/sys/unistd.h: Declare _lseek using _off_t.
	* libc/reent/lseekr.c (_lseek_r): Use _off_t instead of off_t.
	* libc/stdio/fseeko.c (fseeko): Ditto.
	* libc/stdio/ftello.c (ftello): Ditto.
	* libc/stdio/stdio.c (__swrite): Ditto.
	(__sseek): Ditto.
	* libc/stdio/fgetpos.c (fgetpos): Use _fpos_t instead of fpos_t.
	* libc/stdio/fseek.c (fseek): Ditto.
	* libc/stdio/fsetpos.c (fsetpos): Ditto.
	* libc/stdio/ftell.c (ftell): Ditto.
	* libc/stdio/local.h: Declare __sseek using _off_t.
2003-03-14 18:39:05 +00:00
Danny Smith 2359084b5b 2003-03-13 Danny Smith <dannysmith@users.sourceforge.net>
* include/ddk/winddk.h (PCUNICODE_STRING): Remove incorrect
	typedef.

2003-03-13  Bang Jun-Young  <junyoung@netbsd.org>

	* lib/kernel32.def (Module32{First,Next}{,W}): Add missing exports.
	(Process32{First,Next}{,W}): Ditto.
	(Thread32{First,Next}): Ditto.
	* include/ntdef.h (PCUNICODE_STRING): Add typedef.
2003-03-14 03:06:52 +00:00
Christopher Faylor 41ffdfa51e * include/cygwin/version.h: Bump DLL minor number to 23. 2003-03-13 23:11:38 +00:00
Corinna Vinschen 5b186cd999 * autoload.cc (IsProcessorFeaturePresent): Add.
* fhandler_proc.cc (format_proc_cpuinfo): Add case for 9x systems.
2003-03-13 22:53:16 +00:00
Corinna Vinschen c58555c70f * fhandler_proc.cc (format_proc_cpuinfo): Fix vendor id in cpuid case. 2003-03-13 22:32:40 +00:00
Corinna Vinschen 49a0d53c46 * net.cc (cygwin_rcmd): Use correct file descriptor in call to fdsock.
(cygwin_rexec): Ditto.
2003-03-13 11:31:24 +00:00
Christopher Faylor 6fcd5661fe * syscalls.cc (rename): Assume that DELETE_ON_CLOSE works on Win9x.
* fhandler_tty.cc (fhandler_tty_slave::close): Fix typo in debug output.
2003-03-13 08:18:15 +00:00
Earnie Boyd 19bf3bcc3e * include/mswsock.h: Correct invalid filter for _WINSOCK2_H.
Thanks to Jim Barton <jmbarton@users.sf.net>.
2003-03-12 23:36:54 +00:00
Nathanael Nerode ac2edfb863 * Makefile.tpl: Move .NOEXPORT, MAKEOVERRIDES up. Delete unused
Make macro.
	* Makefile.in: Regenerate.
	* configure.in: Clean up gxx_include_dir logic.
	* configure: Regenerate.
2003-03-12 20:47:07 +00:00
Christopher Faylor 0e2b01821a fix typo 2003-03-12 17:21:31 +00:00
Christopher Faylor df4bf7b98c Checkin previously referred to in ChangeLog. 2003-03-12 06:28:27 +00:00
Danny Smith c5e1d3ea74 2003-03-12 Ranjit Mathew <rmathew@hotmail.com>
* include/winnt.h (_IMAGE_SEPARATE_DEBUG_HEADER): Expose
        member SectionAlignment.
2003-03-11 23:53:08 +00:00
Corinna Vinschen aa39b7f7bf * fhandler_socket.cc (fhandler_socket::dup): Don't call
fhandler_base::dup() but call DuplicateHandle directly instead to have
	control over socket inheritence.
2003-03-11 16:49:58 +00:00
Earnie Boyd 296b2a5f17 * include/winsvc.h (SERVICE_NO_CHANGE): Use hex constant to avoid
warnings.
	Thanks to Fabricio D. Rossi <gurusoda@users.sf.net>.
	* Makefile.in (bindist): Correct process.
	* lib/Makefile.in (install): Ditto.
	Thanks to Jeff Bonnggren <jbon@users.sf.net>.
2003-03-11 14:44:58 +00:00
Corinna Vinschen 2afa7f5882 2003-03-11 Corinna Vinschen <corinna@vinschen.de>
* fhandler_socket.cc (fhandler_socket::dup): On NT systems avoid
	using WinSock2 socket duplication methods.  Add comment.

2003-03-11  Pierre Humblet  <pierre.humblet@ieee.org>

	* fhandler_socket.cc (fhandler_socket::fixup_after_fork):
	Set io_handle to INVALID_SOCKET in case of failure.
	(fhandler_socket::dup): Return 0 if the io_handle is valid.
2003-03-11 13:05:36 +00:00
Danny Smith 970f752c8c * include/stdlib.h (qsort): Remove const from first parm.
Thanks to: Tien-Ren Chen  <trchen@sourceforge.users.net>
2003-03-11 03:00:50 +00:00
Danny Smith 316d65dc72 * include/rasdlg.h: New file.
* lib/rasdlg.def: New file.
	* lib/test.c: Include rasdlg.h.
2003-03-10 22:45:51 +00:00
Corinna Vinschen 556ceaeb58 * sec_acl.cc (setacl): Don't handle DELETE flag specially.
* security.cc (alloc_sd): Ditto.
2003-03-10 16:25:48 +00:00
Corinna Vinschen 6bbf711e68 Fix typo. 2003-03-09 22:13:27 +00:00
Corinna Vinschen a201401c41 * winver.rc: Change Copyright hint to inlcude 2003. 2003-03-09 22:13:06 +00:00
Corinna Vinschen 150c2818b6 * libc/reent/lseekr.c (lseek_r): Use _off_t instead of off_t. 2003-03-09 22:10:14 +00:00
Corinna Vinschen 2c440f9c1a * libc/include/sys/config.h: Define __CYGWIN_USE_BIG_TYPES__ for
Cygwin.
2003-03-09 21:52:23 +00:00