Commit Graph

3948 Commits

Author SHA1 Message Date
Corinna Vinschen 6ef3b76be2 * syscalls.cc (getshmlba): New function.
* external.cc (cygwin_internal): Add CW_GET_SHMLBA handling.
	* mmap.cc (mmap64): Call getshmlba to evaluate granularity.
	* winsup.h (getshmlba): Add declaration.
	* include/cygwin/version.h: Bump API minor number.
	* include/sys/cygwin.h (cygwin_getinfo_types): Add CW_GET_SHMLBA.
2003-11-06 14:33:16 +00:00
Christopher Faylor fad5aef860 * winsup.h: Declare access_worker. 2003-11-06 13:58:45 +00:00
Corinna Vinschen 80ab7cb41f * include/cygwin/types.h: Fix preprocessor guards for vm_offset_t and
vm_size_t.  Add typedef for vm_object_t.
2003-11-06 10:46:49 +00:00
Christopher Faylor d417aec908 * fhandler_disk_file.cc (fhandler_disk_file::opendir): Detect attempt to open a
directory which lacks read privileges.
2003-11-05 16:53:55 +00:00
David Starks-Browning 1be28abadf Entry "Where is the su command?" -> "Why doesn't su work?" 2003-11-04 22:05:31 +00:00
Corinna Vinschen bcd06214e1 * external.cc (cygwin_internal): Add CW_GET_POSIX_SECURITY_ATTRIBUTE
handling.
	* include/cygwin/version.h: Bump API minor number.
	* include/sys/cygwin.h (cygwin_getinfo_types): Add
	CW_GET_POSIX_SECURITY_ATTRIBUTE.

	* exceptions.cc (init_global_security): Move from here...
	* sec_helper.cc (init_global_security): ...to here.
2003-11-04 15:48:19 +00:00
Christopher Faylor c35391d0d2 * net.cc (dup_ent): Use IsBadStringPtr for alignment checks. Don't use a known
bad pointer.
2003-11-04 13:15:47 +00:00
Corinna Vinschen 02bd05e386 * passwd.c (PrintPW): Turn around meaning printed for "Password not
required" option to be in line with Windows meaning.
	(main): Use more appropriate 1008 option when calling
	NetUserSetInfo to change flag values.
2003-11-04 10:54:47 +00:00
Corinna Vinschen 1f4e5e1571 * passwd.c (UF_LOCKOUT): Remove (defined in lmaccess.h).
(version): Bump version number to 1.5.
	(longopts): Add -c, -C, -e, -E, -p, -P options.
	(opts): Ditto.
	(PrintPW): Print values of UF_PASSWD_CANT_CHANGE and
	UF_DONT_EXPIRE_PASSWD flags. Slightly reformat output. Don't suppress
	correct system password settings just because the account has admin
	privileges.
	(usage): Define as "noreturn" function. Restructure and rephrase
	output. Accomodate new options.
	(print_version): Fix copyright dates.
	(main): Accomodate new options for setting UF_PASSWD_CANT_CHANGE,
	UF_DONT_EXPIRE_PASSWD and UF_PASSWD_NOTREQD settings.
2003-11-04 10:30:35 +00:00
Corinna Vinschen dff017b292 * net.cc (dup_ent): Move Win 95 misalignment recogition before
trying to evaluate string length.
2003-11-03 21:43:32 +00:00
Thomas Pfaff f796413184 * thread.cc (pthread::thread_init_wrapper): Initialize exception handling. 2003-10-31 20:47:14 +00:00
Thomas Pfaff c6e0f665bc Rename pthread::running to pthread::valid throughout.
* thread.h: (pthread::suspend_all_except_self): New static method.
(pthread::resume_all): Ditto.
(pthread::suspend_except_self): New method.
(pthread::resume): Ditto.
* thread.cc (pthread::suspend_except_self): Implement.
(pthread::resume): Ditto.
2003-10-31 20:42:56 +00:00
Corinna Vinschen d3f6bd13cb * include/stdint.h: Prevent signed->unsigned conversion for 32 and
64 bit min value constants.
2003-10-29 08:43:10 +00:00
Christopher Faylor 7825ed016f * path.cc (dot_special_chars): New global variable.
(special_name): Make files ending in "." special.
(fnunmunge): Allow encoded ".".
(mount_item::fnmunge): Handle trailing ".".
2003-10-29 01:15:12 +00:00
Christopher Faylor a4666b3d1b * include/stdint.h: Duplicate below effort for rest of *64_*. 2003-10-28 16:03:52 +00:00
Christopher Faylor 61c4ca410f * include/stdint.h: Correctly define INT64_MAX. 2003-10-28 15:13:06 +00:00
Danny Smith b19cda7bab * include/math.h: Guard ISO C99 additions with __cplusplus
not __GLIBCPP__.
2003-10-27 23:51:37 +00:00
Thomas Pfaff 7cba834bf2 * thread.h (fast_mutex::init): Initialize lock_counter. 2003-10-27 21:12:42 +00:00
Corinna Vinschen 56a4ceac3d * Makefile.in (OBSOLETE_FUNCTION): Add tmpfile.
(NEW_FUNCTIONS): Add _tmpfile64 -> tmpfile translation.
	* cygwin.din: Export _tmpfile64
	* include/cygwin/version.h: Bump api minor number.
