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