]> sourceware.org Git - newlib-cygwin.git/blame - winsup/cygwin/ChangeLog
merge from gcc
[newlib-cygwin.git] / winsup / cygwin / ChangeLog
CommitLineData
e2f2a27e
CF
1Sat Mar 10 15:22:44 2001 Christopher Faylor <cgf@cygnus.com>
2
3 * syscalls.cc (_rename): Set errno to ENOENT when an old path doesn't
4 exist (from Kazuhiro Fujieda <fujieda@jaist.ac.jp>). Also set EACCES
5 when directory is not writable.
6
6ebccdc1
CF
7Wed Mar 7 15:49:47 2001 Christopher Faylor <cgf@cygnus.com>
8
9 * syscalls.cc (_read): Change definition to return ssize_t to be
10 consistent with read.
11 (_write): Change definition to return ssize_t to be consistent with
12 write.
13
efd76e41
CF
14Wed Mar 7 01:08:21 2001 Christopher Faylor <cgf@cygnus.com>
15
16 * sigproc.h (sigthread): Declare new methods. Create new winapi_lock
17 field.
18 (sigframe:;set): Call get_winapi_lock after frame is set so that signal
19 handler thread knows not to call SuspendThread.
20 (sigframe::~sigframe): Release winapi_lock.
21 * exceptions.cc (sigthread::get_winapi_lock): New method.
22 (sigthread::release_winapi_lock): New method.
23 (setup_handler): Use get_winapi_lock to ensure that signalled thread is
24 not blocked in a Windows API.
25
26 * path.h (path_types): Avoid broken GCC warning.
27
bf11a54f
CV
28Tue Mar 6 14:02:00 2001 Corinna Vinschen <corinna@vinschen.de>
29
30 * path.cc (suffix_scan::has): Change order of conditionals
31 to allow checking for .lnk suffixes even if in_suffixes is empty.
32
33Tue Mar 6 13:02:00 2001 Corinna Vinschen <corinna@vinschen.de>
7cdc9fee
CV
34
35 * autoload.c (cygwin_premain0): Add missing parameter.
36 * binmode.c (cygwin_premain0): Ditto.
37 * textmode.c (cygwin_premain0): Ditto.
38
39Tue Mar 6 12:04:00 2001 Jason Tiller <jtiller@sjm.com>
40
41 * auto_load.cc: Add "GetKeyboardLayout" entry in the list of
42 Win32 User32.DLL exports to provide.
43 * fhandler.h (class fhandler_console): Add meta_mask private
44 member to remember which keystroke modifiers should generate
45 META.
46 * fhandler_console.cc (fhandler_console::read): Modify code that
47 tests a keystroke for a META-escaped key to use the 'meta_mask'
48 variable.
49 (fhandler_console::fhandler_console): Add definition for
50 variable "meta_mask" used to determine if a keystroke should be
51 preceded by META in the client console stream. Set meta_mask
52 based on whether or not user's keyboard language is English -
53 non-English keyboards pass AltGr (right <ALT>) unmolested,
54 whereas English keyboards now interpret left- and right-<ALT>
55 as META.
56
a887211b
CV
57Mon Mar 5 20:15:00 2001 Corinna Vinschen <corinna@vinschen.de>
58
59 * include/a.out.h: Add copyright hint.
60 * include/fcntl.h: Ditto.
61 * include/lastlog.h: Ditto.
62 * include/memory.h: Ditto.
63 * include/mntent.h: Ditto.
64 * include/paths.h: Ditto.
65 * include/poll.h: Ditto.
66 * include/syslog.h: Ditto.
67 * include/termio.h: Ditto.
68 * include/tzfile.h: Ditto.
69 * include/arpa/inet.h: Ditto.
70 * include/asm/byteorder.h: Ditto.
71 * include/asm/socket.h: Ditto.
72 * include/asm/types.h: Ditto.
73 * include/cygwin/if.h: Ditto.
74 * include/cygwin/mtio.h: Ditto.
75 * include/cygwin/rdevio.h: Ditto.
76 * include/cygwin/socket.h: Ditto.
77 * include/net/if.h: Ditto.
78 * include/netinet/in.h: Ditto.
79 * include/netinet/in_systm.h: Ditto.
80 * include/netinet/ip.h: Ditto.
81 * include/netinet/ip_icmp.h: Ditto.
82 * include/netinet/tcp.h: Ditto.
83 * include/sys/cdefs.h: Ditto.
84 * include/sys/cygwin.h: Ditto.
85 * include/sys/ioctl.h: Ditto.
86 * include/sys/mman.h: Ditto.
87 * include/sys/mount.h: Ditto.
88 * include/sys/mtio.h: Ditto.
89 * include/sys/procfs.h: Ditto.
90 * include/sys/resource.h: Ditto.
91 * include/sys/smallprint.h: Ditto.
92 * include/sys/socket.h: Ditto.
93 * include/sys/strace.h: Ditto.
94 * include/sys/syslog.h: Ditto.
95 * include/sys/sysmacros.h: Ditto.
96 * include/sys/termio.h: Ditto.
97 * include/sys/termios.h: Ditto.
98 * include/sys/uio.h: Ditto.
99 * include/sys/un.h: Ditto.
100 * include/sys/utsname.h: Ditto.
101 * include/sys/vfs.h: Ditto.
102 * include/sys/wait.h: Ditto.
103 * regexp/regerror.c: Ditto.
104 * regexp/regexp.h: Ditto.
105 * regexp/regmagic.h: Ditto.
106
95a8465b
CF
107Mon Mar 5 01:25:03 2001 Christopher Faylor <cgf@cygnus.com>
108
109 * dlopen.c (dlopen): Return NULL when name is NULL (suggested by
110 chrisiasci@aol.com).
111
112 * cygwin.din: Add a new, internally used export -
113 _check_for_executable.
114 * dcrt0.cc (dll_crt0_1): Set _check_for_executable for older binaries.
115 Pass user_data to premain functions.
116 * fhandler.cc (fhandler_disk_file::open): Only check for executable if
117 the linked program is intereested in the executable bit.
118 (fhandler_disk_file::check_execable_p): Delete.
119 * fhandler.h (executable_states): New enumeration of various states of
120 executable bit caring.
121 (fhandler_base::set_execable_p): New method.
122
123 * fhandler_termios.cc (fhandler_termios::line_edit): Flag when a signal
124 has been sent to the tty. Return -1 when this is so.
125 * fhandler_console.cc (fhandler_console::read): Return -1 when signal
126 sending character encountered.
127
128 * path.cc (path_conv::check): Record when path refers to a disk device.
129 Move executable extension check here.
130 (check_sysfile): Accomodate new EXEC path states.
131 (has_suffix): Remove.
132 (next_suffix): Remove.
133 (class suffix_scan): New clas.
134 (suffix_scan::has): New method.
135 (suffix_scan:next): New method.
136 (symlink_info::check): Use suffix_scan method to control for scanning
137 for suffixes.
138 * path.h (path_conv::exec_state): New method.
139 * perprocess.h: Make "C" friendly.
140 * include/cygwin/version.h: Define CYGWIN_VERSION_CHECK_FOR_S_IEXEC.
141 Bump CYGWIN_VERSION_API_MINOR.
142 * include/sys/cygwin.h: Change premain declarations.
143
144 * winsup.h: Move __cplusplus test to after builtin defines.
145
306c4b67
ED
1462001-03-04 Egor Duda <deo@logos-m.ru>
147
148 * fhandler.h (class fhandler_tty_common): New mutex and event to
149 syncronize input on master tty with slave tty.
150 * fhandler_tty.cc (fhandler_pty_master::accept_input): Use them to
151 syncronize with slave.
152 * fhandler_tty.cc (fhandler_tty_slave::read): Use input mutex and
153 event to syncronize with master. Do not limit amount of data read
154 from master to vmin value. Interrupt on signal and return already
155 read data, if any.
156 * fhandler_tty.cc (fhandler_tty_slave::open): Handle input mutex and
157 event.
158 * fhandler_tty.cc (fhandler_tty_common::close): Ditto.
159 * fhandler_tty.cc (fhandler_tty_common::set_close_on_exec): Ditto.
160 * fhandler_tty.cc (fhandler_tty_common::fixup_after_fork): Ditto.
161 * fhandler_tty.cc (fhandler_tty_common::dup): Ditto.
162 * tty.h (tty::open_input_mutex): New function.
163 * tty.cc (tty::common_init): Create input mutex and event.
164
ed94def2
CV
165Fri Mar 2 13:32:00 2001 Corinna Vinschen <corinna@vinschen.de>
166
167 * dir.cc (readdir): Fix creating path in symlink check.
168
e03f5f73
CV
169Fri Mar 2 12:33:00 2001 Corinna Vinschen <corinna@vinschen.de>
170
171 * dir.cc (readdir): Fix shortcut==symlink condition.
172 * environ.cc: Add extern decl for `allow_winsymlinks'.
173 (struct parse_thing): Add entry for `[no]winsymlinks'.
174 * path.cc (symlink): Change to be able to create both,
175 symlink==shortcut and symlink==systemfile, dependent of
176 the setting of `allow_winsymlinks'.
177 * security.cc (cygwin_logon_user): Add debug output.
178 * shortcut.c: Add defines from path.h.
179 (has_exec_chars): Copy from path.h.
180 (check_shortcut): Check for executable file condition if not a
181 shortcut.
182
903c330d
CF
183Thu Mar 1 21:06:07 2001 Christopher Faylor <cgf@cygnus.com>
184
185 * exceptions.cc (sig_handle_tty_stop): Ignore attempts to suspend a
186 process if started by non-cygwin parent.
187
d80999a1
CF
188Thu Mar 1 20:48:11 2001 Christopher Faylor <cgf@cygnus.com>
189
190 * select.cc (peek_console): Don't report read_ready on mouse events
191 unless we are looking for mouse events.
192 * fhandler.h (fhandler_console::mouse_aware): New method.
193
2de76014
CV
194Wed Feb 28 15:10:00 2001 Corinna Vinschen <corinna@vinschen.de>
195
196 * uinfo.cc: Eliminate `#include <wchar.h>'.
197
739db26a
ED
1982001-02-28 Egor Duda <deo@logos-m.ru>
199
200 * fhandler_floppy.cc (fhandler_dev_floppy::lseek): Determine
201 drive geometry or partition size to allow seeking from the end of
202 raw floppy device. Don't allow positioning past the end of media or
203 to offsets bigger then max off_t.
204
a53136cc
ED
2052001-02-27 Egor Duda <deo@logos-m.ru>
206
207 * fhandler.h (class fhandler_console): Make all variables that
208 describe "state" of console to be members of fhandler_console.
209 default_color is now the color which is set when console recieves
210 reset command.
211 * fhandler_console.cc (fhandler_console::fhandler_console): Turn
212 mouse handling and raw keyboard mode off by default. Initialize
213 state information.
214 * fhandler.cc (fhandler_console::set_raw_win32_keyboard_mode): New
215 function.
216 * fhandler_console.cc (fhandler_console::set_default_attr): New
217 function. Reset console attributes to default values.
218 * fhandler_console.cc (fhandler_console::open): Reset attributes.
219 * fhandler_console.cc (fhandler_console::get_win32_attr): New function.
220 Calculate win32-style console attribute based on terminal attributes.
221 * fhandler_console.cc (fhandler_console::set_cursor_maybe): Use
222 member variable.
223 * fhandler_console.cc (fhandler_console::read): If in raw-win32
224 keyboard mode, encode win32 keyboard events in \033{x;y;z;t;u;wK
225 sequences.
226 * fhandler_console.cc (fhandler_console::dup): Copy all state
227 information to the dup()ed handle.
228 * fhandler_console.cc (fhandler_console::scroll_screen): Use current
229 fill-in attribute.
230 * fhandler_console.cc (fhandler_console::clear_screen): Ditto.
231 * fhandler_console.cc (fhandler_console::char_command): Check if we
232 saw '?' symbol by member variable. Set terminal attributes on \033[Xm
233 commands. \033[24m - turn off underline mode, \033[27m - turn off
234 reverse mode, \033[39m - restore default foreground color.
235 \033[49m - restore default background color. \033[2000h - turn on raw
236 keyboard mode, \033[2000l - turn off raw keyboard mode.
237 * fhandler_console.cc (fhandler_console::write): Set attribues to
238 default values on reset command.
239
5b331f1e 2402001-02-26 Mike Simons <msimons@moria.simons-clan.com>
efd76e41 241
5b331f1e
CF
242 * times.cc (settimeofday): Replace function stub with working code.
243
88429768
CV
244Mon Feb 26 10:42:00 2001 Corinna Vinschen <corinna@vinschen.de>
245
246 * strace.cc (strace::vprntf): Move prntf functionality to this function
247 adding an va_list interface to strace.
248 (strace::printf): Calls strace::vprntf now.
249 (strace_printf): New function providing an extern "C" interface to
250 trace output.
251 * include/sys/strace.h: Make plain C clean.
252 (class strace): Add `vprntf' method.
253
6626ebfe
CV
254Mon Feb 26 0:10:00 2001 Corinna Vinschen <corinna@vinschen.de>
255
256 * shortcut.c: Remove #include <sys/strace.h>.
257
649033a8
CV
258Sun Feb 25 10:32:00 2001 Corinna Vinschen <corinna@vinschen.de>
259
260 * path.cc (symlink): Add a ".lnk" suffix regardless. Add a comment.
261
80ed95f2
CV
262Sun Feb 25 10:18:00 2001 Corinna Vinschen <corinna@vinschen.de>
263
649033a8 264 * shortcut.c (check_shortcut): Change symlink condition.
80ed95f2 265
675412e9
CV
266Fri Feb 23 10:42:00 2001 Corinna Vinschen <corinna@vinschen.de>
267
268 * mmap.cc (fhandler_disk_file::mmap): Use `addr' correctly.
269 * fhandler_mem.cc (fhandler_dev_mem::mmap): Ditto.
270
ff413a98
CV
271Thu Feb 22 17:09:00 2001 Corinna Vinschen <corinna@vinschen.de>
272
273 * path.cc (symlink): Keep relative paths relative in the DOS
659b480b
CV
274 path inside of a shortcut. If that's impossible or the target
275 path is already absolute save an absolute path.
ff413a98 276
c5a4eacc
CV
277Thu Feb 22 15:33:00 2001 Corinna Vinschen <corinna@vinschen.de>
278
279 * cygerrno.h: Revert previous patch.
280 * errno.cc: Ditto.
281 * dir.cc: Eliminate `dir_suffixes'.
282 (opendir): Remove usage of `dir_suffixes'.
283 (rmdir): Ditto.
284 * fhandler.cc (fhandler_disk_file::open): Remove usage of
285 `inner_suffixes'.
286 * path.cc: Rename `inner_suffixes' to `lnk_suffixes'.
287 (path_conv::check): Remove usage of `inner_suffixes'.
288 (symlink): Ditto.
289 (symlink_info::check): Handle checking for `.lnk' in path_conv
290 exclusively here.
291 (chdir): Remove usage of `dir_suffixes'.
292 * shortcut.c: Eliminate debug_printf lines.
293 (check_shortcut): Don't set error except on failing ReadFile.
294 * spawn.cc: Remove ".lnk" from `std_suffixes'.
295 * syscalls.cc (_unlink): Remove usage of `inner_suffixes'.
296 Remove ".lnk" from `stat_suffixes'.
297 (_rename): Add check for renaming a symlink to keep the ".lnk"
298 suffix after renaming.
299
79e56091
CV
300Thu Feb 22 13:38:00 2001 Corinna Vinschen <corinna@vinschen.de>
301
302 * shortcut.c: New file. Provides a C interface to reading of
303 Windows shortcuts to avoid compiler flag `-fvtable-thunks'.
304 * shortcut.h: Ditto.
305 * Makefile.in: Add shortcut.o to DLL_OFILES.
306 * cygerrno.h: Provide a C interface to `geterrno_from_win_error' for
307 using in shortcut.c.
308 * errno.cc (geterrno_from_win_error): Define as extern "C".
309 * path.cc (struct symlink_info): Remove methods `check_shortcut' and
310 `check_sysfile'.
311 (shortcut_header): Move to shortcut.c.
312 (shortcut_initalized): Ditto.
313 (create_shortcut_header): Ditto.
314 (cmp_shortcut_header): Ditto.
315 (symlink_info::check_shortcut): Ditto. Reorganize as a plain C function.
316 (symlink_info::check_sysfile): Redefine as a global function using the
317 same parameter list as `check_shortcut' for clearness.
318 (symlink_info::check): Change parameter list for calls to
319 `check_shortcut' and `check_sysfile'.
320
87e6b098
CV
321Thu Feb 22 12:04:00 2001 Corinna Vinschen <corinna@vinschen.de>
322
323 * fhandler.cc (fhandler_disk_file::open): Use `inner_suffixes' when
324 resolving real_path.
325 * path.cc (symlink): Ditto for win32_topath.
326
10b06c5e
CV
327Wed Feb 21 22:41:00 2001 Corinna Vinschen <corinna@vinschen.de>
328
329 * Makefile.in: Add `-lshell32 -luuid' to link pass for new-cygwin1.dll.
330 * autoload.cc: Add LoadDLLinitfunc for ole32.dll.
331 Add LoadDLLfuncEx statements for CoInitialize@4, CoUninitialize@0
332 and CoCreateInstance@20.
333 * dir.cc (dir_suffixes): New datastructure.
334 (readdir): Check for R/O *.lnk files to hide the suffix.
335 (opendir): Use `dir_suffixes' in path conversion.
336 (rmdir): Ditto.
337 * fhandler.cc (fhandler_disk_file::fstat): Add S_IFLNK flag
338 before calling `get_file_attribute'. Take FILE_ATTRIBUTE_READONLY
339 into account only if the file is no symlink.
340 * path.cc (inner_suffixes): New datastructure.
341 (SYMLINKATTR): Eliminated.
342 (path_conv::check): Use `inner_suffixes' on inner path components.
343 (shortcut_header): New global static variable.
344 (shortcut_initalized): Ditto.
345 (create_shortcut_header): New function.
346 (cmp_shortcut_header): Ditto.
347 (symlink): Create symlinks by creating windows shortcuts. Preserve
348 the old code.
349 (symlink_info::check_shortcut): New method.
350 (symlink_info::check_sysfile): Ditto.
351 (symlink_info::check): Check for shortcuts. Move code reading
352 old system attribute symlinks into symlink_info::check_sysfile().
353 (chdir): Use `dir_suffixes' in path conversion.
354 * security.cc (get_file_attribute): Check for S_IFLNK flag.
355 Force 0777 permissions then.
356 * spawn.cc (std_suffixes): Add ".lnk" suffix.
357 * syscalls.cc (_unlink): Use `inner_suffixes' in path conversion.
358 Check for shortcut symlinks to eliminate R/O attribute before
359 calling DeleteFile().
360 (stat_suffixes): Add ".lnk" suffix.
361 (stat_worker): Force 0777 permissions if file is a symlink.
362
0917ed59
ED
3632001-02-21 Egor Duda <deo@logos-m.ru>
364
365 * sigproc.cc (getsem): Make semaphore always non-inheritable.
366
441d7aee
CF
367Mon Feb 19 22:25:53 2001 Christopher Faylor <cgf@cygnus.com>
368
369 * dcrt0.cc (locale_init): Remove.
370
f97e7d75
CF
3712001-02-15 Kazuhiro Fujieda <fujieda@jaist.ac.jp>
372
373 * cygwin.din: Export rand48 functions.
374 * thread.cc (MTinterface::Init): Remove the initialization of
375 `reent_data'.
376 * dcrt0.cc: Add the initalizer to the declaration of `reent_data'.
377 * include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR to 35.
378
fc68bf34
ED
3792001-02-16 Egor Duda <deo@logos-m.ru>
380
381 * signal.cc (signal): Prohibit setting handlers for SIGKILL and
382 SIGSTOP
383 * signal.cc (sigaction): Ditto
384 * syscalls.cc (_lseek): Return EINVAL on invalid input
385
ee2c7251
CF
386Wed Feb 14 14:54:40 2001 Christophe Iasci <chrisiasci@aol.com>
387
388 * dlfcn.cc (dlopen): Do not call LoadLibrary with a NULL pointer, when
389 the library is not found
390
8f8e7442 3912001-02-14 Egor Duda <deo@logos-m.ru>
efd76e41 392
8f8e7442
CF
393 * fhandler_console.cc (fhandler_console::char_command): Ignore unknown
394 rendition codes in \033[xx;yym control sequences
395
cde0c2fb
CF
396Fri Feb 9 23:19:01 2001 Christopher Faylor <cgf@cygnus.com>
397
398 * fork.cc (fork_parent): Return EAGAIN when can't record pid.
399 * pinfo.h (pinfo::remember): Return value of call to proc_subproc.
400 * sigproc.cc (proc_subproc): Return error if can't record pid.
401
c41482c7
CF
402Fri Feb 9 12:17:27 2001 Christopher Faylor <cgf@cygnus.com>
403
404 * syscalls.cc (mknod): Add valid parameters.
405
889109ab
CV
406Thu Feb 8 22:09:00 2001 Corinna Vinschen <corinna@vinschen.de>
407
408 * mmap.cc (mmap): Check for reusing a mapping only on MAP_SHARED
409 and on MAP_PRIVATE|MAP_ANON in the special case of offset 0.
410
db49d0b5
CV
411Thu Feb 8 21:57:00 2001 Corinna Vinschen <corinna@vinschen.de>
412
413 * mmap.cc (class list): Add member `hash'.
414 (list::list): Initialize `hash'.
415 (list::get_list_by_fd): Use filepath hash value to get the correct
416 mapping list if it's not an anonymous mapping.
417 (map::add_list): Initialize `hash' with filepath hash value.
418 (mmap): Check for reusing a mapping only on MAP_SHARED.
419
91d385fe
CF
420Wed Feb 7 18:47:36 2001 Christopher Faylor <cgf@cygnus.com>
421
422 * signal.cc (killpg): Correct first argument.
423
9182099c
CV
424Wed Feb 7 22:22:00 2001 Corinna Vinschen <corinna@vinschen.de>
425
426 * autoload.cc: Add LoadDLLinitfunc for iphlpapi.dll.
427 Add LoadDLLfuncEx statements for GetIfTable@12 and GetIpAddrTable@12.
428 * fhandler_socket.cc (fhandler_socket::ioctl): Move variable
429 definitions to the beginning of the function to allow better debugging.
430 Add handling for SIOCGIFHWADDR, SIOCGIFMETRIC and SIOCGIFMTU.
431 * net.cc: Include iphlpapi.h.
432 (get_2k_ifconf): Rewritten. Uses IP Helper API now.
433 (get_nt_ifconf): Add handling for SIOCGIFHWADDR, SIOCGIFMETRIC
434 and SIOCGIFMTU.
435 (get_95_ifconf): Ditto. Renamed from `get_9x_ifconf'.
436 (get_ifconf): Name loopback `lo' instead of `lo0' as in Linux.
437 Add handling for SIOCGIFHWADDR, SIOCGIFMETRIC and SIOCGIFMTU.
438 Call `get_95_ifconf' only on Windows 95, `get_nt_ifconf' only
439 on Windows NT < Service Pack 3, `get_2k_ifconf otherwise.
440 * include/asm/socket.h: Add defines for SIOCGIFHWADDR, SIOCGIFMETRIC
441 and SIOCGIFMTU.
442 * include/cygwin/if.h: Add `ifr_hwaddr', `ifr_metric' and `ifr_mtu'.
443 (struct ifreq): Add `ifru_hwaddr'.
444
d7ed877b
CV
445Tue Feb 6 15:04:00 2001 Corinna Vinschen <corinna@vinschen.de>
446
447 * syscalls.cc (stat_worker): Add a check for the special case when
448 a process creates a file using mode 000 using ntsec.
449
ae9b22c6
CV
450Mon Feb 5 17:00:00 2001 Corinna Vinschen <corinna@vinschen.de>
451
452 * fhandler.cc (fhandler_base::open): Always add GENERIC_READ access
453 when opening raw disk devices.
454 * fhandler_floppy.cc (fhandler_dev_floppy::lseek): Implement bytewise
455 access.
456 * fhandler_raw.cc (fhandler_dev_raw::open): Always open raw disk device
457 binary.
458 (fhandler_dev_raw::raw_write): Don't drop read buffer content when
459 writing after read.
460
cada03f9
CV
461Mon Feb 5 13:30:00 2001 Corinna Vinschen <corinna@vinschen.de>
462
463 * mmap.cc (mmap_record::fixup_map): New method to duplicate
464 the memory protection in a just forked child.
465 (mmap): Realign gran_len to page boundary only on anonymous
466 mapping before saving in the mmap_record.
467 (munmap): Cleanup code.
468 (msync): Ditto.
469 (fixup_mmaps_after_fork): Ditto. Call mmap_record::fixup_map now.
470
47f81092
CF
471Thu Feb 1 23:08:29 2001 Christopher Faylor <cgf@cygnus.com>
472
473 * cygheap.cc (creturn): Correctly calculate cygheap_max.
474
f8da1507
CF
475Wed Jan 31 10:04:58 2001 Christopher Faylor <cgf@cygnus.com>
476
477 * shared.cc (shared_info::initialize): Reduce size of heap.
478
83443511
CV
479Wed Jan 31 13:22:00 2001 Corinna Vinschen <corinna@vinschen.de>
480
481 * include/sys/resource.h: Fix typo.
482
44e6d951
CV
483Wed Jan 31 13:20:00 2001 Corinna Vinschen <corinna@vinschen.de>
484
83443511 485 * include/sys/resource.h: Add RLIMIT_NLIMITS and RLIM_NLIMITS.
44e6d951 486
4f42df7b
CF
487Tue Jan 30 18:15:23 2001 Christopher Faylor <cgf@cygnus.com>
488
489 * include/cygwin/version.h: Bump version to 1.3.0.
490
9928a7e1
CV
491Tue Jan 30 8:55:00 2001 Corinna Vinschen <corinna@vinschen.de>
492
493 * pinfo.cc (pinfo::init): Use INVALID_HANDLE_VALUE instead of
494 explicit cast (HANDLE) 0xffffffff.
495 * shared.cc (open_shared): Ditto.
496
747e88d3
CF
497Mon Jan 29 17:15:22 2001 Bill Hegardt <bill@troyxcd.com>
498
499 * fhandler_serial.cc (raw_write): Use local copy of OVERLAPPED
500 structure instead of shared structure to fix a race condition between
501 read/write.
502
68ea0dc2
CV
503Mon Jan 29 14:30:00 2001 Corinna Vinschen <corinna@vinschen.de>
504
505 * mmap.cc (mmap): Remove obsolete check for MAP_SHARED|MAP_ANON as
506 being invalid.
507
f977222f
CV
508Mon Jan 29 10:23:00 2001 Corinna Vinschen <corinna@vinschen.de>
509
510 * mmap.cc (mmap_record::find_empty): Fix loop condition.
511
6a4878cf
CF
512Sun Jan 28 19:40:40 2001 Christopher Faylor <cgf@cygnus.com>
513
514 * syscalls.cc (_link): Make sure that newpath does not exist. Set
515 errno if it does.
516
517Sun Jan 28 19:29:08 2001 Christopher Faylor <cgf@cygnus.com>
518
519 * cygheap.cc (init_cheap): Don't specify a load address for the heap.
520 It doesn't work on #!*& Windows 9x.
521 (cygheap_init): Move GetUserName to memory_init.
522 * dcrt0.cc (dll_crt0_1): Call new memory_init functin, eliminate call
523 to heap_init.
524 * heap.cc (heap_init): Improve error output.
525 * heap.h: Correct some declarations.
526 * shared.cc (mount_table_init): Remove.
527 (memory_init): Renamed from shared_init. Reorganize to accomodate
528 strange Windows 9x problems with cygheap/heap interaction.
529 * shared_info.h: Rename shared_init to memory_init.
530
ae6c8e4f
CF
531Sun Jan 28 01:25:33 2001 Christopher Faylor <cgf@cygnus.com>
532
533 * include/cygwin/version.h: Bump API version.
534
9a089f21
CF
535Sun Jan 28 01:18:22 2001 Christopher Faylor <cgf@cygnus.com>
536
537 * cygheap.cc (init_cheap): Move username initialization.
538 (cygheap_init): Here.
539 * shared_info.h (mount_info): Add a sys_mount_table_counter field.
540 (shared_info): Ditto.
541 * path.cc (mount_info::conv_to_win32_path): Check that our mount table
542 is in sync with the system mount table and reinitialize it if not.
543 (mount_info::add_reg_mount): Bump sys_mount_table counters if the
544 system mount table changes.
545 (mount_info::del_reg_mount): Ditto.
546 (mount_info::write_cygdrive_info_to_registry): Ditto.
547 (mount_info::remove_cygdrive_info_from_registry): Ditto.
548
2a6fc028
CF
549Sun Jan 28 00:28:30 2001 Christopher Faylor <cgf@cygnus.com>
550
551 Throughout, change 'cygwin_shared.mount' to 'mount_table'.
552 * child_info.h (child_info): Move shared_h, console_h to cygheap. Add
553 mount_h.
554 * cygheap.h (init_cygheap): Add shared_h, console_h.
555 * cygheap.cc (init_cheap): Initialize heap at a fixed location after
556 the shared memory regions. Initialize cygheap->user name here.
557 * dcrt0.cc (dll_crt0_1): Call getpagesize () to initialize constants.
558 Remove cygheap_init since it is done in shared_init now.
559 (_dll_crt0): Initialize mount_h, remove shared_h and console_h
560 initialization.
561 * fhandler_console.cc (console_shared_h): Eliminate.
562 (get_tty_stuff): Use cygheap->console_h rather than console_shared_h.
6a4878cf
CF
563 * heap.cc (heap_init): Use page size constant calculated earlier in
564 initialization.
2a6fc028
CF
565 * shared.cc: Eliminate cygwin_shared_h. Add cygwin_mount_h.
566 (mount_table_init): New function for initializing a user mount table.
6a4878cf
CF
567 (open_shared_file_map): Use constant for shared memory region.
568 Initialize cygheap and mount table here.
2a6fc028
CF
569 (open_shared): Improve debugging output.
570 (shared_info::initialize): Eliminate call to mount.init.
571 (shared_terminate): Use cygheap->shared_h. Close cygwin_mount_h.
572 (open_shared_file_map): Eliminate.
573 * shared_info.h (mount_info): Add a version field.
6a4878cf
CF
574 (shared_align_past): New macro for calculating location for shared
575 memory regions.
2a6fc028 576 * sigproc.cc (init_child_info): Eliminate shared_h, console_h.
6a4878cf
CF
577 * spawn.cc (spawn_guts): Pass on cygwin_mount_h iff not a different
578 user.
2a6fc028
CF
579 * syscalls.cc (system_info): New global holding system memory defaults.
580 (getpagesize): Use system_info.
581 * uinfo.cc (internal_getlogin): Only fill in user name if nonexistent.
582 * winsup.h: Declare system_info.
583
6a4878cf
CF
584 * passwd.cc (read_etc_passwd): Use cygheap->user.name () rather than
585 retrieving the name again.
2a6fc028 586
bdfeca60
CF
587Sat Jan 27 10:18:02 2001 Christopher Faylor <cgf@cygnus.com>
588
589 * path.cc (path_conv::check): Detect when path has symlinks.
590 (symlink_info::check): Remove debugging stuff.
591 (chdir): Use posix'ized win32 path if cd'ed to a path using symlinks.
592
206a8d88
CF
593Fri Jan 26 21:20:28 2001 Christopher Faylor <cgf@cygnus.com>
594
595 * exceptions.cc (sigreturn): Call any pending signals prior to
596 resetting the signal mask so that stacked signals behave correctly.
597 (sigdelayed): Avoid a race where a signal could end up calling an
598 incorrect signal handler if two signals come in close together.
599
174f1a39
CV
600Tue Jan 23 21:56:00 2001 Corinna Vinschen <corinna@vinschen.de>
601
602 * mmap.cc (fhandler_disk_file::mmap): Call CreateFileMapping with
603 len != 0 only when performing an anonymous mapping.
604
4c7b8250
CF
605Mon Jan 22 15:35:28 2001 Christopher Faylor <cgf@cygnus.com>
606
607 * path.h: Add a new constant.
608 * syscalls.cc (_read): Oscillate errno check.
609
c65a3183
CF
610Mon Jan 22 15:27:12 2001 Christopher Faylor <cgf@cygnus.com>
611
612 * include/cygwin/version.h: Bump API to reflect setlogmask.
613
29c39fe3
CF
614Sun Jan 21 22:40:25 2001 Jason Tishler <jt@dothill.com>
615
616 * cygwin.din: Add export for setlogmask().
617 * syslog.cc (setlogmask): New function.
618
c807d355
CV
619Thu Jan 18 10:27:00 2001 Corinna Vinschen <corinna@vinschen.de>
620
621 * resource.cc (setrlimit): Support RLIMIT_NOFILE.
622
4e2a97b2
CF
623Wed Jan 17 23:23:12 2001 Christopher Faylor <cgf@cygnus.com>
624
625 * syscalls.cc (setdtablesize): Call with amount to increment not total
626 amount. Return success or failure error code.
627
a7cde2b9
CF
628Wed Jan 17 09:47:13 2001 Christopher Faylor <cgf@cygnus.com>
629
630 * autoload.cc (LoadDLLinitfunc): Remove debugging statement.
631
632 * exceptions.cc (sig_handle_tty_stop): Move setting of PID_STOPPED to
633 earlier in interrupt.
634 ((interrupt_setup): i.e., here.
635 (sig_handle): Don't queue multiple SIGSTOPS.
636 * fhandler.h (bg_check_types): Enumerate return value of bg_check for
637 clarity.
638 * signal.cc (kill_pgrp): Minor cleanup.
639 * fhandler_termios.cc (fhandler_termios::bg_check): Use enumerated type
640 for function return. Don't raise signal if a signal is already queued.
641 * fhandler_console.cc (fhandler_console::read): Use enumerated return
642 type for bg_check.
643 * select.cc: Ditto, throughout.
644 * read.cc: Ditto, throughout.
645 * termios.cc: Ditto, throughout.
646 (_read): YA interrupt detect simplification.
647 * wait.cc (wait4): Ditto.
648
cb503978
CV
649Wed Jan 17 10:56:00 2001 Corinna Vinschen <corinna@vinschen.de>
650
651 * cygheap.cc (cygheap_user::~cygheap_user): Temporarily
652 disable free'ing memory.
653
9fedfd57
CV
654Tue Jan 16 18:01:00 2001 Corinna Vinschen <corinna@vinschen.de>
655
656 * mmap.cc (mmap): Initialize fh to avoid compiler warnings.
657
9470a80c
CF
658Mon Jan 15 21:07:00 2001 Christopher Faylor <cgf@cygnus.com>
659
660 * wait.cc (wait4): Rename variable for consistency. Allow restartable
661 signal behavior.
662
9334c89c
CV
663Mon Jan 15 23:15:00 2001 Corinna Vinschen <corinna@vinschen.de>
664
665 * mmap.cc (mmap): Add more parameter checking. Change error output
666 in case of EINVAL. Treat mmapping /dev/zero like MAP_ANONYMOUS.
667
c6dd43f2
CV
668Mon Jan 15 20:34:00 2001 Corinna Vinschen <corinna@vinschen.de>
669
670 * mmap.cc: include <unistd.h>. Define some bit operations for
671 the new page map.
672 (mmap_record): Change type of base_address_ to caddr_t.
673 Add map_map_ member. Add several methods to manipulate map_map_.
674 (mmap_record::alloc_map): New method.
675 (mmap_record::free_map): Ditto.
676 (mmap_record::find_empty): Ditto.
677 (mmap_record::map_map): Ditto.
678 (mmap_record::unmap_map): Ditto.
679 (list::add_record): Change return type to `mmap_record *'.
680 Allocate page map.
681 (list::match): New method.
682 (mmap): Partly rewritten to take care for the new page map. Add some
683 parameter checking.
684 (munmap): Ditto.
685
66097f06
CV
686Mon Jan 15 13:50:00 2001 Corinna Vinschen <corinna@vinschen.de>
687
688 * heap.cc (heap_init): Fix extern declaration of getpagesize.
689 * syscalls.cc (getpagesize): Fix another typo.
690
dc3651b6
CV
691Mon Jan 15 12:48:00 2001 Corinna Vinschen <corinna@vinschen.de>
692
693 * syscalls.cc (getpagesize): Save pagesize in global variable to
694 avoid calling GetSystemInfo too often.
695 * heap.cc (getpagesize): Eliminate.
696 (heap_init): Use getpagesize function from syscalls.cc.
697
4cf2c0e0
CV
698Mon Jan 15 11:56:00 2001 Corinna Vinschen <corinna@vinschen.de>
699
700 * sysconf.cc (sysconf): return `getpagesize ()' on _SC_PAGESIZE
701 request to avoid implementing the same twice.
702
a3ec080b
CF
703Sun Jan 14 14:07:50 2001 Christopher Faylor <cgf@cygnus.com>
704
705 * syscalls.cc (_read): Use more lightweight method for determining if
706 read has been interrupted by a signal.
707
c3d62298
CF
708Fri Jan 12 00:35:15 2001 Christopher Faylor <cgf@cygnus.com>
709
710 * debug.h: Add regparm attributes to some functions.
711
712 * signal.cc (sigaction): Don't treat SIGCONT specially.
713
6a4878cf
CF
714 * exceptions.cc (interrupt_setup): Save sa_flags of interrupted signal
715 for later use.
c3d62298
CF
716 (sig_handler): Default any stopping signal to SIGSTOP.
717 (call_signal_handler): New function.
718 (sigdelayed0): New function.
6a4878cf
CF
719 * sigproc.cc (sigproc_init): Initialize SIGSTOP sigaction for special
720 behavior.
c3d62298
CF
721 * sigproc.h: Define call_signal_handler.
722 * syscalls.cc (_read): Allow restartable signal behavior.
723
c4efddf6
CV
724Thu Jan 11 13:17:00 2001 Corinna Vinschen <corinna@vinschen.de>
725
726 * fhandler.h (fhandler_base): New method `fixup_mmap_after_fork'.
727 (fhandler_disk_file: Ditto.
728 (fhandler_dev_mem): Ditto.
729 * fhandler_mem.cc (fhandler_dev_mem::open): Set OBJ_INHERIT attribute
730 for device\physicalmemory handle.
731 (fhandler_dev_mem::mmap): Ditto.
6a4878cf
CF
732 * fhandler_mem.cc (fhandler_dev_mem::fixup_mmap_after_fork): New
733 method.
734 * mmap.cc (mmap_record): Add private `fdesc_' member. Change
735 constructor accordingly.
c4efddf6
CV
736 (get_fd): New method.
737 (mmap): Use new mmap_record constructor.
738 (fhandler_base::fixup_mmap_after_fork): New method.
739 (fhandler_disk_file::fixup_mmap_after_fork): Ditto.
6a4878cf 740 (fixup_mmaps_after_fork): Call `fixup_mmap_after_fork' of appropriate
c4efddf6
CV
741 fhandler class.
742
7416e1d2
CF
743Wed Jan 10 22:08:30 2001 Kazuhiro Fujieda <fujieda@jaist.ac.jp>
744
745 * sigproc.cc (wait_sig): Allow SIGCONT when stopped.
746
55ae1dff
CV
747Tue Jan 9 16:55:00 2001 Corinna Vinschen <corinna@vinschen.de>
748
749