2003-10-27 13:06:56 +00:00
Corinna Vinschen 072339664d * cygwin.din: Add sem_close, sem_getvalue, sem_open and sem_timedwait.
* pthread.cc (+mangle_sem_name): New function.
	(sem_open): Ditto.
	(sem_close: Ditto.
	(sem_timedwait): Ditto.
	(sem_getvalue): Ditto.
	* thread.cc (semaphore::semaphore): Rearrange member initialization.
	Use appropriate security attribute for process shared semaphores.
	(semaphore::semaphore): New constructor for named semaphores.
	(semaphore::~semaphore): Care for semaphore name.
	(semaphore::_post): Accomodate failing ReleaseSemaphore. Use value
	returned by ReleaseSemaphore vor currentvalue.
	(semaphore::_getvalue): New method.
	(semaphore::_timedwait): Ditto.
	(semaphore::_fixup_after_fork): Rearrange. Don't fail for process
	shared semaphores.
	(semaphore::open): New method.
	(semaphore::timedwait): Ditto.
	(semaphore::post): Fix return value.  Set errno appropriately.
	(semaphore::getvalue): New method.
	* thread.h (class semaphore): Add prototypes for open, getvalue,
	timedwait, _getvalue, _timedwait.  Add prototypes for new constructor.
	Add name member.
	* include/semaphore.h: Add prototypes for sem_open, sem_close,
	sem_timedwait and sem_getvalue.
	include/cygwin/version.h: Bump API minor number.
2003-10-27 11:48:29 +00:00
Corinna Vinschen d845665e0f * miscfunc.cc (__check_invalid_read_ptr): New function.
* winsup.h: Declare.
2003-10-27 08:28:37 +00:00
Corinna Vinschen db30fe125f * security.h (cygpsid::debug_print): Avoid compiler warnings. 2003-10-26 10:58:11 +00:00
Christopher Faylor 13d5cc4020 Remove file that was supposed to have disappeared a month ago. 2003-10-26 01:09:06 +00:00
Corinna Vinschen 504678827a * path.cc (normalize_posix_path): Test runs of more than two
dots for being a run of only dots.  Let it pass if not.
2003-10-25 16:12:45 +00:00
Corinna Vinschen 89256ff149 * fhandler.cc (fhandler_base::ioctl): Handle FIONBIO. 2003-10-25 12:32:56 +00:00
Thomas Pfaff 28194e813e Rename native_mutex to fast_mutex throughout.
Rename pthread_key::save_key_to_buffer to
pthread_key::_fixup_before_fork throughout.
Rename pthread_key::recreate_key_from_buffer to
pthread_key::_fixup_after_fork throughout.

* thread.cc (native_mutex::init): Remove.
(native_mutex::lock): Ditto.
(native_mutex::unlock): Ditto.
(pthread::push_cleanup_handler): InterlockedExchangePointer
is not needed here.
(pthread_rwlock::pthread_rwlock): Initialize readers list mutex.
(pthread_rwlock::add_reader): Add reader via List_insert.
(pthread_rwlock::lookup_reader): Lock list while walking through.
(pthread_cond::init): Locking the init mutex is now void.
(pthread_rwlock::init): Ditto.
(pthread_mutex::init): Ditto.
* thread.h: Include security.h.
(fast_mutex): New class. Replacement for native_mutex.
(List_insert): New template function.
(List_remove): Ditto.
(List::List): Initialize synchronising mutex.
(List::fixup_after_fork): New method.
(List::insert): Add node via List_insert.
(List::remove): Remove node via List_remove.
(List::pop): Remove.
(List::for_each): Lock list while walking through.
(List::mx_init): New method.
(pthread_mutex::fixup_after_fork): Fixup mutex list after fork.
(pthread::fixup_after_fork): Ditto.
(pthread_conds::fixup_after_fork): Ditto.
(pthread_rwlock::fixup_after_fork): Ditto.
(semaphore::fixup_after_fork): Ditto.
(pthread_rwlock::readers_mx): New member.
2003-10-24 19:34:47 +00:00
Corinna Vinschen 2b7dcf79ae * fhandler.cc (fhandler_base::fcntl): Don't clobber O_APPEND when
both O_NONBLOCK/O_NDELAY are set for F_SETFL.
2003-10-24 12:11:20 +00:00
Corinna Vinschen 0b4274f58b * path.cc (win32_device_name): Fix comment. 2003-10-24 08:13:15 +00:00
Christopher Faylor e64a50ed4e * fhandler_tty.cc (fhandler_tty_slave::ioctl): Properly set return value in
FIONBIO case.
2003-10-24 01:13:22 +00:00
Corinna Vinschen f49c14a197 * fhandler_proc.cc (format_proc_partitions): Use new device code
to get major and minor device numbers.  Fix size evaluation.
2003-10-23 08:54:00 +00:00
Corinna Vinschen 5ec9ea21a3 * external.cc (cygwin_internal): Add CW_GET_ERRNO_FROM_WINERROR
handling.
	* include/cygwin/version.h: Bump API minor number.
	* include/sys/cygwin.h (cygwin_getinfo_types): Add
	CW_GET_ERRNO_FROM_WINERROR.
2003-10-22 20:32:20 +00:00
Corinna Vinschen e217832c4c * Makefile.in: Add $(LIBSERVER) rule.
* cygserver.h: Moved from include/cygwin to here.
	* cygserver_ipc.h: Moved from ../cygserver to here.
	* cygserver_shm.h: Ditto.
	* cygwin.din: Add shmat, shmctl, shmdt and shmget.
	* fhandler_tty.cc (fhandler_tty_slave::open): Don't warn about handle
	dup'ing if not build with USE_SERVER.
	* shm.cc: Include cygerrno.h unconditionally.
	(shmat): Set errno to ENOSYS and return -1 if not build with
	USE_SERVER.
	(shmctl): Ditto.
	(shmdt): Ditto.
	(shmget): Ditto.
	* woutsup.h: Remove.
	* include/cygwin/cygserver_process.h: Moved to ../cygserver directory.
	* include/cygwin/cygserver_transport.h: Ditto.
	* include/cygwin/cygserver_transport_pipes.h: Ditto.
	* include/cygwin/cygserver_transport_sockets.h: Ditto.
	* include/cygwin/version.h: Bump API minor number.
2003-10-22 10:07:59 +00:00
Corinna Vinschen 567970786e Accomodate moving cygserver header files from cygwin/include/cygwin
to here and cygwin dir.
	* Makefile.in (EXEEXT): Drop as unused.
	(EXEEXT_FOR_BUILD): Ditto.
	(all): Don't build libcygserver.a.
	* cygserver_process.h: Moved from cygwin/include/cygwin to here.
	* cygserver_transport.h: Ditto.
	* cygserver_transport_pipes.h: Ditto.
	* cygserver_transport_sockets.h: Ditto.
	* ipc.h: Moved to ../cygwin and renamed to cygserver_ipc.h.
	* shm.h: Moved to ../cygwin and renamed to cygserver_shm.h.
2003-10-22 10:04:11 +00:00
Danny Smith 79be64037c * include/_mingw.h: Define __attribute__((x)) to nothing
if not __GNUC__.
2003-10-21 09:50:47 +00:00
Danny Smith 3c7a7a5fca Add ISO C99 complex support for doubles.
* include/complex.h: New file.
	* mingwex/complex: New directory.
	* mingwex/complex/cabs.c: New file.
	* mingwex/complex/cacos.c: New file.
	* mingwex/complex/cacosh.c: New file.
	* mingwex/complex/casin.c: New file.
	* mingwex/complex/casinh.c: New file.
	* mingwex/complex/catan.c: New file.
	* mingwex/complex/catanh.c: New file.
	* mingwex/complex/ccos.c: New file.
	* mingwex/complex/ccosh.c: New file.
	* mingwex/complex/cexp.c: New file.
	* mingwex/complex/cimag.c: New file.
	* mingwex/complex/clog.c: New file.
	* mingwex/complex/cpow.c: New file.
	* mingwex/complex/cproj.c: New file.
	* mingwex/complex/creal.c: New file.
	* mingwex/complex/csin.c: New file.
	* mingwex/complex/csinh.c: New file.
	* mingwex/complex/csqrt.c: New file.
	* mingwex/complex/ctan.c: New file.
	* mingwex/complex/ctanh.c: New file.
	* mingwex/Makefile.in (COMPLEX_DISTFILES): New list of
	files.
	(dist): Use it.
	(COMPLEX_OBJS): New list of objects.
	(LIB_OBJS): Include it in the library.
2003-10-21 09:43:22 +00:00
Danny Smith 6de52354eb * include/math.h (cabs): Remove non-ISO prototype. 2003-10-21 09:14:45 +00:00
Danny Smith 359e09e7fd * mingwex/math/cephes_mconf.h (NAN, NANF, NANL):
Use GCC __builtin's if available.
	(INFINITY, INFINITYF, INFINITYL): Likewise.
2003-10-21 09:10:51 +00:00
Danny Smith 672126d4f1 * mingwex/math/s_erf.c (erf): Set errno to ERANGE if
beyond approximation limit.
	* mingwex/math/sf_erf.c (erff): Likewise.
2003-10-21 09:05:24 +00:00
Danny Smith f25e45973d * include/stdio.h (_filbuf): Add prototype.
(_flsbuf): Add prototype.
	(getc): Add inline version.
	(putc): Likewise.
	(getchar): Likewise.
	(putchar): Likewise.
2003-10-17 21:43:31 +00:00
Christopher Faylor ce17145aa8 revert accidental checkin 2003-10-17 17:20:06 +00:00
Christopher Faylor fa10472e4a * cygcheck.cc (pretty_id): Don't exec if `id' program is not found. 2003-10-17 17:19:31 +00:00
Dimitri Papadopoulos 5320b93f4e Oooops... 2003-10-17 10:37:44 +00:00
Pierre Humblet 30f515c54f *** empty log message *** 2003-10-16 23:28:31 +00:00
Pierre Humblet 9808b5c420 2003-10-16 Pierre Humblet <pierre.humblet@ieee.org>
* syscalls.cc (seteuid32): Always construct a default DACL including
	the new sid, Admins and SYSTEM and copy it to the new thread token.
	* security.cc (create_token): Use a NULL default DACL in NtCreateToken.
2003-10-16 23:20:41 +00:00
Corinna Vinschen abfc9c412c * dcrt0.cc: Remove local variable alternate_charset_active.
* fhandler.h: Add variable alternate_charset_active, functions
	str_to_con, con_to_str to dev_console structure.
	* fhandler_console.cc (con_to_str): Move function into dev_console
	class.
	(str_to_con): Ditto.
	(fhandler_console::read): Call con_to_str on dev_state.
	(fhandler_console::write_normal): Call str_to_con on dev_state.
	(fhandler_console::char_command): Change active_charset_active
	assignment to be on dev_state.
	* winsup.h: Remove global external variable alternate_charset_active.
2003-10-16 14:08:28 +00:00
Corinna Vinschen ce34c904cc * fhandler_console.cc (char_command): Add escape sequence for codepage
ansi <-> oem switching for ncurses frame drawing capabilities.
	* dcrt0.cc: Add local variable alternate_charset_active.
	* winsup.h: Add global external variable alternate_charset_active.
2003-10-15 08:23:26 +00:00
Corinna Vinschen db3137ccb5 * exceptions.cc (ctrl_c_handler): Don't send SIGHUP on
CTRL_LOGOFF_EVENT to processes running in invisible Windows Stations.
	* window.cc (has_visible_window_station): New function.
	* winsup.h: Add declaration for has_visible_window_station.
2003-10-14 09:21:55 +00:00
Dimitri Papadopoulos 36ef425c19 * include/windows.h (CopyCursor): Although MSDN pretends this is
a function to be imported from user32.lib, it's actually a macro.
	From the Delphi FAQ:
		Question:
		Where is the Windows API function CopyCursor defined in
		32-Bit versions of Delphi and C++ Builder?
		Answer:
		While the call is documented in the Win32 help file, the
		function is simply mapped to the Windows API function
		CopyIcon(). Note that the 32 bit version of CopyIcon
		does not take a hInstance parameter.
2003-10-13 06:02:06 +00:00
Danny Smith 29598fc7e0 2003-10-13 Steven Edwards <Steven_Ed4153@yahoo.com>
* include/winnt.h (CONTAINING_RECORD): Add macro.
2003-10-13 05:22:30 +00:00
Danny Smith 851217a605 * include/winnt.h: (FILE_SUPERSEDED, FILE_OPENED, FILE_CREATED,
FILE_OVERWRITTEN, FILE_EXISTS, FILE_DOES_NOT_EXIST): remove
	defines.
2003-10-13 03:25:26 +00:00
Danny Smith 64c0532eb5 2003-10-13 Filip Navara <xnavara@volny.cz>
* include/commctrl.h: (DSA_*):Add prototypes, typedefs and
	defines for Dynamic Storage Arrays.
	(DPA_*): Likewise, for Dynamic Pointer Arrays.
	(FlatSB_*, InitializeFlatSB, InitializeFlatSB): Add prototypes
	and defines for Flat ScrollBars.
	(SetWindowSubclass, GetWindowSubclass, RemoveWindowSubclass,
	DefSubclassProc): Add prototypes for subclassing.
	(DrawShadowText) Add prototype.
`	(COMCTL32_VERSION): Define.
2003-10-13 02:46:36 +00:00
Danny Smith fad2aa1aad 2003-10-13 Martin Fuchs <Martin-Fuchs@gmx.net>
* include/shlobj.h (CFSTR_FILENAME, CFSTR_FILEDESCRIPTOR,
	CFSTR_FILENAMEMAP, CFSTR_SHELLURL): Correct UNICODE definitions.
2003-10-13 00:22:38 +00:00
Danny Smith 0c7a57ebc0 2003-10-13 Pierre Humblet <pierre.humblet@ieee.org>
* include/winnt.h (SM_REMOTESESSION): Add define.
	* include/winuser.h (SE_CREATE_GLOBAL_NAME): Ditto.
2003-10-12 23:38:57 +00:00
Danny Smith b3355c6592 * include/wincrypt (KP_IV, KP_SALT, KP_PADDING, KP_MODE,
KP_MODE_BITS, KP_PERMISSIONS, KP_ALGID, KP_BLOCKLEN): Remove
	duplicate definitions.
	(KP_X, KP_Y): Correct typos.
2003-10-12 23:34:13 +00:00
Manu B 986ee16a0c Dummy afxres header, richedit constants added 2003-10-11 08:00:38 +00:00
Christopher Faylor 7cf29f96e0 * fhandler_tty.cc (fhandler_tty_slave::open): Don't create a new window station
if one already exists.
2003-10-10 19:11:21 +00:00
Christopher Faylor 4a204f6625 * shared.cc (shared_info::initialize): Remove myself check since hMainProc
initialization will allow user initialization to work.
2003-10-10 19:07:08 +00:00
Earnie Boyd f3d0380417 * include/_mingw.h: Increment version to 3.2.
* Makefile.in: Ditto.
2003-10-10 18:25:10 +00:00
Christopher Faylor cca873af60 fix typo 2003-10-10 17:44:54 +00:00
Earnie Boyd 79b931ee81 * include/sys/types.h: Revert last change. 2003-10-10 15:09:55 +00:00
Earnie Boyd 92fda2d938 * include/sys/types.h (ssize_t): Correct the definition. 2003-10-10 11:49:36 +00:00
Corinna Vinschen a8e5f8c6c2 * include/sys/mman.h (MAP_FAILED): Define as void *. 2003-10-09 11:40:16 +00:00
Dimitri Papadopoulos 6ddad5e1dd * include/errorep.h: New file.
* lib/faultrep.def: New file.
2003-10-09 05:52:12 +00:00
Dimitri Papadopoulos 38f9123efd * include/winbase.h (AddVectoredExceptionHandler): Define if
_WIN32_WINNT >= 0x0500.

	* include/winnt.h (PVECTORED_EXCEPTION_HANDLER): Define if
	_WIN32_WINNT >= 0x0500.
2003-10-09 05:28:25 +00:00
Christopher Faylor ea4980efe1 * dcrt0.cc (hMainProc): Initialize to useful value for use when dll is
dynamically loaded.
(shared_info::initialize): Don't initialize user stuff if myself doesn't exit.
2003-10-08 21:40:33 +00:00
Corinna Vinschen 5df75951a5 * include/winbase.h (AddVectoredExceptionHandler): Only define if
_WIN32_WINNT >= 0x0501.
2003-10-08 15:58:58 +00:00
Corinna Vinschen 99439385c6 * syscalls.cc (unlink): Don't even try DELETE_ON_CLOSE technique on
systems not supporting it.
2003-10-08 09:17:08 +00:00
Dimitri Papadopoulos 56efe3a884 * include/winbase.h [_WIN32_WINNT >= 0x0500] (SetComputerNameEx[AW],
UnregisterWaitEx): Add functions.

	* include/winbase.h [_WIN32_WINNT >= 0x0500]
	(AddVectoredExceptionHandler, RemoveVectoredExceptionHandler): Add
	or guard function. The MSDN says it is available on Windows XP and
	better, and then it says it is declared for _WIN32_WINNT >= 0x0500.
	Huh?

	* include/winbase.h [_WIN32_WINNT >= 0x0501] (AddRefActCtx,
	CreateActCtx[AW], SetFileShortName[AW], SetFileValidData,
	ZombifyActCtx, QueryActCtxW): Add functions.

	* include/winbase.h [_WIN32_WINNT >= 0x0501]
	(QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX,
	QUERY_ACTCTX_FLAG_ACTCTX_IS_HMODULE,
	QUERY_ACTCTX_FLAG_ACTCTX_IS_ADDRESS): Add constants.

	* include/winbase.h [_WIN32_WINNT >= 0x0502] (SetDllDirectory[AW],
	SetFirmwareEnvironmentVariable[AW]): Add functions.

	* include/winnt.h [_WIN32_WINNT >= 0x0500] (VER_BUILDNUMBER,
	VER_MAJORVERSION, VER_MINORVERSION, VER_PLATFORMID,
	VER_SERVICEPACKMAJOR, VER_SERVICEPACKMINOR, VER_SUITENAME,
	VER_PRODUCT_TYPE, VER_EQUAL, VER_GREATER, VER_GREATER_EQUAL,
	VER_LESS, VER_LESS_EQUAL, VER_AND, VER_OR): Add constants.

	* include/winnt.h [_WIN32_WINNT >= 0x0501]
	(PVECTORED_EXCEPTION_HANDLER): Add callback.

	* include/winnt.h [_WIN32_WINNT >= 0x0501]
	(ACTIVATION_CONTEXT_INFO_CLASS,
	ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION,
	ACTIVATION_CONTEXT_DETAILED_INFORMATION,
	ACTIVATION_CONTEXT_QUERY_INDEX, ASSEMBLY_FILE_DETAILED_INFORMATION):
	Add structures.

	* lib/user32.def (AddRefActCtx, AddVectoredExceptionHandler,
	CreateActCtx[AW], SetComputerNameEx[AW], SetDllDirectory[AW],
	SetFileShortName[AW], SetFileValidData,
	SetFirmwareEnvironmentVariable[AW], UnregisterWaitEx,
	VerSetConditionMask, ZombifyActCtx, QueryActCtxW): Add functions.
2003-10-07 12:55:00 +00:00
Dimitri Papadopoulos 2df2984b40 * include/winbase.h (GetWriteWatch, IsSystemResumeAutomatic,
ResetWriteWatch): Add function.

	* include/winbase.h [_WIN32_WINNT >= 0x0500]
	(GetSystemWindowsDirectory[AW], ProcessIdToSessionId, ReplaceFile[AW]):
	Add functions.

	* include/winbase.h [_WIN32_WINNT >= 0x0501]
	(GetSystemWow64Directory[AW], HeapQueryInformation,
	HeapSetInformation, InitializeSListHead, InterlockedFlushSList,
	InterlockedPopEntrySList, InterlockedPushEntrySList, IsProcessInJob,
	IsWow64Process, QueryMemoryResourceNotification, ReleaseActCtx,
	RemoveVectoredExceptionHandler): Add functions.

	* include/winnt.h [_WIN32_WINNT >= 0x0501] (HEAP_INFORMATION_CLASS):
	Add enumeration.

	* include/winbase.h [_WIN32_WINNT >= 0x0502] (GetThreadIOPendingFlag):
	Add function.

	* include/winbase.h [_WIN32_WINNT >= 0x0510] (RestoreLastError):
	Add function. The MSDN Magazine of June 2003 reads:
		RestoreLastError is an enigma. It's code is identical to
		SetLastError. It's unclear to me why it was made into a
		separate API.

	* lib/user32.def (GetSystemWindowsDirectory[AW],
	GetSystemWow64Directory[AW], GetThreadIOPendingFlag,
	HeapQueryInformation, HeapSetInformation, InitializeSListHead,
	InterlockedFlushSList, InterlockedPopEntrySList,
	InterlockedPushEntrySList, IsSystemResumeAutomatic, IsWow64Process,
	ProcessIdToSessionId, QueryMemoryResourceNotification, ReleaseActCtx,
	RemoveVectoredExceptionHandler, ReplaceFile[AW], ResetWriteWatch,
	RestoreLastError): Add functions.
2003-10-07 10:14:31 +00:00
Dimitri Papadopoulos f9a322ebf7 * include/winbase.h [_WIN32_WINNT >= 0x0500] (GetComputerNameEx[AW],
GetProcessIoCounters): Add functions.

	* include/winbase.h [_WIN32_WINNT >= 0x0500] (COMPUTER_NAME_FORMAT):
	Move around, needed by GetComputerNameEx.

	* include/winbase.h [_WIN32_WINNT >= 0x0501] (FindActCtxSectionGuid,
	FindActCtxSectionString[AW], GetCurrentActCtx, GetNativeSystemInfo):
	Add functions.

	* include/winbase.h [_WIN32_WINNT >= 0x0501]
	(ACTCTX_SECTION_KEYED_DATA): Add structure.

	* include/winbase.h [_WIN32_WINNT >= 0x0502] (GetDllDirectory[AW],
	GetFirmwareEnvironmentVariable[AW], GetProcessHandleCount,
	GetProcessId, GetSystemRegistryQuota): Add functions, available on
	Windows XP SP1 and better.

	* include/winnt.h [_WIN32_WINNT >= 0x0501]
	(ACTIVATION_CONTEXT_SECTION_ASSEMBLY_INFORMATION,
	ACTIVATION_CONTEXT_SECTION_DLL_REDIRECTION,
	ACTIVATION_CONTEXT_SECTION_WINDOW_CLASS_REDIRECTION,
	ACTIVATION_CONTEXT_SECTION_COM_SERVER_REDIRECTION,
	ACTIVATION_CONTEXT_SECTION_COM_INTERFACE_REDIRECTION,
	ACTIVATION_CONTEXT_SECTION_COM_TYPE_LIBRARY_REDIRECTION,
	ACTIVATION_CONTEXT_SECTION_COM_PROGID_REDIRECTION,
	ACTIVATION_CONTEXT_SECTION_CLR_SURROGATES): Add constants.

	* lib/user32.def (FindActCtxSectionGuid, FindActCtxSectionString[AW],
	GetComputerNameEx[AW], GetCurrentActCtx, GetDllDirectory[AW],
	GetFirmwareEnvironmentVariable[AW], GetModuleHandleEx[AW],
	GetNativeSystemInfo, GetProcessHandleCount, GetProcessIoCounters):
	Add functions.
2003-10-07 08:47:06 +00:00
Dimitri Papadopoulos d0ede583ee * include/winbase.h [_WIN32_WINNT >= 0x0501]
(CheckRemoteDebuggerPresent, DebugActiveProcessStop, DebugBreakProcess,
	DebugSetProcessKillOnExit): Add functions.

	* include/winbase.h [_WIN32_WINNT >= 0x0500] (DeleteTimerQueue,
	DeleteTimerQueueEx, DeleteTimerQueueTimer,
	DnsHostnameToComputerName[AW]): Add functions.

	* lib/user32.def (CheckRemoteDebuggerPresent, DebugActiveProcessStop,
	DebugBreakProcess, DebugSetProcessKillOnExit, DeleteTimerQueueEx,
	DeleteTimerQueueTimer, DnsHostnameToComputerName[AW]): Add functions.
2003-10-07 07:14:53 +00:00
Dimitri Papadopoulos b2608a4378 * include/winbase.h (GetVolumePathNamesForVolumeName): Available
on Windows XP and later.
2003-10-07 05:54:53 +00:00
Dimitri Papadopoulos 85c50f7194 * include/commctrl.h (TreeView_Select): Returns BOOL. 2003-10-07 05:41:46 +00:00
Dimitri Papadopoulos d645cc8736 * include/winbase.h (CancelDeviceWakeupRequest): Add function.
* include/winbase.h [_WIN32_WINNT >= 0x0501]
	(CreateMemoryResourceNotification, DeactivateActCtx): Add functions.

	* include/winbase.h [_WIN32_WINNT >= 0x0500] (CreateTimerQueue,
	CreateTimerQueueTimer): Add function.

	* include/winbase.h [_WIN32_WINNT >= 0x0501]
	(MEMORY_RESOURCE_NOTIFICATION_TYPE): Add enumeration.

	* include/winbase.h [_WIN32_WINNT >= 0x0501]
	(DEACTIVATE_ACTCTX_FLAG_FORCE_EARLY_DEACTIVATION): Add constant.

	* include/winnt.h (WT_*): Add constants.

	* lib/user32.def (CancelDeviceWakeupRequest,
	CreateMemoryResourceNotification, CreateTimerQueueTimer,
	DeactivateActCtx): Add functions.
2003-10-06 12:33:32 +00:00
Dimitri Papadopoulos 16640527a7 * include/winbase.h [_WIN32_WINNT >= 0x0400] (ConvertFiberToThread):
Add function. Sometimes I don't understand MSDN. This function is
	available on Windows XP and Server 2003, but the SDK is supposed to
	make it available when _WIN32_WINNT >= 0x0400, or so says the MSDN.
	Mmmh...

	* include/winbase.h [_WIN32_WINNT >= 0x0400] (CreateFiberEx):
	Guard function. Same remark as above.

	* lib/user32.def (ConvertFiberToThread, CreateFiberEx):
	Add functions.
2003-10-06 10:00:31 +00:00
Dimitri Papadopoulos a61556238e * include/winbase.h [_WIN32_WINNT >= 0x0501] (ACTCTX_FLAG_*):
Add constants.

	* include/winbase.h [_WIN32_WINNT >= 0x0501] (ACTCTX[AW]): Add
	structures.

	* include/winbase.h [_WIN32_WINNT >= 0x0501] (ActivateActCtx): Add
	function. MSDN says the first argument is HACTCTX but I'm not sure
	where such a specialized handle is defined, so use HANDLE instead.

	* include/winbase.h [_WIN32_WINNT >= 0x0501] (AttachConsole,
	CheckNameLegalDOS8Dot3[AW]): Add functions.

	* lib/user32.def (ActivateActCtx, AttachConsole,
	CheckNameLegalDOS8Dot3[AW]): Add functions.

	* lib/user32.def (AddLocalAlternateComputerName[AW]): Add functions.
	Unfortunately I don't know which header to put the declarations in.
2003-10-06 09:45:59 +00:00
Dimitri Papadopoulos 928bc4d571 * include/winnls.h (CTRY_KYRGYZSTAN, CTRY_MALDIVES, CTRY_MONGOLIA):
Add constants.

	* include/winnls.h (NLS_FUNCTION, SYSGEOCLASS, SYSGEOTYPE): Add
	constants for National Language Support.

	* include/winnls.h (NLSVERSIONINFO): Add structure for National
	Language Support.

	* include/winnls.h (GEO_ENUMPROC): Add callback for National
	Language Support.

	* include/winnls.h (EnumSystemGeoID, GetCalendarInfo[AW],
	GetGeoInfo[AW], GetUserGeoID, SetCalendarInfo[AW], SetUserGeoID):
	Add functions.

	* include/winnls.h (IsNLSDefinedString, GetNLSVersion): Add
	functions. Strange... I am unable to find which library contains
	these functions. Can't find anything with pexports. Any clue?

	* lib/user32.def (EnumSystemGeoID, GetGeoInfo[AW], GetUserGeoID,
	SetUserGeoID): Add functions.
2003-10-06 09:02:04 +00:00
Dimitri Papadopoulos 971a485f99 * include/winnt.h (LANG_KYRGYZ, LANG_MONGOLIAN, LANG_GALICIAN,
LANG_SYRIAC, LANG_INVARIANT, SUBLANG_KASHMIRI_SASIA): Add constants.

	* include/winnt.h (SUBLANG_AZERI_LATIN, SUBLANG_AZERI_CYRILLIC,
	SUBLANG_ENGLISH_ZIMBABWE, SUBLANG_ENGLISH_PHILIPPINES): Fix wrong
	value for constants.
2003-10-06 06:47:41 +00:00
Dimitri Papadopoulos 083817a45b * include/wincrypt.h (KP_SCHANNEL_ALG): Add constant. Specifying
the algorithms.
2003-10-03 12:14:13 +00:00
Dimitri Papadopoulos f9cb5fcec4 * include/wincrypt.h (SCHANNEL_MAC_KEY, SCHANNEL_ENC_KEY,
INTERNATIONAL_USAGE): Add constants. Specifying the Algorithms
2003-10-03 12:11:04 +00:00
Dimitri Papadopoulos 37b6c4adc5 * include/wincrypt.h (CRYPT_FLAGS_*): Add constants. Protocol flags. 2003-10-03 12:06:05 +00:00
Dimitri Papadopoulos 8e14117566 * include/wincrypt.h (KP_*): Add constants. Needed by
CryptSetKeyParam() and other functions.
2003-10-03 12:04:02 +00:00
Dimitri Papadopoulos b9c5ea438c * include/winuser.h [_WIN32_WINNT >= 0x0501] (EVENT_*, CONSOLE_*):
Add constants, related to Console Accessibility.
2003-10-03 11:38:07 +00:00
Dimitri Papadopoulos 4fd4d446d6 * include/winuser.h [WINVER >= 0x0500] (EVENT_MAX): Ooops...
wrong value for constant.
2003-10-03 10:29:16 +00:00
Dimitri Papadopoulos ba4ad171e6 * include/winuser.h [WINVER >= 0x0500] (EVENT_*): Add constants.
* include/uxtheme.h: Cleanup.
	* include/tmschema.h: Cleanup.
2003-10-03 10:27:27 +00:00
Danny Smith e1ce6d5f2a * include/stdio.h (_filbuf): Add prototype.
(_flsbuf): Add prototype.
	(getc): Add inline version.
	(putc): Likewise.
	(getchar): Likewise.
	(putchar): Likewise.
2003-10-03 10:16:53 +00:00
Danny Smith c536f54ada * mingwex/dirent.c (_treaddir): Reset errno to 0 if end
of directory.
2003-10-02 21:29:51 +00:00
Christopher Faylor 8923806299 * dcrt0.cc (dll_crt0_1): Call newlib __sinit routine to ensure that stdio
buffers are initialized to avoid thread initialization races.
2003-10-02 04:46:59 +00:00
Christopher Faylor 6cb54a4cee * path.cc (win32_device_name): Only fill out destination buffer when it's
really a device.
2003-10-02 03:50:10 +00:00
Luke Dunstan db0d31d13e 2003-10-02 Luke Dunstan <infidel@users.sourceforge.net>
* include/winspool.h (GetDefaultPrinter[AW]): Add functions.
	* lib/winspool.def (GetDefaultPrinter[AW]): Add stubs.
2003-10-02 02:39:43 +00:00
Danny Smith 334117a940 * include/winnt.h (INVALID_FILE_ATTRIBUTES): Fix define. 2003-10-01 21:40:43 +00:00
Christopher Faylor 0e1ba88882 * Makefile.in: Add YA method for generating devices.cc.
* child_info.h: YA update of another magic number.
* gendevices: New file.
* devices.in: New file.
* devices.cc: Regenerate.
* devices.shilka: Remove.
* devices.h: Correctly define device pointers.
(device): Remove now obsolete fields.
(device::native): Renamed from device::fmt.
* dtable.cc (build_fh_dev): Simplify in light of new unit parsing scheme.
(build_fh_pc): Ditto.
* path.cc (win32_device_name): Ditto.
* fhandler.h (fhandler_base::get_native_name): Reflect renaming of fmt to
native.
* fhandler_tty.cc (fhandler_tty_mster::init): Initialize slave device prior to
reporting unit.
2003-10-01 12:36:39 +00:00
Corinna Vinschen 883c5345d4 * fhandler.cc (fhandler_base::fstat): Drop FH_FLOPPY case. 2003-09-30 21:46:08 +00:00
Corinna Vinschen a4b25e31ca * fhandler.h (class fhandler_dev_raw): Add method fstat.
* fhandler_raw.cc (fhandler_dev_raw::fstat): New method.

	Add missing ChangeLog for previous patch.
2003-09-30 21:43:40 +00:00
Corinna Vinschen 7f7eda0780 * devices.h (enum fh_devices): Remove DEV_RAWDRIVE_MAJOR and
FH_RAWDRIVE.
	* devices.shilka (dev_rawdrive_storage): Remove.
	(unit_devices): Remove pointer to dev_rawdrive_storage.
	(uniq_devices): Remove rawdrive entry.
	* dtable.cc (build_fh_pc): Remove DEV_RAWDRIVE_MAJOR case.
	* path.cc (win32_device_name): ditto.
2003-09-30 21:03:57 +00:00
Danny Smith fe5fb62c09 Remove conflict indicator from ChangeLog 2003-09-30 07:53:10 +00:00
Danny Smith 4d36c543ea * include/winuser.h (BSF_*, BSM_*): Sync constants defined in
both winuser.h and dbt.h.
	* include/dbt.h (BSF_*, BSM_*): Likewise.

	* include/winuser.h (struct tagRAWINPUT): Remove
	_ANONYMOUS_UNION tag from named union.
	(struct tagRAWMOUSE): Add _ANONYMOUS_STRUCT to nameless struct.
2003-09-30 07:51:26 +00:00
Dimitri Papadopoulos 684f94e305 * include/dhcpcsvc.h: New file.
Note that MSDN is confused about whether it should start constant
	and structure names with DHCPCAPI or DHCPAPI. It's using both but
	experience suggests it's DHCPCAPI with `C'.

	* lib/dhcpcsvc.def: New file.
2003-09-30 07:40:46 +00:00
Dimitri Papadopoulos e7e4107e39 * include/winuser.h [_WIN32_WINNT >= 0x0501] (RIM_INPUT,
RIM_INPUTSINK): Add constants, for use by WM_INPUT notification.

	* include/winuser.h [_WIN32_WINNT >= 0x0501] (RIDEV_REMOVE,
	RIDEV_EXCLUDE, RIDEV_PAGEONLY, RIDEV_NOLEGACY, RIDEV_INPUTSINK,
	RIDEV_CAPTUREMOUSE, RIDEV_NOHOTKEYS, RIDEV_APPKEYS): Add constants,
	for use in RAWINPUTDEVICE.

	* include/winuser.h [_WIN32_WINNT >= 0x0501]
	(GetRawInputDeviceInfo[AW]): Ooops... there are
	ANSI/Unicode versions of this function.

	* lib/user32.def (GetRawInputDeviceInfo[AW]): Ooops... there
	are ANSI/Unicode versions of this function.
2003-09-30 06:57:46 +00:00
Corinna Vinschen d950ca774f * syslog.cc (vsyslog): Print debug message if ReportEventA fails. 2003-09-29 12:31:22 +00:00
Danny Smith 3c3b1816d8 * include/stdlib.h: Guard non-ISO functions with
!__STRICT_ANSI__, throughout.
2003-09-29 09:16:23 +00:00
Dimitri Papadopoulos 37048d3df7 * include/winuser.h [_WIN32_WINNT >= 0x0501] (RIM_TYPEMOUSE,
RIM_TYPEKEYBOARD, RIM_TYPEHID, MOUSE_MOVE_RELATIVE,
	MOUSE_MOVE_ABSOLUTE, MOUSE_VIRTUAL_DESKTOP,
	MOUSE_ATTRIBUTES_CHANGED, RI_MOUSE_LEFT_BUTTON_DOWN,
	RI_MOUSE_LEFT_BUTTON_UP, RI_MOUSE_RIGHT_BUTTON_DOWN,
	RI_MOUSE_RIGHT_BUTTON_UP, RI_MOUSE_MIDDLE_BUTTON_DOWN,
	RI_MOUSE_MIDDLE_BUTTON_UP, RI_MOUSE_BUTTON_1_DOWNT_BUTTON_DOWN,
	RI_MOUSE_BUTTON_1_UP, RI_MOUSE_BUTTON_2_DOWNHT_BUTTON_DOWN,
	RI_MOUSE_BUTTON_2_UP, RI_MOUSE_BUTTON_3_DOWNDLE_BUTTON_DOWN,
	RI_MOUSE_BUTTON_3_UP, RI_MOUSE_BUTTON_4_DOWN,
	RI_MOUSE_BUTTON_4_UP, RI_MOUSE_BUTTON_5_DOWN,
	RI_MOUSE_BUTTON_5_UP, RI_MOUSE_WHEEL, KEYBOARD_OVERRUN_MAKE_CODE,
	RI_KEY_MAKE, RI_KEY_BREAK, RI_KEY_E0, RI_KEY_E1,
	RI_KEY_TERMSRV_SET_LED, RI_KEY_TERMSRV_SHADOW, RID_INPUT,
	RID_HEADER, RIDI_PREPARSEDDATA, RIDI_DEVICENAME,
	RIDI_DEVICEINFO): Add constants.

	* include/winuser.h [_WIN32_WINNT >= 0x0501] (RAWINPUTHEADER,
	RAWMOUSE, RAWKEYBOARD, RAWHID, RAWINPUT, RAWINPUTDEVICE,
	RAWINPUTDEVICELIST): Add structures.

	* include/winuser.h [_WIN32_WINNT >= 0x0501] (DefRawInputProc,
	GetRawInputBuffer, GetRawInputData, GetRawInputDeviceInfo,
	GetRawInputDeviceList, GetRegisteredRawInputDevices): Add functions.

	* lib/user32.def (DefRawInputProc, GetRawInputBuffer,
	GetRawInputData, GetRawInputDeviceInfo, GetRawInputDeviceList,
	GetRegisteredRawInputDevices): Add functions.
2003-09-29 08:54:50 +00:00
Christopher Faylor e6ba835513 * sigproc.cc (proc_subproc): Restrict permissions on ppid_handle.
* devices.shilka (device::parse): Restore check for tty in unit handling, but
without the previous typo.
* devices.cc: Regenerate.
* devices.h (DEV_CYGDRIVE_MAJOR): Change major number to one used by linux for
"user-mode virtual block device".
2003-09-28 15:46:00 +00:00
Corinna Vinschen 5c770c8431 * devices.h: Move a few device major numbers. Fix typo of FH_UDP.
* device.shilka: Remove /dev/hd device entries, rename all device_hd*
	to device_sd*.
	(device::parse): Disallow units outside lower and upper bounds.
	* dtable.cc (build_fh_pc): Fix typo of FH_UDP.
	* path.cc (win32_device_name): Fix win32 name creation to match new
	device handling.
2003-09-28 09:44:13 +00:00
Christopher Faylor 83abcab4c0 * device.shilka (device::parse): Allow units on other than tty. 2003-09-27 15:19:29 +00:00
Corinna Vinschen 658b4ff8fd * wincap.cc (wincapc::init): Allow requesting server info for NT4 SP6. 2003-09-27 08:14:56 +00:00
Christopher Faylor 341d295422 * path.cc (symlink_info::check): Use new introducer for mknod'ed files.
(parse_device): Ditto.
* syscalls.cc (mknod_worker): Ditto.
2003-09-27 05:44:58 +00:00
Christopher Faylor 4cb3e57917 * devices.shilka: Add /dev/sda disk devices.
* devices.cc: Regenerate.
2003-09-27 05:38:01 +00:00
Christopher Faylor 3c1e8187bd * cygwin-shilka: Remove '#line directives' or suffer debugging oddities. Use
-length option so that device prefixes are used.
* devices.cc: Regenerate.
* syscalls.cc (ttyname): Add debugging output.
2003-09-27 05:35:02 +00:00
Christopher Faylor dfb2ac8088 remove accidental checkin 2003-09-27 03:44:57 +00:00
Christopher Faylor aff9630767 * Makefile.in: Add libusr32.a to DLL_IMPORTS.
* wincap.h (wincaps::is_server): New flag.
(wincapc::version): Change type to OSVERSIONINFOEX.
(wincapc::is_server): New function.
* wincap.cc (wincap_unknown::is_server): New initializer.
(wincap_95): Ditto.
(wincap_95osr2): Ditto.
(wincap_98): Ditto.
(wincap_me): Ditto.
(wincap_nt3): Ditto.
(wincap_nt4): Ditto.
(wincap_nt4sp4): Ditto.
(wincap_2000): Ditto.
(wincap_xp): Ditto.
(wincapc::init): Adapt to OSVERSIONINFOEX.  Add detection of NT server systems.
* sched.cc: Include windows.h and registry.h.
(sched_rr_get_interval): Re-implement for NT systems.
2003-09-27 03:44:31 +00:00
Christopher Faylor a3cbb4a7e0 * fhandler_tty.cc (fhandler_tty_slave::ioctl): Properly set ioctl_request event
when window size changes.  Store failing errno in ioctl_retval (needed?).
2003-09-27 03:14:07 +00:00
Christopher Faylor 63726a5eb4 * fhandler_console.c (fhandler_console::read): Record the state of the SHIFT,
CTRL and ALT keys at the time of the last keyboard input event.
(fhandler_console::ioctl): Handle requests to retrieve the keyboard modifiers
via the TIOCLINUX command.
* fhandler_tty.c (fhandler_tty_slave::read): Ditto.
* include/sys/termios.h (TIOCLINUX): New macro definition.
2003-09-27 02:36:50 +00:00
Pierre Humblet ecc28ff8db 2003-09-26 Pierre Humblet <pierre.humblet@ieee.org>
* pinfo.cc (pinfo::init): Do not give FILE_MAP_WRITE access to Everybody.
	* exceptions.cc (sig_handle_tty_stop): Do not create pinfo parent with
	PID_MAP_WRITE.
	* fhandler_process.cc (fhandler_process::fill_filebuf): Ditto for pinfo p.
	* signal.cc (kill_worker): Ditto for pinfo dest.
2003-09-27 02:30:46 +00:00
Pierre Humblet 1eb451937a 2003-09-26 Pierre Humblet <pierre.humblet@ieee.org>
* pinfo.h (pinfo::set_acl): Declare.
	* pinfo.cc (pinfo_fixup_after_fork): Duplicate with no rights.
	(pinfo::set_acl): New.
	* spawn.cc (spawn_guts): Call myself.set_acl.
2003-09-27 01:58:23 +00:00
Pierre Humblet 6806a8b51f 2003-09-26 Pierre Humblet <pierre.humblet@ieee.org>
* uinfo.cc (cygheap_user::init): Make sure the current user appears
	in the default DACL. Rearrange to decrease the indentation levels.
	Initialize the effec_cygsid directly.
	(internal_getlogin): Do not reinitialize myself->gid. Open the process
	token with the required access.
	* cygheap.h (class cygheap_user): Delete members pid and saved_psid.
	Create members effec_cygsid and saved_cygsid.
	(cygheap_user::set_sid): Define inline.
	(cygheap_user::set_saved_sid): Ditto.
	(cygheap_user::sid): Modify.
	(cygheap_user::saved_sid): Modify.
	* cygheap.cc (cygheap_user::set_sid): Delete.
	(cygheap_user::set_saved_sid): Ditto.
	* sec_helper.cc (sec_acl): Set the correct acl size.
	* autoload.cc (FindFirstFreeAce): Add.
	* security.h: Define ACL_DEFAULT_SIZE.
2003-09-27 01:56:36 +00:00
Dimitri Papadopoulos 349a6402fe * include/winable.h (BlockInput): Add function.
* include/winable.h (WS_ACTIVECAPTION): Add constant.
	For use with WINDOWINFO structure.

	* include/winuser.h [_WIN32_WINNT >= 0x0500] (LockWorkStation):
	Add function.

	* include/winuser.h [_WIN32_WINNT >= 0x0501] (IsWinEventHookInstalled):
	Add function.

	* include/winuser.h [WINVER >= 0x0500] (UnhookWinEvent):
	Add function...

	* include/winable.h [WINVER < 0x0500] (UnhookWinEvent):
	...and duplicate.

	* include/winuser.h [_WIN32_WINNT >= 0x0403] (SendInput):
	Guard function...

	* include/winable.h [_WIN32_WINNT < 0x0403] (SendInput):
	...and duplicate.

	* include/winuser.h [WINVER >= 0x0500] (NotifyWinEvent):
	Guard function...

	* include/winable.h [WINVER < 0x0500] (NotifyWinEvent):
	...and duplicate.

	* include/winuser.h [WINVER >= 0x0500] (MOUSEINPUT, KEYBDINPUT,
	HARDWAREINPUT, INPUT): Guard structures...

	* include/winable.h [WINVER < 0x0500] (MOUSEINPUT, KEYBDINPUT,
	HARDWAREINPUT, INPUT): ...and duplicate.

	* include/winuser.h [_WIN32_WINNT >= 0x0403] (INPUT_MOUSE,
	INPUT_KEYBOARD, INPUT_HARDWARE): Guard constants...

	* include/winable.h [_WIN32_WINNT < 0x0403] (INPUT_MOUSE,
	INPUT_KEYBOARD, INPUT_HARDWARE): ...and duplicate.

	* include/winuser.h: Move around some lines. Reformat according
	to recommended or dominant style. Remove FAR keyword.

	* include/winable.h: Move around some lines.

	* lib/user32.def (BlockInput, IsWinEventHookInstalled,
	LockWorkStation, UnhookWinEvent): Add functions.
2003-09-26 14:46:33 +00:00
Dimitri Papadopoulos b6c1b88ad4 * include/winuser.h [_WIN32_WINNT >= 0x0501] (PrintWindow,
PW_CLIENTONLY): Add function and constant.

	* lib/user32.def (PrintWindow): Add function.
2003-09-26 10:41:23 +00:00
Dimitri Papadopoulos 46ffaf5071 * include/winuser.h (RealGetWindowClassA[AW]): Add function.
* lib/user32.def (RealGetWindowClassA[AW]): Add function.
2003-09-26 10:31:43 +00:00
Dimitri Papadopoulos 2bbffa5b85 * include/winuser.h [WINVER >= 0x0500] (RegisterDeviceNotification[AW],
DEVICE_NOTIFY_WINDOW_HANDLE, DEVICE_NOTIFY_SERVICE_HANDLE,
	DEVICE_NOTIFY_ALL_INTERFACE_CLASSES): Add function and constants.

	* lib/user32.def (RegisterDeviceNotification[AW]): Add function.
2003-09-26 10:20:46 +00:00
Dimitri Papadopoulos d7a6ce1ab5 * include/winuser.h [WINVER >= 0x0500] (SetWinEventHook, WINEVENTPROC,
WINEVENT_OUTOFCONTEXT, WINEVENT_SKIPOWNTHREAD, WINEVENT_SKIPOWNPROCESS,
	WINEVENT_INCONTEXT): Add function, typedef, and constants.

	* include/winable.h [WINVER < 0x0500] (SetWinEventHook, WINEVENTPROC,
	WINEVENT_OUTOFCONTEXT, WINEVENT_SKIPOWNTHREAD, WINEVENT_SKIPOWNPROCESS,
	WINEVENT_INCONTEXT): Add function, typedef, and constants.

	* include/winuser.h [_WIN32_WINNT >= 0x0500] (UserHandleGrantAccess):
	Add function.

	* lib/user32.def (SetWinEventHook, UserHandleGrantAccess):
	Add functions.
2003-09-26 09:49:52 +00:00
Corinna Vinschen 186a0e42de * mmap.cc (munmap): Use correct address and length parameters when
calling fhandler's munmap.
2003-09-26 08:50:12 +00:00
Corinna Vinschen 0a0a45e22a * spawn.cc (spawn_guts): Set errno to E2BIG if command line is
longer than CreateProcess allows (32K).
2003-09-26 08:45:24 +00:00
Dimitri Papadopoulos 8ff4b3513d * include/winnt.h (ACE_INHERITED_OBJECT_TYPE_PRESENT,
ACE_OBJECT_TYPE_PRESENT): Add constants. For use with
	OBJECTS_AND_NAME structure.
2003-09-26 08:19:30 +00:00
Dimitri Papadopoulos 72b0db800a * include/aclapi.h [_WIN32_WINNT >= 0x0501] (GetInheritanceSource[AW]):
Add functions. Don't know what PFN_OBJECT_MGR_FUNCTS is so use
	void* instead.

	* include/accctrl.h [_WIN32_WINNT >= 0x0501] (INHERITED_FROM[AW],
	PINHERITED_FROM[AW]): Add structures.

	* lib/user32.def (GetInheritanceSource[AW]): Add functions.
2003-09-26 08:07:39 +00:00
Corinna Vinschen 32c9d3a91c Avoid compile time error when including winuser.h:
* include/winuser.h (FLASHWINFO, PFLASHWINFO): Define for 98/Me, too.
2003-09-26 07:51:26 +00:00
Christopher Faylor 912f81352f * dtable.cc (build_fh_name): Return pointer to a 'nodevice' rather than a NULL
pointer or suffer SEGVs with invalid paths.
2003-09-26 03:26:44 +00:00
Christopher Faylor 6c68fbbc61 * fork.cc (fork_parent): Detect failed pinfo constructor.
* spawn.cc (spawn_guts): Don't overwrite ENOMEM errno on failed pinfo
constructor.
2003-09-26 03:20:30 +00:00
Christopher Faylor 177989407a * spawn.cc (spawnve): Remove vfork short circuit and let caller deal with error
return.
2003-09-26 03:09:42 +00:00
Christopher Faylor 570be9788f * spawn.cc (spawn_guts): Catch potential error from pinfo.remember. Change
debug messages to make sense.  Pass correct value to pinfo constructor.  Ensure
cleanup after errors.  Always reimpersonate after errors.
2003-09-26 02:23:34 +00:00
Danny Smith 711d0c752a * lib/version.def (LIBRARY): Quote name. 2003-09-25 20:24:05 +00:00
Dimitri Papadopoulos e9c00b0eeb * include/winuser.h (GetClipboardSequenceNumber): Add functions
and constants.
* include/winuser.h (GetGuiResources, GR_GDIOBJECTS,
GR_USEROBJECTS): Add functions and constants.
* include/winuser.h (GetMouseMovePointsEx, GMMP_USE_DISPLAY_POINTS,
GMMP_USE_HIGH_RESOLUTION_POINTS): Add functions and constants.
* include/winuser.h (InSendMessageEx, ISMEX_NOSEND, ISMEX_CALLBACK,
ISMEX_NOTIFY, ISMEX_REPLIED, ISMEX_SEND): Add functions and
constants.
* lib/user32.def (GetClipboardSequenceNumber, GetGuiResources,
GetMouseMovePointsEx, InSendMessageEx): Add functions.
2003-09-25 15:04:55 +00:00
Dimitri Papadopoulos d20c4a577d * include/winuser.h (BroadcastSystemMessage, BroadcastSystemMessageA,
BroadcastSystemMessageW, BroadcastSystemMessageEx,
BroadcastSystemMessageExA, BroadcastSystemMessageExW,
BSMINFO, BSF_ALLOWSFW, BSF_SENDNOTIFYMESSAGE, BSF_LUID,
BSF_RETURNHDESK): Add functions and constants.
* include/winuser.h (EnumDisplaySettingsEx, EnumDisplaySettingsExA,
EnumDisplaySettingsExW, EDS_RAWMODE): Add functions and constant.
* include/winuser.h (IsGUIThread, IsHungAppWindow, FlashWindowEx,
GetProcessDefaultLayout, SetProcessDefaultLayout,
RealChildWindowFromPoint, SetProcessDefaultLayout,
SwitchToThisWindow): Add functions.
* lib/user32.def (BroadcastSystemMessageA, BroadcastSystemMessageW,
BroadcastSystemMessageExA, BroadcastSystemMessageExW,
EnumDisplaySettingsExA, EnumDisplaySettingsExW, FlashWindowEx,
GetProcessDefaultLayout, IsGUIThread, IsHungAppWindow,
RealChildWindowFromPoint, SetProcessDefaultLayout,
SwitchToThisWindow): Add function.
2003-09-25 14:11:47 +00:00
Christopher Faylor b498c877a1 * spawn.cc (spawn_guts): Move system signal handling stuff after CreateProcess
error check.
2003-09-25 13:49:21 +00:00
Dimitri Papadopoulos cb86a98b3b * include/winuser.h (DeregisterShellHookWindow): Add function.
* include/winuser.h [_WIN32_WINNT >= 0x0500] (EndTask): Add function.
* lib/user32.def (EndTask): Add function.
* include/winuser.h (WINVER, _WIN32_WINNT): It's better (?) to use _WIN32_WINNT instead of WINVER to test for Windows 2000.
* include/winable.h: Reorder target macros.
* lib/*.def: Cleanup.
2003-09-25 11:22:22 +00:00
Dimitri Papadopoulos 9a88a83d5a * include/winuser.h [WINVER >= 0x0500] (AnimateWindow): Add
function.
* lib/user32.def (AnimateWindow): Add function. By the way
there are ~ 140 symbols missing from this file when comparing
to user32.dll on Windows XP.
2003-09-25 08:26:00 +00:00
Dimitri Papadopoulos 12d295911e * include/winuser.h [WINVER >= 0x0500] (AW_SLIDE, AW_ACTIVATE,
AW_BLEND, AW_HIDE, AW_CENTER, AW_HOR_POSITIVE, AW_HOR_NEGATIVE,
AW_VER_POSITIVE, AW_VER_NEGATIVE): Add constants. For use by
AnimateWindow().
2003-09-25 08:04:30 +00:00
Dimitri Papadopoulos 75e1776af6 * include/winuser.h [WINVER >= 0x0500] (GetGUIThreadInfo,
LPGUITHREADINFO): Add function and associated typedef...
* include/winable.h [WINVER < 0x0500] (GetGUIThreadInfo,
LPGUITHREADINFO): ...and duplicate them in <winable.h> as
seems to be required on older versions of Windows.
2003-09-25 07:53:44 +00:00
Pierre Humblet 64150cfc6a 2003-09-25 Pierre Humblet <pierre.humblet@ieee.org>
* shared_info.h: Update CURR_USER_MAGIC, CURR_SHARED_MAGIC and
	SHARED_INFO_CB.
	(mount_info::cb): Delete.
	(mount_info::version): Delete.
	(shared_info::delqueue): Delete.
	* Makefile.in: Do magic for USER_MAGIC, class user_info, instead
	of for mount_info.
2003-09-25 04:03:53 +00:00
Christopher Faylor cd2bce7142 * include/tzfile.h: Add some missing entries. 2003-09-25 03:51:51 +00:00
Christopher Faylor dbf193cea8 * include/paths.h: Add some missing entries. 2003-09-25 03:46:20 +00:00
Christopher Faylor 7759daa979 * shared_info.h (CURR_MOUNT_MAGIC): Fix.
* sigproc.cc (sigpacket): New structure.
(sig_send): Fill out sigpacket structure to send to signal thread rather than
racily sending separate packets.
(wait_sig): Use sigpacket structure to receive info from signal sender.
2003-09-25 03:06:36 +00:00
Pierre Humblet 64f74184bb *** empty log message *** 2003-09-25 02:33:27 +00:00
Pierre Humblet 138847683d 2003-09-24 Pierre Humblet <pierre.humblet@ieee.org>
* shared_info.h (class user_info): New.
	(cygwin_user_h): New.
	(user_shared): New.
	(enum shared_locations): Replace SH_MOUNT_TABLE by SH_USER_SHARED;
	(mount_table): Change from variable to macro.
	* shared.cc: Use sizeof(user_info) in "offsets".
	(user_shared_initialize): Add "reinit" argument to indicate need
	to reinitialize the mapping. Replace "mount_table" by "user_shared"
	throughout. Call user_shared->mountinfo.init and
	user_shared->delqueue.init.
	(shared_info::initialize): Do not call delqueue.init.
	(memory_init): Add argument to user_shared_initialize.
	* child_info.h (child_info::mount_h): Delete.
	(child_info::user_h): New.
	* sigpproc.cc (init_child_info): Use user_h instead of mount_h.
	* dcrt0.cc (_dll_crt0): Ditto.
	* fhandler_disk_file.cc (fhandler_disk_file::close): Use
	user_shared->delqueue instead of cygwin_shared->delqueue.
	* fhandler_virtual.cc (fhandler_virtual::close): Ditto.
	* syscalls.cc (close_all_files): Ditto.
	(unlink): Ditto.
	(seteuid32): Add argument to user_shared_initialize.
2003-09-25 02:29:05 +00:00
Christopher Faylor a4e167fa27 correct incorrect checkin 2003-09-25 00:38:45 +00:00
Christopher Faylor 7ac6173643 * devices.cc: New file.
* devices.gperf: New file.
* devices.shilka: New file.
* cygwin-gperf: New file.
* cygwin-shilka: New file.
* fhandler_fifo.cc: New file.
* fhandler_nodevice.cc : New file.  Reorganize headers so that path.h precedes
fhandler.h throughout.  Remove device argument and unit arguments from fhandler
constructors throughout.  Remove pc arguments to fhandler functions and use
internal pc element instead, throughout.  Use dev element in pc throughout.
Use major/minor elements rather than units and device numbers previously in
fhandler class.  Use correct methods for fhandler file names rather than
directly accessing file name variables, throughout.
* Makefile.in (DLL_OFILES): Add devices.o, fhandler_fifo.o
* dcrt0.cc (dll_crt0_1): Call device::init.
* devices.h: Renumber devices based on more Linux-like major/minor numbers.
Add more devices.  Declare standard device storage.
(device): Declare struct.
* dir.cc (opendir): Use new 'build_fh_name' to construct a fhandler_* type.
* dtable.cc (dtable::get_debugger_info): Ditto.
(cygwin_attach_handle_to_fd): Ditto.
(dtable::release): Remove special FH_SOCKET case in favor of generic
"need_fixup_before" test.
(dtable::init_std_file_from_handle): Use either build_fh_dev or build_fh_name
to build standard fhandler.
(dtable::build_fh_name): Renamed from dtable::build_fhandler_from_name.  Move
out of dtable class.  Don't accept a path_conv argument.  Just build it here
and pass it to:
(build_fh_pc): Renamed from dtable::build_fhandler.  Move out of dtable class.
Use intrinsic device type in path_conv to create new fhandler.
(build_fh_dev): Renamed from dtable::build_fhandler.  Move out of dtable class.
Simplify arguments to just take new 'device' type and a name.  Just return
pointer to fhandler rather than trying to insert into dtable.
(dtable::dup_worker): Accommodate above build_fh name changes.
(dtable::find_fifo): New (currently broken) function.
(handle_to_fn): Use strechr for efficiency.
* dtable.h: Reflect above build_fh name changes and argument differences.
(fhandler_base *&operator []): Return self rather than copy of self.
* fhandler.cc (fhandler_base::operator =): Use pc element to set normalized
path.
(fhandler_base::set_name): Ditto.
(fhandler_base::raw_read): Use method to access name.
(fhandler_base::write): Correctly use get_output_handle rather than get_handle.
(handler_base::device_access_denied): New function.
(fhandler_base::open): Eliminate pc argument and use pc element of
fhandler_base throughout.
(fhandler_base::fstat): Detect if device is based in filesystem and use
fstat_fs to calculate stat, if so.
(fhandler_base::fhandler_base): Eliminate handling of file names and, instead,
just free appropriate component from pc.
(fhandler_base::opendir): Remove path_conv parameter.
* fhandler.h: Remove all device flags.
(fhandler_base::pc): New element.
(fhandler_base::set_name): Change argument to path_conv.
(fhandler_base::error): New function.
(fhandler_base::exists): New function.
(fhandler_base::pc_binmode): New function.
(fhandler_base::dev): New function.
(fhandler_base::open_fs): New function.
(fhandler_base::fstat_fs): New function.
(fhandler_base::fstat_by_name): New function.
(fhandler_base::fstat_by_handle): New function.
(fhandler_base::isfifo): New function.
(fhandler_base::is_slow): New function.
(fhandler_base::is_auto_device): New function.
(fhandler_base::is_fs_special): New function.
(fhandler_base::device_access_denied): New function.
(fhandler_base::operator DWORD&): New operator.
(fhandler_base::get_name): Return normalized path from pc.
(fhandler_base::get_win32_name): Return windows path from pc.
(fhandler_base::isdevice): Renamed from is_device.
(fhandler_base::get_native_name): Return device format.
(fhandler_fifo): New class.
(fhandler_nodevice): New class.
(select_stuff::device_specific): Remove array.
(select_stuff::device_specific_pipe): New class element.
(select_stuff::device_specific_socket): New class element.
(select_stuff::device_specific_serial): New class element.
(select_stuff::select_stuff): Initialize new elements.
* fhandler_disk_file.cc (fhandler_base::fstat_by_handle): Move to base class
from fhandler_disk_file.
(fhandler_base::fstat_by_name): Ditto.
(fhandler_base::fstat_by_name): Ditto.
(fhandler_disk_file::open): Move most functionality into
fhandler_base::open_fs.
(fhandler_base::open_fs): New function.
(fhandler_disk_file::close): Move most functionality into
fhandler_base::close_fs.
(fhandler_base::close_fs): New function.
* fhandler_mem.cc (fhandler_dev_mem::open): Use device name in debugging
output.
* fhandler_socket.cc (fhandler_socket::set_connect_secret): Copy standard
urandom device into appropriate place.
(fhandler_socket::accept): Reflect change in fdsock return value.
* fhandler_tty.cc: See "throughouts" above.
* net.cc: Accommodate fdsock change throughout.
(fdsock): Return success or failure, accept fd argument and device argument.
* path.cc (symlink_info::major): New element.
(symlink_info::minor): New element.
(symlink_info::parse_device): Declare new function.
(fs_info::update): Accommodate changes in path_conv class.
(path_conv::fillin): Ditto.
(path_conv::return_and_clear_normalized_path): Eliminate.
(path_conv::set_normalized_path): New function.
(path_conv::path_conv): Set info in dev element.  Use path_conv methods Check
for FH_FS rather than FH_BAD to indicate when to fill in filesystem stuff.
where appropriate rather than direct access.  Use set_normalized_path to set
normalized path.
(windows_device_names): Eliminate.
(get_dev): Ditto.
(get_raw_device_number): Ditto.
(get_device_number): Ditto.
(win32_device_name): Call new device name parser to do most of the heavy
lifting.
(mount_info::conv_to_win32_path): Fill in dev field as appropriate.
(symlink_worker): Handle new device files.
(symlink_info::check): Ditto.
(symlink_info::parse_device): Define new function.
* path.h (executable_states): Move here from fhandler.h.
(fs_info): Rename variables to *_storage and create methods for accessing same.
(path_conv): Add dev element, remove devn and unit and adjust inline methods to
accommodate.
(set_normalized_path): Declare new function.
* pinfo.cc (_pinfo::commune_recv): Add broken support for handling fifos.
(_pinfo::commune_send): Ditto.
* pipe.cc (fhandler_pipe::close): check for existence of handle before closing
it.
(handler_pipe::create): Rename from make_pipe.  Change arguments to accept
fhandler_pipe array.  Accommodate fifos.
(pipe): Rework to deal with fhandler_pipe::create changes.
(_pipe): Ditto.
* select.cc: Use individual device_specific types throughout rather than
indexing with obsolete device number.
(set_bits): Use is_socket call rather than checking device number.
* shared_info.h (CURR_MOUNT_MAGIC): Update.
(conv_to_win32_path): Reflect addition of device argument.
* syscalls.cc (mknod_worker): New function.
(open): Use build_fh_name to build fhandler.
(chown_worker): Detect if this is an 'auto' device rather than an on-filesystem
device and handle appropriately.
(chmod_device): New function.
(chmod): Detect if this is an 'auto' device rather than an on-filesystem device
and handle appropriately.  Use chmod_device to set mode of in-filesystem
devices.
(stat_worker): Eliminate path_conv argument.  Call build_fh_name to construct
fhandler.  Use fh->error() rather than pc->error to detect errors in fhandler
construction.
(access_worker): New function pulled from access.  Accommodate in-filesystem
devices.
(access): Use access_worker.
(fpathconf): Detect if this is an 'auto' device rather than an on-filesystem
device and handle appropriately.
(mknod_worker): New function.
(mknod32): New function.
(chroot): Free normalized path -- assuming it was actually cmalloced.
* tty.cc (create_tty_master): Tweak for new device class.
(tty::common_init): Ditto.
* winsup.h (stat_worker): Remove.
(symlink_worker): Declare.
* exceptions.cc (set_process_mask): Just call sig_dispatch_pending and don't
worry about pending_signals since sig_dispatch_pending should always do the
right thing now.
(sig_handle): Reorganize SIGCONT handling to more closely conform to SUSv3.
* pinfo.h: Move __SIG enum to sigproc.h.
(PICOM_FIFO): New enum element.
(_pinfo): Remove 'thread2signal' stuff throughout class.
(_pinfo::commune_send): Make varargs.
(_pinfo::sigtodo): Eliminate.
(_pinfo::thread2signal): Ditto.
* signal.cc (kill_worker): Eliminate call to setthread2signal.
* sigproc.cc (local_sigtodo): Eliminate.
(getlocal_sigtodo): Ditto.
(sigelem): New class.
(pending_signals): New class.
(sigqueue): New variable, start of sigqueue linked list.
(sigcatch_nonmain): Eliminate.
(sigcatch_main): Eliminate.
(sigcatch_nosync): Eliminate.
(sigcomplete_nonmain): Eliminate.
(pending_signals): Eliminate.
(sig_clear): Call signal thread to clear pending signals, unless already in
signal thread.
(sigpending): Call signal thread to get pending signals.
(sig_dispatch_pending): Eliminate use of pending_signals and just check
sigqueue.
(sigproc_terminate): Eliminate all of the obsolete semaphore stuff.  Close
signal pipe handle.
(sig_send): Eliminate all of the obsolete semaphore stuff and use pipe to send
signals.
(getevent): Eliminate.
(pending_signals::add): New function.
(pending_signals::del): New function.
(pending_signals::next): New function.
(wait_sig): Eliminate all of the obsolete semaphore stuff.  Use pipe to
communicate and maintain a linked list of signals.
* sigproc.h: Move __SIG defines here.  Add __SIGPENDING.
(sig_dispatch_pending): Remove "C" specifier.
(sig_handle): Accept a mask argument.
* thread.cc: Remove signal handling considerations throughout.
2003-09-25 00:37:18 +00:00
Dimitri Papadopoulos 2d9af27bf3 Remove test code. 2003-09-24 13:47:46 +00:00
Dimitri Papadopoulos e3ae4e4f62 * include/GL/glu.h (gluErrorUnicodeStringWIN): Add macro
function. MSDN suggests using gluErrorUnicodeStringWIN
instead of gluErrorString, as it allows both ANSI and Unicode
error strings.
* include/GL/glu.h (gluErrorUnicodeStringEXT): Make the
returned pointer const for consistency reasons.
2003-09-24 13:21:52 +00:00
Dimitri Papadopoulos 288beac8c6 * include/GL/glu.h (gluErrorUnicodeStringEXT): Add function.
Function exists in glu32.def but is undocumented on MSDN.
A Google search came up with this declaration.
2003-09-24 12:44:09 +00:00
Dimitri Papadopoulos ea6a4e6c11 * include/GL/glu.h: Rewritten from scratch. Started from GLU 1.3
headers from OpenGL Sample Implementation. Windows ships with
GLU 1.2 so some constants and functions were removed. Then some
typedef's and function declarations were reworked to look like
the previous GL/glu.h.
2003-09-24 12:33:20 +00:00
Dimitri Papadopoulos 1534dca858 * include/uxtheme.h (PROPERTYORIGIN): the documentation of
PROPERTYORIGIN suggests it's `PROPERTYORIGIN' but experimentation
suggests it's actually `enum PROPERTYORIGIN'. Keep both.
* include/uxtheme.h (THEME_SIZE, THEMESIZE): MSDN suggests
it's either `THEME_SIZE' or `THEMESIZE' but experimentation
suggests it's actually `enum THEMESIZE'. Keep `THEME_SIZE'
and `enum THEMESIZE'.
2003-09-24 10:03:39 +00:00
Dimitri Papadopoulos a0a40c99fc Previous commit went wrong. 2003-09-24 10:01:44 +00:00
Dimitri Papadopoulos 12318a458c * include/uxtheme.h: New file.
* include/tmschema.h: New file.
* include/uxtheme.def: New file.
* lib/test.c: Include uxtheme.h, tmschema.h.
2003-09-24 09:29:20 +00:00
Danny Smith fd4b566a16 * include/io.h (_fileno): Remove prototype.
(fileno): Likewise.
	(FILENAME_MAX): Define, if needed.
	Don't include <stdio.h>.
	* include/stdio.h (FILENAME_MAX): Protect against
	prior definition.
	(_fileno): Define macro implementation.
	(fileno): Likewise.
2003-09-24 08:26:23 +00:00
Dimitri Papadopoulos d771730336 Didn't follow GNU standards in previous commits. Cleaning up. 2003-09-24 08:02:43 +00:00
Danny Smith f610c4f993 * include/inttypes.h: Include _mingw.h. 2003-09-24 01:06:09 +00:00
Danny Smith 8852e9c5f1 * include/_mingw.h (__CRT_INLINE): Define.
* include/ctype.h: Replace 'extern inline' with __CRT_INLINE,
	throughout
	* include/inttypes.h: Likewise.
	* include/math.h: Likewise.
	* include/stdio.h: Likewise.
	* include/stdlib.h: Likewise.
	* include/string.h: Likewise.
	* include/wchar.h: Likewise.
	* include/wctype.h: Likewise.
2003-09-24 00:41:01 +00:00
Dimitri Papadopoulos 92694c7a96 This fixes regression in <winable.h> introduced by previous change. 2003-09-23 15:11:12 +00:00
Dimitri Papadopoulos 729d289070 New CHILDID_SELF constant.
More duplicates in <winuser.h> and <winable.h>.
2003-09-23 09:09:50 +00:00
Dimitri Papadopoulos dbb760bdb8 Bring back OBJID_* and GUITHREADINFO constants in <winuser.h>.
Some constants and structures are duplicated in <winable.h> and <winuser.h>.
Add GUI_* and new KEYEVENTF_* constants.
2003-09-23 08:51:57 +00:00
Dimitri Papadopoulos 679ff6d4fb add some missing constants 2003-09-23 07:35:54 +00:00
Christopher Faylor 3400b4fc44 * dcrt0.cc (do_exit): Eliminate "C" linkage. Call events_terminate early.
(exit_states): Move out of source file into header file.
* winsup.h: Move exit_states here.  Remove "C" linkage from do_exit
declaration.
* debug.cc (lock_debug): Remove explicit (and incorrect) external for
exit_state.
* sigproc.cc (sig_dispatch_pending): Don't flush signals if exiting.
2003-09-23 04:02:07 +00:00
Danny Smith d92d731fa5 2003-09-22 Roland Schwingel <rolandschwingel@users.sourceforge.net>
* mingwex/dirent.c (_topendir): Allocate enough memory for
	DIR struct in UNICODE case too.
2003-09-22 21:32:52 +00:00
Christopher Faylor 7ed1b504b6 * kill.cc (main): Allow negative pids (indicates process groups). 2003-09-20 20:24:33 +00:00
Christopher Faylor 0199487e6a * spawn.cc (pthread_cleanup): New struct.
(do_cleanup): New function.
(spawn_guts): Initialize struct for pthread_cleanup handling to ensure proper
restoration of signals if/when thread is cancelled.  Restore settings using
pthread_cancel_pop.
2003-09-20 19:51:48 +00:00
Christopher Faylor 5ab307ccfd * include/cygwin/version.h: Bump DLL minor number to 6. 2003-09-20 03:15:57 +00:00
Christopher Faylor 370b1173b0 * thread.h (__reent_t::init_clib): Declare new function.
* thread.cc (__reent_t::init_clib): Define new function.
(pthread::thread_init_wrapper): Use __reent_t::init_clib to init local clib
storage and set std{in,out,err} appropriately.
2003-09-20 02:43:18 +00:00
Christopher Faylor bc54734d15 fix accidental checkin 2003-09-20 00:43:33 +00:00
Christopher Faylor d1fb625d2b * syscalls.cc (system): Strip signal considerations from here so that they are
not inherited by a child process.
* spawn.cc (spawn_guts): Handle system() signal stuff here.
* winsup.h (_P_SYSTEM): Define.
2003-09-20 00:31:13 +00:00
Corinna Vinschen 41946df611 * fhandler_tty.cc (fhandler_pty_master::process_slave_output):
Handle buf == NULL as flushing the buffer.
	(fhandler_tty_slave::read): Handle ptr == NULL as flushing the buffer.
	(fhandler_tty_slave::tcflush): Implement input queue flushing by
	calling read with NULL buffer.
	(fhandler_pty_master::tcflush): Ditto, calling process_slave_output.
	* termios.cc (tcflush): Check for legal `queue' value.  Return
	EINVAL otherwise.
2003-09-18 18:54:48 +00:00
Christopher Faylor b1e00863f3 * parse_pe.cc (exclusion::sort_and_check): Make error message a little more
explicit and ignore (hopefully) harmless region overlap.
2003-09-18 01:46:18 +00:00
Christopher Faylor f7f542063b * syscalls.cc (gethostid): Add lpFreeBytesAvailable argument to
GetDiskFreeSpaceEx call since NT4 requires it.
2003-09-17 21:47:12 +00:00
Danny Smith cb16ce2c2e * include/winuser.h (UpdateLayeredWindow): Protect against NOGDI.
Thanks to Will Levine  <willll@users.sourceforge.net>
2003-09-17 20:41:53 +00:00
Christopher Faylor 11dcd1546f * fhandler_process.cc (fhandler_process::fill_filebuf): Open pinfo with
PID_MAP_RW.
* sigproc.cc (talktome): Ditto for winpids.
2003-09-17 02:10:13 +00:00
Christopher Faylor 9ee691211b fix stupid typo 2003-09-17 01:43:27 +00:00
Christopher Faylor deb648cc8b * pinfo.h (winpids::pid_access): New element.
(winpids::winpids): Rejigger to set pinfo_access.
* pinfo.cc (winpids::add): Try to open shared memory region with supplied
pinfo_access first, then default to readonly.
* fhandler_termios.cc (tty_min::kill_pgrp): When getting list of pids to work
with, suggest opening with PID_MAP_RW.
* signal.cc (kill_pgrp): Ditto.
* sigproc.cc (sig_send): Perform a write check on todo prior to attempting to
increment it.  Return EACCES if we can't write to it.
2003-09-17 01:15:56 +00:00
Corinna Vinschen 1498189ca8 * cygheap.cc (cygheap_user::set_saved_sid): Rename from set_orig_sid.
* cygheap.h (class cygheap_user): Rename orig_psid, orig_uid and
	orig_gid to saved_psid, saved_uid and saved_gid respectively.
	Rename methods orig_sid and set_orig_sid to saved_sid and set_saved_sid
	respectively.
	* sec_helper.cc (sec_acl): Accomodate above changes.
	* spawn.cc (spawn_guts): Ditto.
	* uinfo.cc (uinfo_init): Ditto.
2003-09-16 09:24:52 +00:00
Christopher Faylor c429c346d8 fix typo 2003-09-16 03:59:35 +00:00
Christopher Faylor 2bfdb22e23 * getopt.cc (opterr): Reinstate initialization.
(optind): Ditto.
(optopt): Ditto.
* pinfo.cc: Include cygheap.h or suffer compile error.
* shared.h: Reset magic number.
2003-09-16 03:39:55 +00:00
Christopher Faylor 8ec37f2168 * exceptions.cc (sig_handle_tty_stop): Fix boneheaded mistake by using correct
check for parent state rather than inverted check.
2003-09-16 03:07:27 +00:00
Pierre Humblet c61ada9bd3 2003-09-15 Pierre Humblet <pierre.humblet@ieee.org>
* security.h (__sec_user): Add "access2" argument.
	(sec_acl): Add "original" and "access2" arguments.
	(sec_user): Add "sid2" and "access2" argument. Remove dependence on
	allow_ntsec.
	(sec_user_nih): Ditto.
	* sec_helper.cc (__sec_user): Add "has_security" test.
	Call sec_acl with new arguments, letting it handle original_sid.
	(sec_acl): Add "original" and "access2" arguments. Handle original_sid
	depending on flag but avoiding duplicates. Use "access2" for sid2.
	* pinfo.cc (pinfo::init): Use security attributes created by sec_user
	when creating the mapping.
	* security.cc (create_token): Adjust arguments in call to sec_acl.
	Call sec_user instead of __sec_user.
	* syscall.cc (seteuid32):  Adjust arguments in call to sec_acl. Remove
	now unnecessary test. Remove useless conversions to psid.
	* dcrt0.cc (dll_crt0_1): Call cygsid::init before pinfo_init.
2003-09-16 00:45:50 +00:00
Earnie Boyd 7fe8e90299 * include/_mingw.h: Increment version to 3.2.
* Makefile.in: Ditto.
2003-09-15 15:21:53 +00:00
Earnie Boyd 42f4ef1131 * include/w32api.h: Increment version to 2.5.
* Makefile.in: Ditto.
2003-09-15 12:05:40 +00:00
Danny Smith b639ac2b93 2003-09-15 Danny Smith <dannysmith@users.sourceforge.net>
* include/ws2spi.h (LPWSPBIND): Change CONST LPSOCKADDR to
	const struct sockaddr*.
	(LPWSPCONNECT): Likewise.
	(LPWSPJOINLEAF): Likewise.
	(LPWSPSENDTO): Likewise.
	Tanks to Sebastian Nowak  <snowak1@users.spourceforge.net>

2003-09-15  Filip Navara  <xnavara@volny.cz>

	* include/commctrl.h (TCIS_BUTTONPRESSED, TCIS_HIGHLIGHTED):
	Add definitions.

2003-09-15  Sascha Brawer  <brawer@dandelis.ch>

	* include/winuser.h (DISPLAY_DEVICE_ATTACHED_TO_DESKTOP,
	DISPLAY_DEVICE_PRIMARY_DEVICE, DISPLAY_DEVICE_MIRRORING_DRIVER,
	DISPLAY_DEVICE_VGA_COMPATIBLE, DISPLAY_DEVICE_REMOVABLE,
	DISPLAY_DEVICE_MODESPRUNED): Define constants.
	(ChangeDisplaySettingsEx[A,W]): Add prototype.

	* lib/user32.def (ChangeDisplaySettingsEx[A,W]): Add exports.
	(EnumDisplayDevices[A,W]): Likewise.

2003-09-15  Danny Smith  <dannysmith@users.sourceforge.net>

	* include.commctrl.h (_WIN32_WINNT): Change _WXP to 0x0501,
	throughout.
2003-09-15 10:21:57 +00:00
Christopher Faylor de9e39f701 * Makefile.in: Make malloc_wrapper -fomit-frame-pointer.
* cygwin.din: Remove extraneous mallinfo definition.
* dcrt0.cc (quoted): Use strechr for efficiency.
* fhandler.cc (fhandler_base::write): Correctly use get_output_handle rather
than get_handle.
(fhandler_base::lseek): Use method for accessing name in debug output.
2003-09-14 01:58:03 +00:00
Christopher Faylor e306c058c7 * fhandler_disk_file.cc (path_conv::ndisk_links): Fix potential off-by-one
problem when first file in a directory is a directory.
2003-09-14 00:07:50 +00:00
Christopher Faylor a98a001169 * kill.c (forcekill): Wait for process to terminate even if TerminateProcess
says it failed.
2003-09-13 18:20:52 +00:00
Christopher Faylor 276448cf67 * include/sys/cygwin.h: Rename PID_UNUSED to PID_MAP_RW.
* pinfo.cc (pinfo_init): Initialize myself->gid.
(pinfo::init): Create the "access" variable, set it appropriately and use it to
specify the requested access.
* exceptions.cc (sig_handle_tty_stop): Add PID_MAP_RW in pinfo parent.
* signal.cc (kill_worker): Ditto for pinfo dest.
* syscalls.cc (setpgid): Ditto for pinfo p.
2003-09-13 17:14:15 +00:00
Christopher Faylor 4442ed9171 * include/cygwin/version.h: Bump DLL minor number to 5. 2003-09-13 17:12:01 +00:00
Danny Smith 52bce3938f * include/olectl.h (TEXTMETRICOLE, LPERRORLOG, LPPROPERTYBAG,
LPENUMCONNECTIONPOINTS, LPCONNECTIONPOINT, LPENUMCONNECTIONS,
	LPPROPERTYPAGESITE, LPFONT, LPFONTDISP, OLE_COLOR, HIMETRIC,
	OLE_YPOS_HIMETRIC, OLE_XSIZE_HIMETRIC, OLE_YSIZE_HIMETRIC,
	OLE_YSIZE_CONTAINER, OLE_HANDLE, POINTF,LPPOINTF, CONTROLINFO,
	LPCONTROLINFO, CONNECTDATA, LPCONNECTDATA, LICINFO, LPLICINFO,
	CAUUID, LPCAUUID, CALPOLESTR, LPCALPOLESTR, CADWORD, LPCADWORD,
	PROPPAGEINFO, LPPROPPAGEINFO): Remove from here ...
	* include/ocidl.h: (TEXTMETRICOLE, LPERRORLOG, LPPROPERTYBAG,
	LPENUMCONNECTIONPOINTS, LPCONNECTIONPOINT, LPENUMCONNECTIONS,
	LPPROPERTYPAGESITE, LPFONT, LPFONTDISP, OLE_COLOR, HIMETRIC,
	OLE_YPOS_HIMETRIC, OLE_XSIZE_HIMETRIC, OLE_YSIZE_HIMETRIC,
	OLE_YSIZE_CONTAINER, OLE_HANDLE, POINTF, LPPOINTF, CONTROLINFO,
	LPCONTROLINFO, CONNECTDATA, LPCONNECTDATA, LICINFO, LPLICINFO,
	CAUUID, LPCAUUID, CALPOLESTR, LPCALPOLESTR, CADWORD, LPCADWORD,
	PROPPAGEINFO, LPPROPPAGEINFO): ... to here, for consistency
	with documentation.
	* include/olectl.h: Do #include <ocidl.h>.
	* include/ocidl.h: Don't #include <olectl.h>.
2003-09-13 12:05:08 +00:00
Danny Smith 77780db3bd * include/winuser.h (_WIN32_WINNT, _WIN32_WINDOWS, WINVER):
Change guards to use numeric constants, throughout.
2003-09-13 08:13:30 +00:00
Christopher Faylor b0309a1658 * thread.cc (MTinterface::fixup_after_fork): Remove code which potentially
overwrote _impure pointer with contents of thread which invoked fork since this
eliminates important information like the pointer to the atexit queue.
2003-09-13 01:21:32 +00:00
Christopher Faylor 21d7ec1928 * fhandler_disk_file.cc (path_conv::ndisk_links): Fix problem where search
characters overwrote the path instead of being tacked on the end.
2003-09-12 20:17:28 +00:00
Christopher Faylor fb3dd71676 * dcrt0.cc (_dll_crt0): Accommodate breaking apart of early_stuff_init.
* exceptions.cc (early_stuff_init): Delete.
(init_console_handler): New function - top half of early_stuff_init.
(init_global_security): New function - bottom half of early_stuff_init.
(sig_handle): Avoid special hExeced test for SIGINT.  Just terminate the
captive process.
(signal_exit): Add debugging output.
* fhandler_tty.cc (fhandler_tty_slave::open): Don't allocate a console if one
already seems to exist.  Properly initialize ctrl-c handling if we do allocate
a console.
* winsup.h (early_stuff_init): Delete declaration.
(init_console_handler): New declaration.
(init_global_security): New declaration.
2003-09-12 06:41:53 +00:00
Christopher Faylor 3a25635489 * Makefile.in: Tweak mingw libz.a detection to make it more reliably detect
when libz.a is not available.
2003-09-12 01:51:21 +00:00
Christopher Faylor 9e24b8ace9 * fhandler_disk_file.cc (path_conv::ndisk_links): Rename from num_entries.
Accept an argument and calculate any extra links needed based on missing .  and
..  entries.
(fhandler_disk_file::fstat_helper): Always call pc->ndisks_links() to calculate
the number of links.
* path.h (path_conv::ndisk_links): Declare.
2003-09-11 23:30:26 +00:00
Christopher Faylor b9041ba3d9 * path.cc (normalize_posix_path): Put check for '//' prefix back to denote a
UNC path.
(slash_unc_prefix_p): Remove vestige of old //c method for accessing drives.
2003-09-11 17:46:31 +00:00
Corinna Vinschen 59a7603554 * cygcheck.cc (dump_only): New global variable.
(usage): Add "--dump-only" option, fix "--verbose" line.
	(longopts, opts): Add "--dump-only" option.
	(main): Process the "--dump-only" flag.  Add new semantic check.
	Pass dump_only information to dump_setup().
2003-09-11 16:24:26 +00:00
Christopher Faylor 88092a3ea1 * dir.cc (rmdir): Add more samba workarounds. 2003-09-11 14:43:09 +00:00
Corinna Vinschen d99e72dc52 * shared.cc (user_shared_initialize): Revert length attribute for name
variable to be just UNLEN + 1.
2003-09-11 07:57:39 +00:00
Corinna Vinschen a5ba4027f4 * getfacl (main): Remove extern declaration of optind.
* setfacl (main): Remove extern declaration of optarg and optind.
2003-09-11 07:55:51 +00:00
Christopher Faylor bd79b736d4 * Makefile.in (cygcheck.o): Use MINGW_CXX for compilation.
* cygcheck.cc: Just include <getopt.h> rather than cygwin version.
(pretty_id): Avoid compiler warnings.
* cygpath.cc (usage): Ditto.
2003-09-11 02:56:40 +00:00
Christopher Faylor b07b167eec * Makefile.in (MINGW_CXX): Define and use for mingw-compiled files.
* path.cc: Include more path info in cygwin-specific includes since the cygwin
directory is no longer included by default.
2003-09-11 02:00:42 +00:00
Christopher Faylor 704d8c321e * Makefile.in: More fixups to adjust for the fact that mingw_getopt.o is no
longer built.
2003-09-11 00:07:28 +00:00
Christopher Faylor 4a6890e76e * Makefile.in: Remove references to getopt since it is now part of mingwex. 2003-09-10 21:55:59 +00:00
Christopher Faylor 0efafbfb8c * shared_info.h (shared_info::initialize): Remove argument.
* cygheap.h (cygheap_user::init): New declaration.
* uinfo.cc (cygheap_user::init): New.
(internal_getlogin): Move functionality to cygheap_user::init.  Open the
process token to update the group sid.
* shared.cc (user_shared_initialize): Get the user information from
cygheap->user.
(shared_info::initialize): Remove argument.  Call cygheap->user.init instead of
cygheap->user.set_name.
(memory_init): Do not get the user name and do not pass it to
shared_info::initialize.
* registry.cc (get_registry_hive_path): Make csid a cygpsid.
(load_registry_hive): Ditto.
2003-09-10 21:01:40 +00:00
Christopher Faylor 1aa76ad568 * fhandler_disk_file.cc (num_entries): Take . and .. into account if they do
not exist since cygwin simulates them.
(fhandler_cygdrive::fstat): Ditto.
(fhandler_cygdrive::readdir): Don't do any specific tests on __d_position when
seeing if a drive exists.
2003-09-10 20:16:00 +00:00
Corinna Vinschen 932a40e86b * Makefile.in (DLL_OFILES): Add getopt.o and iruserok.o.
* cygwin.din: Export __check_rhosts_file, __rcmd_errstr, optarg,
	opterr, optind, optopt, optreset, getopt, getopt_long, iruserok
	and ruserok.
	* getopt.c: Moved from lib to here.  Define opt* variables as
	dllexport.
	* iruserok.c: Moved from lib to here.  Rearrange function order.
	Prefer using 64/32 bit functions.
	* syscalls.cc (shell_fp): Define as struct __sFILE64.
	(getusershell): Use fopen64 instead of fopen.
	* winsup.h: Add declarations for seteuid32, fopen64,
	cygwin_gethostbyname and cygwin_inet_addr.
	* include/getopt.h: Declare opt* variables dllimport.
	* include/cygwin/version.h: Bump API minor number.
2003-09-10 19:13:05 +00:00
Christopher Faylor 6d2d2bce72 * exceptions.cc (sig_handle_tty_stop): Check parent PID_NOCLDSTOP rather than
erroneously checking *my own* sigtodo.
2003-09-10 17:26:12 +00:00
Christopher Faylor 4018776f6e * Makefile.in: Add some more -fomit-frame-pointer files.
* path.cc (conv_path_list_buf_size): Free normalized_path or suffer memory
leak.
* syscalls.cc (chroot): Ditto.
2003-09-10 16:22:49 +00:00
Corinna Vinschen 34a1d63d80 * Makefile.in (DLL_OFILES): Add bsdlib.o.
* autoload.cc (RegisterServiceProcess): Add.
	* bsdlib.cc: New file.
	(daemon): New function.
	(login_tty): Ditto.
	(openpty): Ditto.
	(forkpty): Ditto.
	* cygwin.din: Export daemon, forkpty, login_tty, logwtmp, updwtmp,
	openpty and revoke.
	* syscalls.cc (updwtmp): New function, writing to wtmp exclusively.
	(logwtmp): Ditto.
	(login): Call updwtmp instead of writing to wtmp by itself.
	(logout): Ditto.
	* tty.cc (revoke): New funtion.
	* include/paths.h: Define _PATH_DEVNULL.
	* include/pty.h: New header.
	* include/cygwin/version.h: Bump API minor number.
	* include/sys/utmp.h: Declare logwtmp with const arguments.
	Declare updwtmp.
	* lib/iruserok.c: New file.
	(ruserok): New function.
	(iruserok): Ditto.
	(__ivaliduser): Ditto.
	(__icheckhost): Ditto.
2003-09-10 15:51:59 +00:00
Corinna Vinschen 136265194d * fhandler_socket.cc (fhandler_socket::fstat): Don't use PC_POSIX. 2003-09-10 10:01:32 +00:00
Pierre Humblet 7119fc0d0b 2003-09-09 Pierre Humblet <pierre.humblet@ieee.org>
* shared_info.h: Include security.h.
	(open_shared): Add psa argument.
	(user_shared_initialize): New declaration.
	* security.h: Add _SECURITY_H guard.
	(sec_user): Use sec_none in the no ntsec case.
	* spawn.cc (spawn_guts): Remove call to load_registry_hive.
	* syscalls (seteuid32): If warranted, call load_registry_hive,
	user_shared_initialize and RegCloseKey(HKEY_CURRENT_USER).
	* shared.cc (user_shared_initialize): New.
	(open_shared): Add and use psa argument.
	(memory_init): Move mount table initialization to
	user_shared_initialize. Call it.
2003-09-10 02:12:26 +00:00
Corinna Vinschen 807dfb3d4a * mmap.cc (mmap64): Change address types from caddr_t to void *
according to SUSv3.
	(mmap): Ditto.
	(munmap): Ditto.
	(msync): Ditto.
	(mprotect): Ditto.  Move to before the fhandler methods.
	* include/sys/mman.h: Change prototypes accordingly.
2003-09-09 09:41:18 +00:00
Christopher Faylor 3ef50005c7 * dcrt0.cc (dlL_crt0_1): Set __argc_safe after __argc is absolutely know to be
set.
* exceptions.cc (sig_handle_tty_stop): Don't reset sigCONT event since it is
reset automatically.
* fork.cc (fork): Remove obsolete usage of PID_SPLIT_HEAP.
* include/sys/cygwin.h: Ditto.
* sigproc.cc (sig_send): Use sigframe init method to set frame since it checks
for previous ownership of the frame.
* sigproc.h (sigframe::init): Accept an "is_exception" argument.
2003-09-09 03:11:31 +00:00
Christopher Faylor 51d340e1c8 * dir.cc (readdir): Reinstate setting of old ino field for legacy applications.
* dirent.h (dirent): Rename unused field to __ino32.
* passwd.cc (getpwnam_r): Initialize pw_comment field.
2003-09-09 00:21:16 +00:00
Christopher Faylor 7d0e78a71b * passwe.cc (getpwnam_r): Initialize pw_comment field. 2003-09-08 22:03:20 +00:00
Christopher Faylor 7a198a0675 * passwd.cc (getpwuid_r32): Initialize pw_comment field. 2003-09-08 21:44:53 +00:00
Christopher Faylor 9547a8b3c3 * sigproc.cc (wait_sig_inited): Remove assertion since it is racy. 2003-09-08 21:10:23 +00:00
Corinna Vinschen 24efca1401 * cygwin.din: Export endusershell, getusershell and setusershell.
* syscalls.cc (getusershell): New function.
	(setusershell): Ditto.
	(endusershell): Ditto.
	* include/cygwin/version.h: Bump API minor number.
2003-09-08 20:08:53 +00:00
Danny Smith 6c73e54252 2003-09-08 Justin Forest <vhex@users.sourceforge.net>
* include/winuser.h (PM_QS_INPUT, PM_QS_POSTMESSAGE,
	PM_QS_PAINT, PM_QS_SENDMESSAGE): Add defines.

2003-09-08  Filip Navara  <xnavara@volny.cz>

	* include/wingdi.h (GRADIENT_FILL_RECT_H, GRADIENT_FILL_RECT_V,
	GRADIENT_FILL_TRIANGLE, GRADIENT_FILL_OP_FLAG): Add defines.
2003-09-08 10:35:56 +00:00
Corinna Vinschen dcb6ce0cb2 * cygwin.din: Export argz_add argz_add_sep argz_append argz_count
argz_create argz_create_sep argz_delete argz_extract argz_insert
	argz_next argz_replace argz_stringify envz_add envz_entry envz_get
	envz_merge envz_remove envz_strip
	* include/cygwin/version.h: Bump api minor number.
2003-09-08 08:53:01 +00:00
Christopher Faylor 87f9911114 fix typo 2003-09-08 05:09:13 +00:00
Christopher Faylor 7b06693464 * Makefile.in (zlib_h): Rename libz.h -> zlib.h. 2003-09-08 04:29:34 +00:00
Christopher Faylor 0c7b55727a Throughout, remove __d_u.__d_data fields from DIR structure.
* include/sys/dirent.h (dirent): Remvoe old_d_ino.
(DIR): Make __d_dirhash a 64 bit value.  Remove __d_data and __d_u.  Add
__flags.
* dir.cc (opendir_states): New enum.
(opendir): Clear new DIR __flags field.
(readdir): Fill in '.' and '..' entries if we hit EOF and we haven't seen them
already.  Nuke setting of old_d_ino.
(rewinddir): Reset DIR __flags field.
(seekdir64): Ditto.
* fhandler_disk_file.cc (fhandler_cygdrive::fhandler_cygdrive): Remove special
handling of "." and ".." since they are now handled automatically.
2003-09-08 04:04:19 +00:00
Christopher Faylor d31c5928dd * Makefile.in: Detect existence of mingw zlib headers and libraries. Build
cygcheck wihtout package checking if they are unavailable.
* dump_setup.cc: Generate dummy zlib macros when zlib is not available.
(open_package_list): Use zlib functions to uncompress package lists.  Return
gzFile rather than FILE *.
(check_package_files): Change fp to gzFile to accommodate zlib functions.  Use
gzgets to read from package file.  Use gzclose to close the handle.
(package_list): Ditto.
(package_find): Ditto.
2003-09-08 02:50:02 +00:00
Christopher Faylor 2e5228f964 * include/cygwin/in.h: Don't define ipv6 stuff unless we call for it
specifically since it isn't really implemented yet.
2003-09-08 00:26:26 +00:00
Christopher Faylor bd8938985e * cygheap.cc (_csbrk): More left coercion cleanup.
* fhandler_tty.cc (fhandler_tty_slave::read): Ditto.
(fhandler_tty_slave::write): Ditto.
* fhandler_windows.cc (fhandler_windows::read): Ditto.
* heap.cc (sbrk): Ditto.
2003-09-07 18:27:54 +00:00
Christopher Faylor ed2287adcd * signal.cc (nanosleep): Improve test for valid values. Round delay up to
resolution.  Fix test for negative remainder.  Use timeGetTime through gtod.
(sleep): Round up return value.  Christopher Faylor <cgf@redhat.com>
* hires.h (HIRES_DELAY_MAX): Define.
(hires_ms::minperiod): Declare static.
(hires_ms::resolution): New.
(hires_ms::dmsecs): New.
(hires_ms::prime): Return UINT.
(gtod): Declare.
* times.cc (hires_ms::prime): Always calculate minperiod and set it to 1 in
case of failure.  Return minperiod.
(hires_ms::resolution): Define.
(hires_ms::~hires_ms): Delete.
(hires_ms::usecs): Check minperiod to prime.
(gtod) Define as global.
2003-09-07 05:18:01 +00:00
Christopher Faylor 6cce721b15 Remove left coercion throughout. 2003-09-07 02:22:58 +00:00
Christopher Faylor 46645f9c6e * hires.h (hires_ms::~hires_ms): Delete declaration.
* times.cc (hires_ms::~hires_ms): Delete definition..
2003-09-06 02:14:06 +00:00
Christopher Faylor 1f602fd729 * dump_setup.cc (check_package_files): Don't fail on empty package. 2003-09-06 02:02:30 +00:00
Earnie Boyd 661cc22065 * include/w32api.h (_NT5, etc): Reverse the changes of 2003-07-01.
* include/winbase.h (_NT5, etc): Ditto.
2003-09-05 19:41:22 +00:00
Christopher Faylor c6f53ff6be * dcrt0.cc (__argc_safe): New variable.
(dll_crt0_1): Store argc in __argc_safe, which will theoretically remain
untouched by the user.
* fhandler_console.cc (fhandler_console::read): Silence some compiler warnings.
* fhandler_raw.cc (fhandler_dev_raw::raw_read): Ditto.
* pinfo.cc (_pinfo::commune_recv): Carefully bound argv scan and check for
potentially bad pointers since user could have set argv cell to anythinw.
* cygheap.h (CYGHEAPSIZE): Bump up size.
2003-09-05 01:55:01 +00:00
Corinna Vinschen 39473bba44 * sysconf.cc (sysconf): Return more accurate value for _SC_AVPHYS_PAGES. 2003-09-04 10:57:58 +00:00
Corinna Vinschen 4544f7f6a2 * mmap.cc: Restructure. Add, remove and rewrite comments throughout
for better readability.  Change function names for better
	understanding.
	(MAP_SET): Accomodate name change from map_map_ to page_map_.
	(MAP_CLR): Ditto.
	(MAP_ISSET): Ditto.
	(mmap_record::page_map_): Rename from page_map_.
	(mmap_record::get_map): Remove.
	(mmap_record::alloc_page_map): Rename from alloc_map. Return bool
	indicating success of cygheap memory allocation.
	(mmap_record::free_page_map): Rename from free_map.
	(mmap_record::fixup_page_map): Rename from fixup_map.
	(mmap_record::find_unused_pages): Rename from find_empty.
	(mmap_record::map_pages): Rename from map_map.
	(mmap_record::unmap_pages): Rename from unmap_map.
	(class list): Make all class members private.
	(list::list): Remove.
	(list::~list): Remove.
	(list::get_fd): New attribute reader.
	(list::get_hash): Ditto.
	(list::get_record): Ditto.
	(list::add_record): Manage all allocation for mmap_records.  Check
	for failed memory allocation and return NULL if so.
	(list::set): New function.
	(list::del_record): Rename from erase. Return true if last mmap_record
	has been deleted, false otherwise. Check for legal incoming index
	value.
	(list::erase): Remove erase/0.
	(list::search_record): Rename from match.
	(map::map): Remove.
	(map::~map): Remove.
	(map::add_list): Manage all allocation for lists.  Check for failed
	memory allocation and return NULL if so.
	(map::get_list): New method.
	(map::del_list): Rename from erase. Check for legal incoming index
	value.
	(mmap64): Check for failed mmap_record memory allocation.  Return
	with MAP_FAILED and errno set to ENOMEM if so.
	(munmap): Rearrange loop using new list and mmap_record accessor
	functions.  Rename loop index variables for better understanding.
	Check if list can be deleted after last mmap_record in it has been
	deleted.
	(msync): Rearrange loop using new list and mmap_record accessor
	functions.  Rename loop index variables for better understanding.
	(fixup_mmaps_after_fork): Ditto.
2003-09-04 10:27:51 +00:00
Christopher Faylor 026dcb34c6 * cxx.cc (new): Fix formatting. Just return result of ccalloc rather than
calling memset explicitly.
2003-09-04 03:01:35 +00:00
Christopher Faylor e48feef96a * mount.cc (mount_commands): Ensure user mode is actually user mode and not the
default system mode.
2003-09-04 01:04:57 +00:00
Christopher Faylor 75119e9980 * exceptions.cc (set_process_mask): Set pending signals only when signals
become unmasked.
* sigproc.cc (pending_signals): Flip back to a global.
(wait_sig): Don't set pending signals when there is an armed semaphore or
signal is blocked.
* shared.cc (shared_info::initialize): Add a username parameter for user-mode
mounts.  Reorganize to try to avoid startup race.
(memory_init): Move some stuff into shared_info::initialize.
* shared_info.h (shared_info::initialize): Change declaration.
(CURR_SHARED_MAGIC): Update.
2003-09-03 14:15:55 +00:00
Danny Smith 73b2114815 2003-09-02 Bart Oldeman <bartoldeman@users.sourceforge.net>
* lib/snmpapi.def (LIBRARY) Add library name.
	Remove '\r', throughout.
	* lib/wsnmp32.def: Remove '\r', throughout.
	* lib/igmpagnt.def: Likewise.
2003-09-03 00:59:02 +00:00
Christopher Faylor b960d7bf2d * include/cygwin/version.h: Bump DLL minor number to 4. 2003-09-01 17:12:29 +00:00
Christopher Faylor da43df2df0 * net.cc (dup_ent): Restore check for NULL input. 2003-09-01 16:47:03 +00:00
Corinna Vinschen bf6269abd3 * pathnames.sgml: Remove description how to mount raw devices and
dicourage it.  Desparately try to make usage of raw devices a bit
	clearer.
2003-09-01 12:56:01 +00:00
Christopher Faylor ef58cd2f44 * kill.cc (forcekill): Silence some compiler warnings. 2003-09-01 02:40:16 +00:00
Christopher Faylor f6f88b66d2 * Makefile.in: Oops. Put the '...' in the right place. 2003-09-01 02:33:50 +00:00
Christopher Faylor 840fcfef8d * include/sys/cygwin.h: Don't define cygwin-specific things if !__CYGWIN__. 2003-09-01 02:26:27 +00:00
Christopher Faylor c0a9bffd03 * cygheap.cc (cygheap_init): Allocate space for sigaction array in cygheap.
* cygheap.h (cygheap_types): Add HEAP_SIGS.
* exceptions.cc (signal_fixup_after_exec): Remove from this file.
* pinfo.h (pinfo::getsig): Just return global_sigs array.
(pinfo::sigs): Delete.
* sigproc.cc (signal_fixup_after_exec): Move it here.
(global_sigs): New global array, moved from pinfo structure.
(sigalloc): New function.  Allocate global sigaction array here.
(proc_subproc): Remove copysigs call.  It's automatic now.
* include/sys/cygwin.h (PID_NOCLDSTOP): New value.
* signal.cc (sigaction): Set myself->PID_NODCLDSTOP when appropriate.
* sigproc.h (sigalloc): Declare.
* fnmatch.c (fnmatch): Use C90 parameters.
(rangematch): Ditto.
* fhandler.cc (fhandler_base::raw_read): Use right coercion to avoid a compiler
warning.
2003-09-01 02:05:32 +00:00
Christopher Faylor 40d885eb7b * Makefile.in: Display "..." when not-verbose.
* kill.cc (forcekill): Default to entered pid when pinfo fails.  Issue some
warnings when things don't work.
2003-09-01 01:57:44 +00:00
Christopher Faylor 12ffca1d84 * net.cc (dup_ent): Make debugging output consistent. 2003-08-31 23:23:40 +00:00
Christopher Faylor a3de4e19b4 Use dup_ent rather than specific dup_*_ptr functions throughout.
* (gen_ent): Delete.
(dup_ent): Subsume gen_ent functionality.
(dup_host_ptr): Delete.
(dup_proto_ptr): Ditto.
(dup_servent_ptr): Ditto.
* net.cc (gen_ent): Invert sense of null check so that debug output makes
sense.
2003-08-31 23:16:34 +00:00