]> sourceware.org Git - newlib-cygwin.git/blob - winsup/cygwin/ChangeLog
2011-04-02 Jon TURNEY <jon.turney@dronecode.org.uk>
[newlib-cygwin.git] / winsup / cygwin / ChangeLog
1 2011-04-02 Jon TURNEY <jon.turney@dronecode.org.uk>
2
3 * thread.cc (semaphore::init): We cannot reliably infer anything from
4 the existing contents of sem, so merely warn rather than return EBUSY
5 if it looks like we are reinitialising a semaphore.
6
7 2011-04-19 Corinna Vinschen <corinna@vinschen.de>
8
9 * autoload.cc (GetConsoleWindow): Drop.
10 (GetSystemWindowsDirectoryW): Drop.
11 * fhandler_console.cc (beep): Call GetSystemWindowsDirectoryW instead of
12 GetWindowsDirectoryW.
13 * uinfo.cc (cygheap_user::env_systemroot): Call
14 GetSystemWindowsDirectoryW and convert to multibyte on the fly.
15 * winlean.h (GetWindowsDirectoryW): Redefine to something invalid.
16 Explain why.
17
18 2011-04-19 Corinna Vinschen <corinna@vinschen.de>
19
20 * Makefile.in (DLL_IMPORTS): Drop advapi32.dll.
21 * autoload.cc: Enable autoloading advapi32 functions.
22 * environ.cc (regopt): Use wide char arguments in reg_key functions.
23 * fhandler_console.cc (beep): Ditto. Use WCHAR throughout.
24 * registry.cc (reg_key): Rewrite reg_key class to use native NT registry
25 functions. Use WCHAR string parameters throughout. Use PCWSTR rather
26 than const WCHAR. Drop multibyte char functionality. Drop unused
27 methods.
28 (get_registry_hive_path): Use RtlQueryRegistryValues to fetch path from
29 registry.
30 (load_registry_hive): Drop useless check for user hive being available.
31 Load hive using NtLoadKey.
32 * registry.h: Accommodate above changes.
33 * sched.cc (sched_rr_get_interval): Use wide char arguments in reg_key
34 functions.
35 * shared.cc (init_installation_root): Ditto.
36 (shared_info::init_obcaseinsensitive): Use RtlQueryRegistryValues to
37 fetch obcaseinsensitive value.
38 (shared_info::heap_slop_size): Use wide char arguments in reg_key
39 functions.
40 (shared_info::heap_chunk_size): Ditto.
41 * syscalls.cc (gethostid): Ditto.
42 * winsup.h (__WIDE): Define.
43 (_WIDE): Define.
44 * libc/minires-os-if.c (get_registry_dns_items): Don't fetch values
45 from registry. Just extract them from given UNICODE_STRING parameter.
46 (get_registry_dns): Fetch all registry values at once using
47 RtlQueryRegistryValues.
48
49 2011-04-19 Corinna Vinschen <corinna@vinschen.de>
50
51 * net.cc (get_ipv4fromreg_ipcnt): Rearrange to fetch all registry
52 values at once using RtlQueryRegistryValues.
53 (get_ipv4fromreg): Ditto.
54
55 2011-04-19 Corinna Vinschen <corinna@vinschen.de>
56
57 * fhandler_registry.cc (fhandler_registry::fstat): Use RegQueryInfoKeyW.
58
59 2011-04-19 Corinna Vinschen <corinna@vinschen.de>
60
61 * fhandler_proc.cc (read_value): Remove definition.
62 (print): Simplify.
63 (format_proc_cpuinfo): Drop useless call to GetSystemInfo. Rearrange
64 to use Rtl registry functions. Rename dwOldThreadAffinityMask to
65 orig_affinity_mask.
66
67 2011-04-18 Corinna Vinschen <corinna@vinschen.de>
68
69 * localtime.cc (tzload): Don't change global timezone information
70 when called from gmtime or gmtime_r.
71 (tzparse): Ditto.
72
73 2011-04-18 Corinna Vinschen <corinna@vinschen.de>
74
75 * cygtls.cc (_cygtls::remove): Always close sockevt handle.
76
77 2011-04-18 Corinna Vinschen <corinna@vinschen.de>
78
79 * cygwin.din (ppoll): Export.
80 * poll.cc (ppoll): Implement.
81 * posix.sgml (std-gnu): Add ppoll.
82 * include/cygwin/version.h: Bump API minor number.
83 * include/sys/poll.h (ppoll): Declare.
84
85 2011-04-18 Corinna Vinschen <corinna@vinschen.de>
86
87 * fhandler_socket.cc (fhandler_socket::evaluate_events): Handle the
88 FD_CLOSE event specially when called from accept. Explain why.
89 (fhandler_socket::shutdown): Fake success on not-connected socket and
90 trigger socket event if the read side of a socket is affected. Explain
91 why.
92 * poll.cc (poll): Check for saw_shutdown_read on sockets to generate
93 POLLHUP as well.
94
95 2011-04-18 Corinna Vinschen <corinna@vinschen.de>
96
97 * Fix various copyrights.
98
99 2011-04-17 Christopher Faylor <me.cygwin2011@cgf.cx>
100
101 * signal.cc (_pinfo::kill): Set this_process_state when process
102 exists.
103
104 2011-04-17 Christopher Faylor <me.cygwin2011@cgf.cx>
105
106 * signal.cc (_pinfo::kill): Return 0 when attempting to test for
107 existence of an existed process which has not yet been reaped.
108
109 2011-04-17 Christopher Faylor <me.cygwin2011@cgf.cx>
110
111 * cygheap.h (init_cygheap::ctty): Use base class so that console can
112 join in the fun.
113 * dtable.cc (dtable::stdio_init): Remove special-case call to
114 set_console_ctty ().
115 * exceptions.cc (sigpacket::process): Conditionally flush terminal
116 input on certain signals.
117 * fhandler.h (fhandler_console::get_tty_stuff): Make non-static.
118 (fhandler_termios::get_ttyp): Move here.
119 (fhandler_termios::sigflush): Declare.
120 (fhandler_tty_common::get_ttyp): Delete.
121 * fhandler_console.cc (fhandler_console::get_tty_stuff): Pass this as
122 "arch" argument.
123 (set_console_ctty): Delete.
124 (tty_list::get_tty): Just return pointer to shared console region,
125 delaying get_tty_stuff until open().
126 (fhandler_console::init): Treat NULL handle as signifying that console
127 should be opened with O_NOCTTY flag. Rename handle argument to the
128 more common 'h'.
129 * fhandler_termios.cc (fhandler_termios::sigflush): Define.
130 * fhandler_tty.cc (handler_tty_master::init_console): Pass NULL as
131 first argument to fhandler_console::init.
132 * pinfo.cc (_pinfo::set_ctty): Change third parameter to
133 fhandler_termios *. Add extra debugging.
134 * pinfo.h (_pinfo::set_ctty): Change third parameter to
135 fhandler_termios *.
136
137 * sigproc.cc (handle_sigsuspend): Don't special-case non-main threads.
138
139 2011-04-15 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
140
141 * thread.cc (pthread_setschedprio): New function.
142 * include/pthread.h (pthread_setschedprio): Declare.
143 * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
144 * cygwin.din (pthread_setschedprio): Export.
145 * posix.sgml (std-notimpl) Move pthread_setschedprio from here...
146 (std-susv4) ...to here.
147
148 2011-04-10 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
149
150 * fhandler_proc.cc (proc_tab): Add /proc/swaps virtual file.
151 (format_proc_swaps): New function.
152
153 2011-04-06 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
154
155 * Makefile.in: Move srcdir definition before others which uses it.
156
157 2011-04-06 Jon TURNEY <jon.turney@dronecode.org.uk>
158
159 * dll_init.cc (reserve_at, release_at): New functions.
160 (load_after_fork): If the DLL was loaded higher than the required
161 address, assume that it loaded at it's base address and also reserve
162 memory there to force it to be relocated.
163
164 2011-04-04 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
165
166 * include/cygwin/types.h: Move #include <sys/sysmacros.h> to
167 end of header so that it gets the dev_t typedef.
168 * include/sys/sysmacros.h (gnu_dev_major, gnu_dev_minor,
169 gnu_dev_makedev): Prototype and define as inline functions.
170 (major, minor, makedev): Redefine in terms of gnu_dev_*.
171
172 2011-04-04 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
173
174 * include/cygwin/types.h: Move multiple inclusion guards to
175 beginning and end of header.
176
177 2011-04-04 Christopher Faylor <me.cygwin2011@cgf.cx>
178
179 * Makefile.in: Move Makefile.common include earlier to fix problems
180 with relative ${srcdir} path which confuses make.
181
182 2011-04-04 Corinna Vinschen <corinna@vinschen.de>
183
184 Drop NT4 support.
185 * autoload.cc (DnsQuery_A): Fatal if not available.
186 (DnsRecordListFree): Ditto.
187 (DsGetDcNameW): Ditto.
188 (NetGetAnyDCName): Remove.
189 (NetGetDCName): Remove.
190 (EnumProcessModules): Fatal if not available.
191 (GetModuleFileNameExW): Ditto.
192 (GetModuleInformation): Ditto.
193 (GetProcessMemoryInfo): Ditto.
194 (QueryWorkingSet): Ditto.
195 (LsaRegisterLogonProcess): Ditto.
196 * fenv.cc (_feinitialise): Drop supports_sse condition.
197 * fhandler_disk_file.cc (path_conv::isgood_inode): Fix comment.
198 (fhandler_base::fstat_by_name): Drop has_fileid_dirinfo condition.
199 (fhandler_disk_file::opendir): Ditto.
200 * fhandler_netdrive.cc (fhandler_netdrive::readdir): Fix comment.
201 * fhandler_proc.cc (format_proc_partitions): Drop NT4-only code.
202 * fhandler_process.cc (get_process_state): Ditto.
203 * kernel32.cc (GetWindowsDirectoryW): Remove.
204 (GetWindowsDirectoryA): Remove.
205 * miscfuncs.cc (nice_to_winprio): Drop NT4-only code.
206 * mount.cc (fs_info::update): Fix comments.
207 * net.cc (get_2k_ifs): Drop NT4-only code.
208 * sec_auth.cc (get_logon_server): Ditto.
209 (lsaauth): Drop NT4-specific error handling.
210 * security.cc (alloc_sd): Set SE_DACL_PROTECTED unconditionally.
211 * select.cc (select_stuff::wait): Always use MWMO_INPUTAVAILABLE.
212 (peek_windows): Drop NT4-only condition in call to PeekMessage.
213 * syscalls.cc (gethostid): Remove NT4-only workaround.
214 * wincap.cc: Througout, drop has_dacl_protect,
215 has_broken_if_oper_status, has_process_io_counters,
216 has_terminal_services, has_extended_priority_class, has_guid_volumes,
217 has_fileid_dirinfo, has_mwmo_inputavailable and supports_sse from
218 wincaps.
219 (wincap_nt4sp4): Remove.
220 (wincap_minimal): Set to wincap_2000.
221 (wincapc::init): Rely on availability of OSVERSIONINFOEX structure.
222 Treat error from GetVersionEx as fatal. Treat NT4 as fatal.
223 * wincap.h (struct wincaps): Drop has_dacl_protect,
224 has_broken_if_oper_status, has_process_io_counters,
225 has_terminal_services, has_extended_priority_class, has_guid_volumes,
226 has_fileid_dirinfo, has_mwmo_inputavailable and supports_sse flags
227 and methods.
228 * winlean.h (GetWindowsDirectoryW) Define as GetSystemWindowsDirectoryW.
229 (GetWindowsDirectoryA): Define as GetSystemWindowsDirectoryA.
230
231 2011-04-04 Corinna Vinschen <corinna@vinschen.de>
232
233 * dtable.cc (dtable::init_std_file_from_handle): Fix a comment to
234 reflect the current state.
235
236 2011-04-04 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
237
238 * Makefile.in (fhandler_proc_CFLAGS): Define USERNAME, HOSTNAME,
239 and GCC_VERSION.
240 * fhandler_proc.cc (format_proc_version): Add build machine and GCC
241 version information as on Linux.
242
243 2011-04-04 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
244 Corinna Vinschen <corinna@vinschen.de>
245
246 * devices.h (fh_devices): Define FH_PROC_MIN_MINOR.
247 Reorder major-0 devices so that all /proc directories fall
248 between FH_PROC and FH_PROC_MIN_MINOR.
249 * path.h (isproc_dev): Redefine accordingly.
250
251 2011-04-04 Corinna Vinschen <corinna@vinschen.de>
252
253 * cygserver_setpwd.h (setlsapwd): Add username parameter to declaration.
254 * external.cc (cygwin_internal): In the CW_SET_PRIV_KEY case, fetch
255 additional username parameter.
256 * setlsapwd.cc (setlsapwd): Add username parameter. Allow admin to
257 set the hidden password for other users.
258
259 2011-04-04 Corinna Vinschen <corinna@vinschen.de>
260
261 * sec_auth.cc (get_user_groups): Mark well-known groups as well-known.
262 (get_user_local_groups): Ditto.
263 (verify_token): Drop useless label.
264 * sec_helper.cc (cygsid::get_sid): Check for well-known SID if
265 well_known isn't set.
266 * security.h (well_known_sid_type): New inline function.
267
268 2011-04-02 Corinna Vinschen <corinna@vinschen.de>
269
270 * autoload.cc (FindFirstVolumeA): Remove.
271 (FindNextVolumeA): Remove.
272 (FindVolumeClose): Remove.
273 (GetVolumeNameForVolumeMountPointA): Remove.
274 * ntdll.h (NtFlushBuffersFile): Declare.
275 * syscalls.cc (sync_worker): Rewrite using native NT functions.
276 (sync): Ditto.
277
278 2011-04-02 Corinna Vinschen <corinna@vinschen.de>
279
280 * fhandler_proc.cc (format_proc_partitions): Express length in WCHAR
281 size.
282
283 2011-04-02 Corinna Vinschen <corinna@vinschen.de>
284
285 * autoload.cc (GetExtendedTcpTable): Remove.
286 (GetTcpTable): Remove.
287 (CharNextExA): Remove.
288 (FindWindowA): Remove.
289 (ShowWindowAsync): Remove.
290 * dcrt0.cc (disable_dep): Remove unused function.
291 (dll_crt0_0): Drop comment babbling about TS & DEP.
292 * fhandler_socket.cc (address_in_use): Remove unused function.
293 * wincap.cc: Throughout, drop ts_has_dep_problem from wincaps.
294 (wincapc::init): Drop code setting ts_has_dep_problem flag.
295 * wincap.h (struct wincaps): Drop ts_has_dep_problem flags and method.
296
297 2011-04-01 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
298
299 Implement /proc/sysvipc/*
300 * devices.in (dev_procsysvipc_storage): Add.
301 * devices.cc: Regenerate.
302 * devices.h (fh_devices): Add FH_PROCSYSVIPC.
303 * dtable.cc (build_fh_pc): Add case FH_PROCSYSVIPC.
304 * fhandler.h (class fhandler_procsysvipc): Declare.
305 (fhandler_union): Add __procsysvipc.
306 * fhandler_proc.cc (proc_tab): Add sysvipc virt_directory.
307 * fhandler_procsysvipc.cc: New file.
308 * Makefile.in (DLL_OFILES): Add fhandler_procsysvipc.o.
309 * path.h (isproc_dev): Add FH_PROCSYSVIPC to conditional.
310
311 2011-04-01 Corinna Vinschen <corinna@vinschen.de>
312
313 * Makefile.in (DLL_OFILES): Add avapi32.o.
314 * advapi32.cc: New file.
315 * autoload.cc: Add block of remaining advapi32 functions used by
316 Cygwin. Keep commented out. Explain why.
317
318 2011-04-01 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
319
320 * fhandler_proc.cc (format_proc_loadavg): Add running/total
321 processes as fourth component of output.
322 * fhandler_process.cc (get_process_state): Make non-static.
323 Add FIXME about generating an 'O' flag.
324
325 2011-04-01 Corinna Vinschen <corinna@vinschen.de>
326
327 * fhandler_random.cc (fhandler_dev_random::crypt_gen_random):
328 Use CryptAcquireContextW.
329 * ntdll.h (STATUS_PROCEDURE_NOT_FOUND): Define.
330 * sec_auth.cc (open_local_policy): Rename NTSTATUS variable ret to
331 status. Drop usage of LsaNtStatusToWinError.
332 (verify_token): Call NtQuerySecurityObject instead of
333 GetKernelObjectSecurity.
334 (create_token): Rename NTSTATUS variable ret to status. Rename ret2 to
335 sub_status. Drop usage of LsaNtStatusToWinError. In case LsaLogonUser
336 fails, report the sub_status as well.
337
338 2011-04-01 Corinna Vinschen <corinna@vinschen.de>
339
340 * libc/strptime.c: Remove misleading comment.
341
342 2011-03-31 Corinna Vinschen <corinna@vinschen.de>
343
344 * ntdll.h: Allow usage from plain C code.
345 (FSCTL_PIPE_IMPERSONATE): Define.
346 (enum _THREAD_INFORMATION_CLASS): Define.
347 (RTL_QUERY_REGISTRY_xxx): Define.
348 (RTL_REGISTRY_xxx): Define.
349 (PRTL_QUERY_REGISTRY_ROUTINE): Define.
350 (struct _RTL_QUERY_REGISTRY_TABLE): Define.
351 (enum _KEY_VALUE_INFORMATION_CLASS): Define.
352 (struct _KEY_VALUE_PARTIAL_INFORMATION): Define.
353 (NtAccessCheck): Declare.
354 (NtAllocateLocallyUniqueId): Declare.
355 (NtCreateKey): Declare.
356 (NtDuplicateToken): Declare.
357 (NtLoadKey): Declare.
358 (NtOpenKey): Declare.
359 (NtOpenProcessToken): Declare.
360 (NtOpenThreadToken): Declare.
361 (NtPrivilegeCheck): Declare.
362 (NtQueryInformationToken): Declare.
363 (NtQueryValueKey): Declare.
364 (NtSetInformationThread): Declare.
365 (NtSetInformationToken): Declare.
366 (NtSetValueKey): Declare.
367 (RtlAbsoluteToSelfRelativeSD): Declare.
368 (RtlAddAccessAllowedAce): Declare.
369 (RtlAddAccessDeniedAce): Declare.
370 (RtlAddAce): Declare.
371 (RtlCheckRegistryKey): Declare.
372 (RtlCopySid): Declare.
373 (RtlCreateAcl): Declare.
374 (RtlCreateRegistryKey): Declare.
375 (RtlCreateSecurityDescriptor): Declare.
376 (RtlEqualPrefixSid): Declare.
377 (RtlEqualSid): Declare.
378 (RtlFirstFreeAce): Declare.
379 (RtlGetAce): Declare.
380 (RtlGetDaclSecurityDescriptor): Declare.
381 (RtlGetGroupSecurityDescriptor): Declare.
382 (RtlGetOwnerSecurityDescriptor): Declare.
383 (RtlIdentifierAuthoritySid): Declare.
384 (RtlInitializeSid): Declare.
385 (RtlLengthSid): Declare.
386 (RtlQueryRegistryValues): Declare.
387 (RtlSetControlSecurityDescriptor): Declare.
388 (RtlSetDaclSecurityDescriptor): Declare.
389 (RtlSetGroupSecurityDescriptor): Declare.
390 (RtlSetOwnerSecurityDescriptor): Declare.
391 (RtlSubAuthorityCountSid): Declare.
392 (RtlSubAuthoritySid): Declare.
393 (RtlWriteRegistryValue): Declare.
394
395 2011-03-31 Corinna Vinschen <corinna@vinschen.de>
396
397 * uinfo.cc (cygheap_user::init): Don't call GetUserName. Fetch username
398 from Windows environment instead. Explain why.
399 (cygheap_user::env_domain): Use MAX_DOMAIN_NAME_LEN rather than DNLEN
400 to specify the size of the domain name buffer.
401
402 2011-03-30 Corinna Vinschen <corinna@vinschen.de>
403
404 * hires.h: Fix copyright.
405 * times.cc: Ditto.
406 (FACTOR): Add comment.
407 (NSPERSEC): Ditto.
408 (JITTER): New definition. Comment.
409 (systime_ns): Avoid gratuitous copying of the value returned by
410 GetSystemTimeAsFileTime.
411 (corelocaltime, localtime, gmtime): Remove very old, unused code block.
412 (cygwin_tzset): Remove.
413 (hires_ms::timeGetTime_ns): Add missing semicolon in comment.
414 (hires_ms::nsecs): Redefine check for difference between internal
415 timer value and system time.
416
417 2011-03-30 Corinna Vinschen <corinna@vinschen.de>
418
419 * times.cc (hires_ms::resolution): Make sure resolution is never 0.
420 (clock_setres): Ditto.
421
422 2011-03-29 Corinna Vinschen <corinna@vinschen.de>
423
424 * cygtls.h (struct _local_storage): Redefine process_ident as wchar_t
425 pointer.
426 * syslog.cc (CYGWIN_LOG_NAME): Convert to wide char constant.
427 (openlog): Convert incoming ident string to wide char. Fix formatting.
428 (vsyslog): Print ident string as wide char string. Convert message
429 string to wide char and call UNICODE Win32 Event functions to make sure
430 to use correct codeset.
431 * tlsoffset.h: Regenerate.
432
433 2011-03-29 Corinna Vinschen <corinna@vinschen.de>
434
435 * fhandler_socket.cc (get_inet_addr): Make externally available.
436 * autoload.cc (GetUdpTable): Define.
437 * syslog.cc (connect_syslogd): Use get_inet_addr rather than _stat64
438 to check for local socket file. Create socket with type returned by
439 get_inet_addr. If connect on UDP socket works, test if there's
440 really a listening peer, otherwise fall back to Windows event log.
441 (try_connect_syslogd): Use syslogd_inited flag to check if syslogd
442 is available.
443
444 2011-03-29 Corinna Vinschen <corinna@vinschen.de>
445
446 * uinfo.cc (cygheap_user::env_domain): Use LookupAccountSidW and
447 convert user and domain to multibyte strings to make sure to use
448 correct codeset.
449
450 2011-03-29 Corinna Vinschen <corinna@vinschen.de>
451
452 * autoload.cc (UuidCreate): Remove.
453 (UuidCreateSequential): Remove.
454 * passwd.cc (internal_getpwsid): Avoid a strict-aliasing compiler
455 error with gcc 4.5.1.
456 * fhandler_floppy.cc (fhandler_dev_floppy::get_drive_info): Ditto.
457 * ntdll.h (NtAllocateUuids): Declare.
458 * syscalls.cc (gethostid): Use NtAllocateUuids function rather than
459 UuidCreateSequential/UuidCreate to get rid of rpcrt4 dependency.
460
461 2011-03-29 Corinna Vinschen <corinna@vinschen.de>
462
463 * cygwin.din (pthread_spin_destroy): Export.
464 (pthread_spin_init): Export.
465 (pthread_spin_lock): Export.
466 (pthread_spin_trylock): Export.
467 (pthread_spin_unlock): Export.
468 * posix.sgml (std-susv4): Add pthread_spin_destroy, pthread_spin_init,
469 pthread_spin_lock, pthread_spin_trylock, pthread_spin_unlock.
470 (std-notimpl): Remove pthread_spin_[...].
471 * pthread.cc (pthread_spin_init): New function.
472 * thread.cc (pthread_spinlock::is_good_object): New function.
473 (pthread_mutex::pthread_mutex): Rearrange initializers to accommodate
474 protected data in pthread_mutex.
475 (pthread_spinlock::pthread_spinlock): New constructor.
476 (pthread_spinlock::lock): New method.
477 (pthread_spinlock::unlock): New method.
478 (pthread_spinlock::init): New method.
479 (pthread_spin_lock): New function.
480 (pthread_spin_trylock): New function.
481 (pthread_spin_unlock): New function.
482 (pthread_spin_destroy): New function.
483 * thread.h (PTHREAD_SPINLOCK_MAGIC): Define.
484 (class pthread_mutex): Change access level of members shared with
485 derived classes to protected.
486 (pthread_mutex::set_shared): New protected method.
487 (class pthread_spinlock): New class, derived class of pthread_mutex.
488 * include/pthread.h (pthread_spin_destroy): Declare.
489 (pthread_spin_init): Declare.
490 (pthread_spin_lock): Declare.
491 (pthread_spin_trylock): Declare.
492 (pthread_spin_unlock): Declare.
493 * include/cygwin/types.h (pthread_spinlock_t): New typedef.
494 * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
495
496 2011-03-29 Corinna Vinschen <corinna@vinschen.de>
497
498 * net.cc (SIO_BASE_HANDLE): Define.
499 (fdsock): If we got an LSP handle, try to create a copy of the base
500 handle instead. Change comment to explain.
501
502 2011-03-29 Corinna Vinschen <corinna@vinschen.de>
503
504 * include/cygwin/version.h: Bump CYGWIN_VERSION_DLL_MINOR to 10.
505
506 2011-03-29 Corinna Vinschen <corinna@vinschen.de>
507
508 * autoload.cc (winmm): Remove time functions. Don't treat
509 unloadable wave functions as fatal.
510 * hires.h (hires_ms::timeGetTime_ns): New private method.
511 (hires_ms::dmsecs): Call timeGetTime_ns here.
512 * ntdll.h (struct _KSYSTEM_TIME): Define.
513 (KUSER_SHARED_DATA): Redefine to allow access to InterruptTime.
514 (SharedUserData): Define here.
515 (NtQueryTimerResolution): Declare.
516 (NtSetTimerResolution): Declare.
517 * path.cc (SharedUserData): Move to ntdll.h.
518 * times.cc (hires_ms::timeGetTime_ns): New private method.
519 Use throughout instead of timeGetTime. Document entire functionality
520 of timeGetTime in case we need it.
521 (hires_ms::resolution): Try a call to NtQueryTimerResolution
522 to fetch current period. Fall back to heuristic if that fails.
523 Cast to DWORD in assignments to minperiod.
524 (clock_setres): Align period to possible values per a call to
525 NtQueryTimerResolution. Explain why. Replace calls to timeBeginPeriod
526 and timeEndPeriod with underlying call to NtSetTimerResolution. Use
527 status code from NtSetTimerResolution to compute errno.
528 Convert period to ULONGLONG and store 100ns value to simplify code.
529
530 2011-03-29 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
531 Corinna Vinschen <corinna@vinschen.de>
532
533 * include/sys/xattr.h: New file.
534
535 2011-03-28 Jon TURNEY <jon.turney@dronecode.org.uk>
536
537 * thread.cc (semaphore::init, destroy, close): Standards conformance
538 fix. On a failure, return -1 and set errno.
539 * thread.h (semaphore::terminate): Save errno since semaphore::close()
540 may now modify it.
541
542 2011-03-27 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
543
544 * cygwin.din (strchrnul): Export.
545 * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
546 * posix.sgml (std-gnu): Add strchrnul.
547
548 2011-03-27 Christopher Faylor <me.cygwin2011@cgf.cx>
549
550 * dll_init.cc (dll::init): Accommodate ill-behaved dlls who don't fill
551 out p.envptr.
552
553 2011-03-25 Corinna Vinschen <corinna@vinschen.de>
554
555 * mmap.cc (mmap64): Add a cheat to let a certain autoconf test succeed
556 on 64 bit systems. Explain why.
557
558 2011-03-23 Christopher Faylor <me.cygwin2011@cgf.cx>
559
560 * wincap.cc (wincap_2003): Set use_dont_resolve_hack to true.
561
562 2011-03-23 Christopher Faylor <me.cygwin2011@cgf.cx>
563
564 * autoload.cc (dll_load): Change error message to make it clear if a
565 newer DLL is being run.
566
567 2011-03-20 Corinna Vinschen <corinna@vinschen.de>
568
569 * fenv.cc (_feinitialise): Don't use SSE instructions on systems not
570 supporting them.
571 * wincap.h (wincaps::supports_sse): New element.
572 * wincap.cc: Implement above element throughout.
573
574 2011-03-18 Corinna Vinschen <corinna@vinschen.de>
575
576 * cygwin.sc: Raise default cygheap size to 2 Megs.
577
578 2011-03-18 Christopher Faylor <me.cygwin2011@cgf.cx>
579
580 * fhandler.h (DEFAULT_PIPEBUFSIZE): Reset to 64K.
581
582 2011-03-18 Corinna Vinschen <corinna@vinschen.de>
583
584 * mmap.cc (mmap_record::alloc_fh): Initialize name strings in fdev to
585 empty strings or suffer a SEGV. Drop second parameter in call to
586 build_fh_dev.
587
588 2011-03-18 Corinna Vinschen <corinna@vinschen.de>
589
590 * mmap.cc (class mmap_record): Pack 4 byte-aligned. Convert member dev
591 to plain int.
592 (mmap_record::alloc_fh): Create temporary device from dev and use in
593 call to build_fh_dev.
594
595 2011-03-18 Corinna Vinschen <corinna@vinschen.de>
596
597 * mmap.cc (mmap_record::page_map): Define as variable array rather than
598 as pointer.
599 (mmap_record::alloc_page_map): Remove.
600 (mmap_record::free_page_map): Remove.
601 (mmap_record::init_page_map): New method.
602 (mmap_record::add_record): Take mmap_record parameter by reference
603 rather than by value.
604 (mmap_record::map_pages): Fix comment.
605 (mmap_list::add_record): Allocate space for mmap_record including the
606 page_map in a single ccalloc call. Call init_page_map afterwards.
607 (mmap_list::del_record): Remove call to mmap_record::free_page_map.
608
609 2011-03-16 Corinna Vinschen <corinna@vinschen.de>
610
611 * crt0.c (mainCRTStartup): Move call to _feinitialise from here...
612 * dcrt0.cc (_dll_crt0): ...to here.
613
614 2011-03-16 Corinna Vinschen <corinna@vinschen.de>
615
616 * winver.rc: Fix copyright dates.
617
618 2011-03-14 Corinna Vinschen <corinna@vinschen.de>
619
620 * fhandler_disk_file.cc (fhandler_base::fstat_by_handle): Only use
621 file id as inode number if it masters the isgood_inode check.
622
623 2011-03-13 Christopher Faylor <me.cygwin2011@cgf.cx>
624
625 * fhandler.cc (fhandler_base_overlapped::wait_overlapped): Remove
626 special treatment for ERROR_NO_SYSTEM_RESOURCES. Cancel I/O and reset
627 the overlapped handle on error.
628 (fhandler_base_overlapped::write_overlapped): Limit writes to
629 max_atomic_write bytes in blocking case. Incorporate code from
630 now-defunct write_overlapped_fallback. Fix serious oversight where ptr
631 was not advanced as buffer was written.
632 (fhandler_base_overlapped::write_overlapped_fallback): Eliminate.
633 * fhandler.h (fhandler_base_overlapped::write_overlapped_fallback):
634 Ditto for declaration.
635 (DEFAULT_PIPEBUFSIZE): Lower size to slightly less than documented
636 worst-case atomic write size.
637 (fhandler_overlapped::wait_return): Remove unused element.
638
639 2011-03-09 Christopher Faylor <me.cygwin2011@cgf.cx>
640
641 * fhandler.cc (fhandler_base_overlapped::wait_overlapped): Handle
642 overlapped_fallback error condition like other error conditions. Set
643 res carefully and specifically for each condition rather than resorting
644 to a default.
645 (fhandler_base_overlapped::write_overlapped): Preserve errno in
646 overlapped_fallback condition. Correct write_overlapped_fallback to
647 avoid inappropriate looping.
648 (fhandler_base_overlapped::write_overlapped_fallback): Add some more
649 comments.
650
651 2011-03-09 Christopher Faylor <me.cygwin2011@cgf.cx>
652
653 * fhandler.cc (fhandler_base_overlapped::write_overlapp): Oops!
654 Accommodate change in arguments to wait_overlapped.
655
656 2011-03-09 Christopher Faylor <me+cygwin@cgf.cx>
657
658 * errno.cc (errmap): Change mapping of NO_SYSTEM_RESOURCES to EFBIG.
659 * fhandler.cc (MAX_OVERLAPPED_WRITE_LEN): New constant.
660 (MIN_OVERLAPPED_WRITE_LEN): Ditto.
661 (fhandler_base_overlapped::close): Accommodate change in arguments to
662 wait_overlapped.
663 (fhandler_base_overlapped::setup_overlapped): Add __stdcall and regparm
664 modifiers.
665 (fhandler_base_overlapped::destroy_overlapped): Ditto.
666 (fhandler_base_overlapped::has_ongoing_io): Ditto.
667 (fhandler_base_overlapped::wait_overlapped): Modify to return an enum
668 returning various states. Accept nonblocking parameter.
669 (fhandler_base_overlapped::read_overlapped): Add __stdcall and regparm
670 modifiers. Rework to attempt to be smarter about reacting to states
671 returned by wait_overlapped.
672 (fhandler_base_overlapped::write_overlapped): Ditto. Add fallback
673 option for when wait_overlapped detects that smaller chunks must be
674 written.
675 (fhandler_base_overlapped::write_overlapped_fallback): Ditto.
676 * fhandler.h (DEFAULT_PIPEBUFSIZE): Move definition here from pipe.cc.
677 (fhandler_base::has_ongoing_io): Define with __stdcall and regparm
678 modifiers.
679 (fhandler_base_overlapped::wait_return): New enum.
680 (fhandler_base_overlapped::max_atomic_write): New variable.
681 (fhandler_base_overlapped:: wait_overlapped): Accommodate changes
682 mentioned above to arguments and modifiers.
683 (fhandler_base_overlapped::setup_overlapped): Ditto for modifiers.
684 (fhandler_base_overlapped::read_overlapped): Ditto.
685 (fhandler_base_overlapped::write_overlapped): Ditto.
686 (fhandler_base_overlapped::destroy_overlapped): Ditto.
687 (fhandler_base_overlapped::has_ongoing_io): Ditto.
688 (fhandler_base_overlapped::fhandler_base_overlapped): Zero
689 max_atomic_write.
690 * fhandler_fifo.cc (fhandler_fifo::fhandler_fifo): Set max_atomic_write
691 to the size of the DEFAULT_PIPEBUFSIZE.
692 (fhandler_fifo::wait): Accommodate change in arguments to
693 wait_overlapped.
694 * pipe.cc (fhandler_pipe::fhandler_pipe): Set max_atomic_write to the
695 size of the DEFAULT_PIPEBUFSIZE.
696 (fhandler_pipe::create_selectable): Allow minimum size of DEFAULT_PIPEBUFSIZE.
697 (DEFAULT_PIPEBUFSIZE): Delete here, move to fhandler.h.
698
699 2011-03-08 Corinna Vinschen <corinna@vinschen.de>
700
701 * security.cc: Fix copyright dates.
702
703 2011-03-08 Corinna Vinschen <corinna@vinschen.de>
704
705 * fhandler.cc (fhandler_base::open): When creating a file on a
706 filesystem supporting ACLs, create the file with WRITE_DAC access.
707 Explain why.
708 * fhandler_disk_file.cc (fhandler_disk_file::mkdir): Ditto for
709 directories.
710 * fhandler_socket.cc (fhandler_socket::bind): Ditto for sockets.
711 * path.cc (symlink_worker): Ditto for symlinks.
712 * security.cc (get_file_sd): Always call GetSecurityInfo for directories
713 on XP and Server 2003. Improve comment to explain why.
714 (set_file_attribute): Explicitely cast mode_t value to bool in call to
715 get_file_sd.
716 * wincap.h (wincaps::use_get_sec_info_on_dirs): New element.
717 * wincap.cc: Implement above element throughout.
718
719 2011-03-04 Corinna Vinschen <corinna@vinschen.de>
720
721 * fhandler_procsys.cc (fhandler_procsys::exists): Rewrite.
722 (fhandler_procsys::fill_filebuf): Fill buffer with valid string even if
723 reading the symlink fails.
724
725 2011-03-03 Corinna Vinschen <corinna@vinschen.de>
726
727 * posix_ipc.cc (ipc_cond_timedwait): If ipc_mutex_unlock fails, return
728 actual error number.
729 (_mq_send): Break loop if ipc_cond_timedwait returns with error.
730 (_mq_receive): Ditto.
731
732 2011-03-03 Corinna Vinschen <corinna@vinschen.de>
733
734 * errno.cc (__xpg_strerror_r): Add accidentally missing condition.
735
736 2011-03-02 Corinna Vinschen <corinna@vinschen.de>
737
738 * fhandler_procsys.cc (fhandler_procsys::open): Call worker exists
739 method, rather than wrapper.
740
741 2011-03-01 Christopher Faylor <me+cygwin@cgf.cx>
742
743 * autoload.cc (dll_load): Avoid in_forkee test since this apparently
744 fails even when not forked.
745
746 2011-03-01 Christopher Faylor <me+cygwin@cgf.cx>
747
748 * include/cygwin/version.h: Bump CYGWIN_VERSION_DLL_MINOR to 9.
749
750 2011-02-28 Christopher Faylor <me+cygwin@cgf.cx>
751
752 * autoload.cc (dll_load): Only perform DONT_RESOLVE_DLL_REFERENCES hack
753 on systems which need it.
754 * wincap.cc (use_dont_resolve_hack): Set as appropriate.
755 * wincap.h (use_dont_resolve_hack): Define.
756
757 2011-02-28 Christopher Faylor <me+cygwin@cgf.cx>
758
759 * autoload.cc (dll_load): Make inline. Clarify logic.
760
761 2011-02-27 Corinna Vinschen <corinna@vinschen.de>
762
763 * autoload.cc (dll_load): Only call LoadLibraryExW with
764 DONT_RESOLVE_DLL_REFERENCES if a normal LoadLibrary call failed with
765 ERROR_INVALID_ADDRESS.
766 (LsaRegisterLogonProcess): Align comment to previous change.
767
768 2011-02-26 Christopher Faylor <me+cygwin@cgf.cx>
769
770 * autoload.cc: Use LoadDLLfuncEx3 for all winmm functions. Accommodate
771 changes to LoadDLLprime.
772 (LoadDLLprime): Take an extra argument indicating whether this dll
773 needs special handling on fork. Place this information in the "handle"
774 location.
775 (LoadDLLfuncEx3): Eliminate "func" handling. Pass new
776 no_resolve_on_fork argument to LoadDLLprime.
777 (dll_load): New function.
778 (std_dll_init): Accommodate changes to dll_info::handle. Use dll_load
779 to load DLL in both cases where it is used.
780
781 2011-02-26 Corinna Vinschen <corinna@vinschen.de>
782
783 * autoload.cc: Make autoloaded ntdll function non-optional. Ditto for
784 secur32 functions, except for LsaRegisterLogonProcess. Change return
785 value to ERROR_PROC_NOT_FOUND. Explain why.
786 * sec_auth.cc (lsaauth): Handle ERROR_PROC_NOT_FOUND from call to
787 LsaRegisterLogonProcess when generating the errno value.
788
789 2011-02-22 Corinna Vinschen <corinna@vinschen.de>
790
791 * dcrt0.cc: Fix copyright dates.
792 * winsup.h: Ditto.
793 * syscalls.cc (_read): Move EXPORT_ALIAS to its rightful place.
794
795 2011-02-21 Christopher Faylor <me+cygwin@cgf.cx>
796
797 * cygwin.din: Mark __assert* and _abort as NOSIGFE.
798
799 2011-02-21 Corinna Vinschen <corinna@vinschen.de>
800
801 * fhandler_socket (fhandler_socket::readv): Call recv_internal directly,
802 rather than recvmsg.
803 (fhandler_socket::writev): Call send_internal directly, rather than
804 sendmsg.
805 * net.cc (cygwin_recv): Call fhandler_socket::recvfrom directly, rather
806 than cygwin_recvfrom.
807 (cygwin_send): Call fhandler_socket::sendto directly, rather than
808 cygwin_sendto.
809
810 2011-02-20 Christopher Faylor <me+cygwin@cgf.cx>
811
812 * fhandler.cc (fhandler_base_overlapped::close): Finish any pending I/O
813 before closing.
814 (fhandler_base_overlapped::wait_overlapped): Defensively zero bytes
815 read. Add more info to debugging output.
816
817 2011-02-18 Christopher Faylor <me+cygwin@cgf.cx>
818
819 * dcrt0.cc (dll_crt0_1): Add a CYGHEAP_DEBUG conditional for debugging
820 which allocates a lot of space at startup.
821
822 2011-02-18 Corinna Vinschen <corinna@vinschen.de>
823
824 * cygwin.sc: Set alignment of .cygheap section to 64K.
825
826 2011-02-15 Corinna Vinschen <corinna@vinschen.de>
827
828 * spawn.cc (spawn_guts): Only set PID_NOTCYGWIN in _P_OVERLAY mode.
829 Drop flag if creating new process failed.
830
831 2011-02-15 Corinna Vinschen <corinna@vinschen.de>
832
833 * Throughout fix copyright dates.
834
835 2011-02-15 Corinna Vinschen <corinna@vinschen.de>
836
837 * devices.in: Throughout use slashes instead of backslashes in the
838 native path of devices not backed by native NT devices.
839 * devices.cc: Regenerate.
840 * globals.cc (ro_u_pmem): Use correct case.
841 (ro_u_globalroot): New R/O unicode string.
842 * path.cc (path_conv::check): Fix incorrect handling of /proc/sys
843 block devices if they are just visited due to a component check.
844 (symlink_info::posixify): Fix typo in comment.
845 (cygwin_conv_path): Use ro_u_globalroot instead of string constant.
846 (fast_cwd_version): New shared variable to store FAST_CWD version
847 used on the system.
848 (find_fast_cwd_pointer): Rename from find_fast_cwd_pointers. Don't
849 set global fast_cwd_ptr pointer here. Return pointer value instead.
850 (find_fast_cwd): New function to set fast_cwd_ptr and fast_cwd_version.
851 (cwdstuff::override_win32_cwd): Call find_fast_cwd from here.
852 Check for fast_cwd_version to differ between old and new FAST_CWD
853 structure. Check old_cwd for NULL to avoid SEGV. Don't set CWD if
854 we have neitehr a valid fast_cwd_ptr, nor a valid CWD handle in the
855 process parameter block.
856 (cwdstuff::set): Create Win32 path taking /proc/sys paths into account.
857 * spawn.cc (spawn_guts): Recode creating runpath. Also take /proc/sys
858 paths into account. Drop special CWD handling when starting non-Cygwin
859 processes.
860
861 2011-02-15 Corinna Vinschen <corinna@vinschen.de>
862
863 * fhandler_procsys.cc (fhandler_procsys::opendir): Avoid SEGV if
864 opening object directory fails.
865 * fhandler_virtual.cc (fhandler_virtual::opendir): Don't leak memory.
866
867 2011-02-15 Corinna Vinschen <corinna@vinschen.de>
868
869 * fhandler_disk_file.cc (fhandler_disk_file::readdir_helper): Don't
870 append slash if there is one already.
871
872 2011-02-15 Corinna Vinschen <corinna@vinschen.de>
873
874 Revert change from 2010-08-31:
875 * path.cc (normalize_posix_path): Drop support for //./ and //?/
876 prefixes.
877 (path_conv::check): Ditto.
878
879 2011-02-15 Corinna Vinschen <corinna@vinschen.de>
880
881 * fhandler_disk_file.cc (fhandler_disk_file::readdir_helper): Use POSIX
882 path to check for symlink.
883
884 2011-02-14 Corinna Vinschen <corinna@vinschen.de>
885
886 * config/i386/profile.h: Sync with Mingw.
887
888 2011-02-13 Corinna Vinschen <corinna@vinschen.de>
889
890 * path.cc (struct _FAST_CWD): Redefine to new layout used since patch
891 for KB 2393802. Adjust comments throughout.
892 (struct _FAST_CWD_OLD): Rename former definition.
893 (cwdstuff::override_win32_cwd): Check if the OS is using the old or the
894 new FAST_CWD structure layout and handle accordingly.
895
896 2011-02-11 Christopher Faylor <me+cygwin@cgf.cx>
897
898 * mkstatic: Make sure that we are not cd'ed to temporary directory on
899 exit to avoid bogus warnings on directory cleanup.
900 * speclib: Ditto.
901 * mkimport: Ditto.
902
903 2011-02-11 Christopher Faylor <me+cygwin@cgf.cx>
904
905 * cygwin.sc: Eliminate __cygheap_mid.
906 * cygheap.cc: Ditto.
907
908 2011-02-11 Christopher Faylor <me+cygwin@cgf.cx>
909
910 * cygheap.cc (_cygheap_mid): Drop unneeded section attribute.
911 (cygheap_init): Just zero cygheap structure.
912 * cygwin.sc: Keep 16 byte alignment but drop all other alignments
913 related to cygheap. Eliminate unused __cygheap_end1.
914
915 2011-02-11 Corinna Vinschen <corinna@vinschen.de>
916
917 * cygwin.sc: Raise default cygheap size to 1 Meg. Set alignment to
918 standard 64K.
919
920 2011-02-11 Corinna Vinschen <corinna@vinschen.de>
921
922 * include/endian.h: Move definitions of __BIG_ENDIAN, __LITTLE_ENDIAN,
923 and __BYTE_ORDER into ...
924 * include/bits/endian.h: New file.
925 * include/arpa/nameser_compat.h: Include endian.h rather than defining
926 BYTE_ORDER here.
927 * include/asm/byteorder.h: Include bits/endian.h. Drop definition of
928 __LITTLE_ENDIAN.
929 * include/netinet/ip.h: Include bits/endian.h. Drop definitions of
930 BIG_ENDIAN, LITTLE_ENDIAN, and BYTE_ORDER. Use underscored variants
931 of aforementioned constants.
932 * include/netinet/tcp.h: Ditto.
933 * include/sys/param.h: Drop disabled definitions of BIG_ENDIAN,
934 LITTLE_ENDIAN, and BYTE_ORDER.
935
936 * include/netinet/ip.h: Reformat. Define setsockopt IP_TOS options
937 matching recent RFCs. Tweak comments.
938
939 2011-02-10 Eric Blake <eblake@redhat.com>
940
941 * errno.cc (includes): Avoid compilation failure if <string.h>
942 settles on wrong strerror_r signature.
943
944 * errno.cc (__xpg_strerror_r): New function.
945 (strerror_r): Update to copy newlib's fixes.
946 (strerror): Set errno on failure.
947 (_sys_errlist): Cause EINVAL failure for reserved values.
948 * cygwin.din: Export new function.
949 * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Combine
950 this into minor 236.
951
952 2011-02-09 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
953
954 * cygwin.din (pthread_yield): Export as alias to sched_yield.
955 * include/pthread.h (pthread_yield): Declare.
956 * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
957 * posix.sgml (std-deprec): Add pthread_yield.
958
959 2011-02-09 Christopher Faylor <me+cygwin@cgf.cx>
960
961 * cygheap.cc: Add some __stdcall decoration where appropriate.
962 * lib/cygwin_crt0.c: __attribute -> __attribute__.
963
964 2011-02-09 Christopher Faylor <me+cygwin@cgf.cx>
965
966 * hookapi.cc (hook_or_detect_cygwin): Prevent i from being considered
967 uninitialized by gcc.
968
969 2011-02-09 Christopher Faylor <me+cygwin@cgf.cx>
970
971 * exception.h: Remove DEBUG_EXCEPTION left over debugging ifdef.
972
973 2011-02-08 Christopher Faylor <me+cygwin@cgf.cx>
974
975 * dll_init.cc: Fix typo in comment.
976
977 2011-02-07 Corinna Vinschen <corinna@vinschen.de>
978
979 * configure.in: Remove AC_ALLOCA test and test for __builtin_memset.
980 * configure: Regenerate.
981
982 2011-02-07 Corinna Vinschen <corinna@vinschen.de>
983
984 * fhandler_console.cc (fhandler_console::write_normal): Remove
985 erroneous premature return after collecting truncated multibyte
986 sequence in trunc_buf. Rather fall through to printing routine.
987 Fix return value to take trunc_buf content into account. Improve
988 comments.
989
990 2011-02-05 Christopher Faylor <me+cygwin@cgf.cx>
991
992 * autoload.cc (wsock_init): Properly define WSAStartup function pointer
993 to avoid stack damage.
994
995 2011-02-02 Corinna Vinschen <corinna@vinschen.de>
996
997 * libc/bsdlib.cc: Include err.h.
998
999 2011-02-02 Eric Blake <eblake@redhat.com>
1000
1001 * include/err.h: Fix loss of semicolons in previous patch.
1002
1003 2011-02-02 Corinna Vinschen <corinna@vinschen.de>
1004
1005 * include/err.h (err): Add noreturn attribute.
1006 (errx): Ditto.
1007 (verr): Ditto.
1008 (verrx): Ditto.
1009
1010 2011-02-02 Corinna Vinschen <corinna@vinschen.de>
1011
1012 * path.cc (conv_path_list): Remove enclosing quotes and trailing
1013 backslashes from Win32 environment path lists.
1014
1015 2011-02-01 Christian Franke <franke@computer.org>
1016
1017 * fhandler.cc (fhandler_base::fsync): Ignore ERROR_INVALID_FUNCTION
1018 error from FlushFileBuffers().
1019
1020 2011-01-31 Corinna Vinschen <corinna@vinschen.de>
1021
1022 * syscalls.cc (utmp_data): Fix potential buffer overflow.
1023
1024 2011-01-31 Corinna Vinschen <corinna@vinschen.de>
1025
1026 * fhandler_socket.cc (address_in_use): Improve comment readability.
1027
1028 2011-01-30 Corinna Vinschen <corinna@vinschen.de>
1029
1030 * fhandler_socket.cc (address_in_use): Disable. Add comment.
1031 (fhandler_socket::bind): Change comment to explain setting the
1032 SO_EXCLUSIVEADDRUSE socket option. Remove code which checks for
1033 address in use.
1034 * net.cc (cygwin_setsockopt): Never set SO_REUSEADDR option. Improve
1035 comment to compensate for the deleted comment in fhandler_socket::bind.
1036 * wincap.cc: Throughout, drop has_enhanced_socket_security from wincaps.
1037 * wincap.h (struct wincaps): Drop has_enhanced_socket_security flags
1038 and method.
1039
1040 2011-01-28 Peter Foley <jpfoley2@verizon.net>
1041
1042 * configure.in: Define LIBSERVER regardless of cross_host.
1043 * configure: Regenerate.
1044
1045 2011-01-28 Corinna Vinschen <corinna@vinschen.de>
1046
1047 * fhandler_socket.cc (fhandler_socket::wait_for_events): Call
1048 pthread_testcancel in case of timeout to enable pthread_cancel
1049 on waiting thread.
1050
1051 2011-01-27 Corinna Vinschen <corinna@vinschen.de>
1052
1053 * include/features.h (__STDC_ISO_10646__): Move to newlib's
1054 sys/features.h.
1055
1056 2011-01-26 Corinna Vinschen <corinna@vinschen.de>
1057
1058 * fhandler_disk_file.cc (fhandler_base::fstat_by_nfs_ea): Fix
1059 computation of st_blocks.
1060 (fhandler_base::fstat_helper): Fix formatting.
1061
1062 2011-01-24 Corinna Vinschen <corinna@vinschen.de>
1063
1064 * include/features.h (__STDC_ISO_10646__): Define. Add comment.
1065
1066 2011-01-21 Corinna Vinschen <corinna@vinschen.de>
1067
1068 * syscalls.cc (rename): Fix permission problem with symlinks on NFS.
1069 Rework how NtOpenFile gets called to make it more readable. Change
1070 comment.
1071
1072 2011-01-20 Corinna Vinschen <corinna@vinschen.de>
1073
1074 * exec.cc: Include pinfo.h.
1075 * winf.h: Move definitions of _P_PATH_TYPE_EXEC and _P_MODE from here...
1076 * pinfo.h: ...to here.
1077 (_P_PATH_TYPE_EXEC): Redefine to be bigger than _P_SYSTEM.
1078 (_P_MODE): Redefine so as not to mask out _P_SYSTEM.
1079 * spawn.cc (spawnlp): Add _P_PATH_TYPE_EXEC flag in call to spawnve.
1080 (spawnlpe): Ditto.
1081 (spawnvp): Ditto.
1082
1083 2011-01-19 Corinna Vinschen <corinna@vinschen.de>
1084
1085 * spawn.cc (av::fixup): Reenable #! handling for all exec functions.
1086 Return ENOEXEC in !p_type_exec case only for unrecognized files.
1087 Fix comment formatting.
1088
1089 2011-01-19 Corinna Vinschen <corinna@vinschen.de>
1090
1091 * exec.cc (execlp): Add missing _P_PATH_TYPE_EXEC flag in call to
1092 spawnve.
1093
1094 2011-01-19 Corinna Vinschen <corinna@vinschen.de>
1095
1096 * exec.cc: Rearrange functions in alphabetical order.
1097 (_execve): Drop temporary define and drop export alias.
1098 (execl): Call spawnve.
1099 (execle): New function.
1100 (execlp): New function.
1101 (execv): Call spawnve.
1102 (execve): Drop converting NULL envp to emtpy envp.
1103 (execvp): Call spawnve.
1104 (execvpe): Drop converting NULL envp to emtpy envp. Call spawnve.
1105 (fexecve): Call spawnve.
1106 * spawn.cc (spawnve): Convert NULL envp to emtpy envp. Remove outdated
1107 comment.
1108 (spawnlp): Call spawnve.
1109 (spawnlpe): Ditto.
1110 (spawnvp): Ditto.
1111 (spawnvpe): Fix formatting.
1112
1113 2011-01-19 Corinna Vinschen <corinna@vinschen.de>
1114
1115 * exec.cc (strccpy): Move function from here...
1116 * strfuncs.cc (strccpy): ...to here.
1117 * string.h (strccpy): Declare.
1118 * winsup.h (strccpy): Drop declaration.
1119
1120 2011-01-19 Corinna Vinschen <corinna@vinschen.de>
1121
1122 * errno.cc (errmap): Add error codes for invalid binaries.
1123 * exec.cc (execvp): Call spawnve with _P_PATH_TYPE_EXEC flag
1124 from here.
1125 (execvpe): Ditto.
1126 * spawn.cc (spawn_guts): Filter _P_PATH_TYPE_EXEC from mode and
1127 store in p_type_exec. Call av::fixup with addtional p_type_exec
1128 argument.
1129 (spawnve): Check for filtered mode.
1130 (spawnvpe): Add _P_PATH_TYPE_EXEC flag when calling spawnve.
1131 (av::fixup): Accept additional bool parameter p_type_exec. Only check
1132 for script if p_type_exec is true.
1133 * winf.h (_P_PATH_TYPE_EXEC): Define.
1134 (_P_MODE): Define.
1135 (av::fixup): Declare with additional bool parameter.
1136
1137 2011-01-17 Corinna Vinschen <corinna@vinschen.de>
1138
1139 * fhandler_proc.cc (format_proc_partitions): Fix compiler warning.
1140
1141 2011-01-17 Corinna Vinschen <corinna@vinschen.de>
1142
1143 * path.cc (path_conv::check): Don't follow reparse point symlinks if
1144 PC_SYM_NOFOLLOW_REP flag is set.
1145 (cygwin_conv_path): Set PC_SYM_NOFOLLOW_REP flag when converting from
1146 POSIX to Win32.
1147 * path.h (enum pathconv_arg): Define PC_SYM_NOFOLLOW_REP flag.
1148
1149 2011-01-17 Corinna Vinschen <corinna@vinschen.de>
1150
1151 * fhandler_proc.cc (proc_tab_cmp): Fix typo in comment.
1152 (fhandler_proc::fill_filebuf): Handle return value of 0 from format
1153 function as error.
1154 (format_proc_stat): Set errno when returning 0 size.
1155 (format_proc_partitions): Rewrite method to fetch partition info.
1156
1157 2011-01-13 Corinna Vinschen <corinna@vinschen.de>
1158
1159 * fhandler_disk_file.cc (fhandler_base::fstat_helper): Always set
1160 st_size of directories to 0. Explain why.
1161
1162 2011-01-12 Corinna Vinschen <corinna@vinschen.de>
1163
1164 * posix.sgml: Add madvise to BSD list.
1165
1166 2011-01-12 Corinna Vinschen <corinna@vinschen.de>
1167
1168 * cygwin.din (madvise): Export posix_madvise as madvise.
1169 * include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR.
1170 * include/sys/mman.h: Define madvise constants, keep Linux-specific
1171 constants undefined.
1172 (madvise): Declare.
1173
1174 2011-01-12 Corinna Vinschen <corinna@vinschen.de>
1175
1176 * fhandler.h (struct part_t): New type.
1177 (class fhandler_dev_floppy): Convert partitions to part_t pointer.
1178 Add lock_partition method.
1179 * fhandler_floppy.cc (fhandler_dev_floppy::lock_partition): New method
1180 to implement ondemand partition locking.
1181 (fhandler_dev_floppy::write_file): Call lock_partition from here if
1182 writing failed due to a potential write restriction on a disk
1183 partition.
1184 (fhandler_dev_floppy::open): Don't lock partitions here.
1185 (fhandler_dev_floppy::close): Keep track of partition handle reference
1186 count. Close handles and remove partitions pointer ony if count is 0.
1187 (fhandler_dev_floppy::dup): Just copy partitions pointer and increment
1188 reference count.
1189
1190 2011-01-11 Corinna Vinschen <corinna@vinschen.de>
1191
1192 * fhandler.h (MAX_PARTITIONS): New definition.
1193 (class fhandler_dev_floppy): Add partitions array member. Add close
1194 method.
1195 * fhandler_floppy.cc (fhandler_dev_floppy::fhandler_dev_floppy): Zero
1196 out partitions array.
1197 (fhandler_dev_floppy::open): Fix "entire disk" condition for call to
1198 DeviceIoControl (FSCTL_ALLOW_EXTENDED_DASD_IO).
1199 When opening disks for writing, call DeviceIoControl (FSCTL_LOCK_VOLUME)
1200 on all affected disk partitions starting with Vista.
1201 (fhandler_dev_floppy::close): New method.
1202 (fhandler_dev_floppy::dup): Duplicate handles in partitions, if any.
1203 * wincap.h (wincaps::has_restricted_raw_disk_access): New element.
1204 * wincap.cc: Implement above element throughout.
1205
1206 2011-01-11 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
1207
1208 * termios.cc (cfgetospeed, cfgetispeed): Constify argument per POSIX.
1209 * include/sys/termios.h (cfgetospeed, cfgetispeed): Declare functions.
1210 Move macros after declarations and make conditional on !__cplusplus.
1211
1212 2011-01-11 Corinna Vinschen <corinna@vinschen.de>
1213
1214 * cygtls.cc (_cygtls::init_thread): Call _REENT_INIT_PTR. Drop setting
1215 current locale and calling srand48.
1216
1217 2011-01-02 Christopher Faylor <me+cygwin@cgf.cx>
1218
1219 * ChangeLog-2010: Create from ChangeLog.
1220 * ChangeLog: Start fresh.
This page took 0.082575 seconds and 6 git commands to generate.