]>
Commit | Line | Data |
---|---|---|
da77d416 CF |
1 | Sat Apr 21 19:26:05 2001 Christopher Faylor <cgf@cygnus.com> |
2 | ||
3 | * thread.cc (MTinterface::Init): Remove accidentally checked in code. | |
4 | ||
9450ad0d RC |
5 | Sun Apr 22 00:22:00 2001 Robert Collins <rbtcollins@hotmail.com> |
6 | ||
7 | * passwd.cc (getpwuid): Check for thread cancellation. | |
8 | (getpwuid_r): Ditto. | |
9 | (getpwname): Ditto. | |
10 | (getpwnam_r): Ditto. | |
11 | * thread.h (pthread_mutex): New constructors for pshared operation. | |
12 | (MTinterface): Associative array for pshared mutex's. | |
13 | * thread.cc (MTinterface::Init): Initailize pshared mutex array. | |
14 | (pthread_cond::BroadCast): Implementation notes. | |
15 | (pthread_cond::TimedWait): Remove use of SignalObjectAndWait on non-NT systems. | |
16 | (pthread_mutex::pthread_mutex(unsigned short)): New function. | |
17 | (pthread_mutex::pthread_mutex (pthread_mutex_t *, pthread_mutexattr *)):New function. | |
18 | (pthread_mutex::pthread_mutex(pthread_mutexattr *)): Fail on pshared mutex's. | |
19 | (__pthread_mutex_getpshared): New function. | |
20 | (__pthread_join): Check for thread cancellation. | |
21 | (__pthread_cond_timedwait): Support pshared mutex's. | |
22 | (__pthread_cond_wait): Ditto. | |
23 | (__pthread_condattr_setpshared): Error on PROCESS_SHARED requests. | |
24 | (__pthread_mutex_init): Support pshared mutex's. | |
25 | (__pthread_mutex_getprioceiling): Ditto. | |
26 | (__pthread_mutex_lock): Ditto. | |
27 | (__pthread_mutex_trylock): Ditto. | |
28 | (__pthread_mutex_unlock): Ditto. | |
29 | (__pthread_mutex_destroy): Ditto. | |
30 | (__pthread_mutex_setprioceiling): Ditto. | |
31 | (__pthread_mutexattr_setpshared): Support PTHREAD_PROCESS_PSHARED requests. | |
32 | ||
60326076 CF |
33 | Fri Apr 20 19:38:29 2001 Christopher Faylor <cgf@cygnus.com> |
34 | ||
35 | * cygwin.din: Add *scanf and *scan_r functions. | |
36 | ||
3c8e92d9 CV |
37 | Fri Apr 20 22:25:00 2001 Corinna Vinschen <corinna@vinschen.de> |
38 | ||
39 | * security.cc (set_process_privileges): Swap out. | |
40 | * sec_helper.cc (set_process_privilege): Rename from | |
41 | `set_process_privileges'. Takes the privilege to enable or disable | |
42 | as parameter now. | |
43 | * security.h: Add prototype for `set_process_privileges'. | |
44 | ||
b9815dc3 CF |
45 | 2001-04-19 Egor Duda <deo@logos-m.ru> |
46 | ||
47 | * path.cc (path_conv::check): Always initialize member variables. | |
48 | ||
cbd88687 CF |
49 | Fri Apr 20 12:27:49 2001 Christopher Faylor <cgf@cygnus.com> |
50 | ||
51 | * include/sys/file.h: More cleanup for X_OK. | |
52 | ||
cdcfe4e8 CF |
53 | Fri Apr 20 11:48:45 2001 Christopher Faylor <cgf@cygnus.com> |
54 | ||
55 | * include/sys/file.h: Move X_OK protection earlier. | |
56 | ||
57 | * dtable.cc (dtable::vfork_child_fixup): Avoid closing already closed | |
58 | handles. | |
59 | ||
bfbc1aec CV |
60 | Fri Apr 20 16:29:00 2001 Corinna Vinschen <corinna@vinschen.de> |
61 | ||
62 | * grp.cc (getgroups): Change so that SIDs get compared instead | |
63 | of strings to SIDs. | |
64 | ||
c0d1968a CV |
65 | Fri Apr 20 14:50:00 2001 Corinna Vinschen <corinna@vinschen.de> |
66 | ||
67 | * Makefile.in: Add object files `sec_helper.cc' and `sec_acl.cc'. | |
68 | * security.cc: Swap out several functions. | |
69 | * sec_acl.cc: New file. Move Sun compatibel ACL functions from | |
70 | `security.cc' to here. | |
71 | * sec_helper.cc: New file. Move security helper functions from | |
72 | `security.cc' to here. | |
73 | * security.h: Changed to accomodate the above changes. | |
74 | ||
75 | Fri Apr 20 14:12:00 2001 Corinna Vinschen <corinna@vinschen.de> | |
76 | ||
77 | * grp.cc: Replace `group_in_memory_p' by `group_state'. | |
78 | Eliminate group_sem throughout. | |
79 | (enum grp_state): New enumeration type. | |
80 | (read_etc_group): Make race safe. | |
81 | * security.cc: Eliminate group_sem throughout. | |
82 | ||
b78d6f6e CV |
83 | Thu Apr 19 9:40:00 2001 Corinna Vinschen <corinna@vinschen.de> |
84 | ||
85 | * mmap.cc (mmap): Drop usage of the same memory area if the same | |
86 | region of the same file is mapped twice. | |
87 | ||
0381fec6 CF |
88 | Wed Apr 18 16:53:54 2001 Christopher Faylor <cgf@cygnus.com> |
89 | ||
90 | Throughout, change fdtab references to cygheap->fdtab. | |
91 | * child_info.h (cygheap_exec_info): Eliminate special fdtab stuff. | |
92 | * spawn.cc (spawn_guts): Ditto. | |
93 | * cygheap.cc (cygheap_init): Initialize fdtab, if appropriate. | |
94 | * cygheap.h (CYGHEAPSIZE): Include size of init_cygheap. | |
95 | (_cmalloc_entry): Include fdtab here. | |
96 | * dtable.h (dtable): Declare/define new methods. | |
97 | * dtable.cc (dtable::vfork_child_fixup): New method. | |
98 | (dtable::fixup_after_exec): Remove unneeded extra arguments. | |
99 | * dcrt0.cc (dll_crt0_1): Ditto. | |
100 | ||
101 | * environ.cc (getwinenv): Use case sensitive comparison. | |
102 | (winenv): Make a copy of environment cache to avoid realloc problems | |
103 | when duplicate environment variables exist in the environment. (From | |
104 | Egor Duda) | |
105 | ||
106 | * net.cc (cygwin_socket): Revert Apr 14 change. | |
107 | ||
108 | * include/sys/file.h: Protect against previous X_OK definition. | |
109 | ||
110 | Tue Apr 17 12:18:28 2001 Christopher Faylor <cgf@cygnus.com> | |
111 | ||
112 | * passwd.cc: Eliminate passwd_sem throughout. | |
113 | * security.cc: Ditto. | |
114 | ||
115 | Tue Apr 17 12:18:28 2001 Robert Collins <rbtcollins@hotmail.com> | |
116 | ||
117 | * cygwin.din: Export New functions. | |
118 | * passwd.cc (read_etc_passwd): Make race safe. | |
119 | (getpwuid_r): New function. | |
120 | (getpwnam_r): New function. | |
121 | ||
77c45b12 CV |
122 | 2001-04-18 Egor Duda <deo@logos-m.ru> |
123 | ||
124 | * grp.cc (getgroups): Avoid crash if passwd field if /etc/group is | |
125 | empty. | |
126 | ||
4199e1e6 CF |
127 | Tue Apr 17 19:05:44 2001 Christopher Faylor <cgf@cygnus.com> |
128 | ||
129 | * path.h (path_conv::add_ext_from_sym): Declare. | |
130 | * path.cc (path_conv::add_ext_from_sym): Convert to pure inline method. | |
131 | ||
e6629a8a CV |
132 | Tue Apr 17 18:50:00 2001 Corinna Vinschen <corinna@vinschen.de> |
133 | ||
134 | * path.cc (windows_device_names): Add missing NULL element. | |
135 | ||
adfd477d CF |
136 | Tue Apr 17 12:14:54 2001 Christopher Faylor <cgf@cygnus.com> |
137 | ||
138 | * path.cc (windows_device_names): Move dsp to proper location. | |
139 | ||
8aefe7c0 CV |
140 | Tue Apr 17 13:44:00 2001 Corinna Vinschen <corinna@vinschen.de> |
141 | ||
142 | * path.cc (path_conv::check): Set case_clash even if pcheck_case | |
143 | is set to PCHECK_ADJUST when a case clash is given for the last | |
144 | component in path. | |
145 | (symlink_info::case_check): Ditto. | |
146 | * syscalls.cc (_rename): Avoid overwriting an already existing file | |
147 | if a case clash is given even if pcheck_case is set to PCHECK_ADJUST. | |
148 | ||
77eb506d CV |
149 | Tue Apr 17 2:07:07 2001 Christopher Faylor <cgf@cygnus.com> |
150 | ||
151 | * config.h.in: Turn off VFORK again. | |
152 | ||
431ba7dd CF |
153 | Mon Apr 16 23:45:24 2001 Christopher Faylor <cgf@cygnus.com> |
154 | ||
155 | * path.h (cwdstuff): Move class. | |
156 | * cygheap.h (cwdstuff): To here. | |
157 | (init_cygheap): Add cwd field. | |
158 | * child_info.h (cygheap_exec_info): Eliminate cwd stuff. | |
159 | (child_info_spawn): Ditto. | |
160 | * dcrt0.cc (dll_crt0_1): Remove cygcwd.fixup_after_exec call. Convert | |
161 | cygcwd reference to cygheap->cwd. | |
162 | * path.cc: Ditto, throughout. | |
163 | (cwdstuff::copy): Eliminate. | |
164 | (cwdstuff::fixup_after_exec): Ditto. | |
165 | * spawn.cc (spawn_guts): Eliminate call to cygcwd.copy. | |
166 | ||
167 | * fhandler.h (FH_OSS_DSP): Move into "fast" device category. | |
168 | ||
7ade56ca CV |
169 | Mon Apr 16 19:19:00 2001 Corinna Vinschen <corinna@vinschen.de> |
170 | ||
171 | * mmap.cc: Move fh_paging_file from some functions to be | |
172 | a global static variable. | |
173 | (class mmap_record): Add `devtype_' member to remember | |
174 | the device type of the file. Add declaration for methods | |
175 | `get_device', `alloc_fh' and `free_fh'. | |
176 | (mmap_record::mmap_record): Initialize `devtype_' correctly. | |
177 | (mmap_record::alloc_fh): New method. | |
178 | (mmap_record::free_fh): Ditto. | |
179 | (munmap): Use new mmap_record::alloc_fh and mmap_record::free_fh | |
180 | methods to create a correct fhandler. | |
181 | (msync): Ditto. | |
182 | (fixup_mmaps_after_fork): Ditto. | |
183 | ||
c4548fb4 CV |
184 | Mon Apr 16 16:01:00 2001 Corinna Vinschen <corinna@vinschen.de> |
185 | ||
186 | * grp.cc (getgroups): If `allow_ntsec' is set, use the process token | |
187 | information to evaluate the groups list. | |
188 | ||
3b3b19d2 CF |
189 | Mon Apr 16 00:08:02 2001 Christopher Faylor <cgf@cygnus.com> |
190 | ||
191 | * features.h: Remove this file as it is now being supplied by newlib. | |
192 | ||
b0a50cf3 CF |
193 | Sun Apr 15 23:23:29 2001 Christopher Faylor <cgf@cygnus.com> |
194 | ||
195 | * autoload.cc: Add winmm functions needed by fhandler_dsp.cc. | |
196 | ||
197 | Sun Apr 15 22:53:52 2001 Andy Younger <andylyounger@hotmail.com> | |
198 | ||
199 | * fhandler_dsp.cc: New file. Implements OSS like /dev/dsp. | |
200 | * include/sys/soundcard.h: New file. User land includes for OSS | |
201 | /dev/dsp. | |
202 | * fhandler.h: Add new class fhandler_dev_dsp and a FH_OSS_DSP | |
203 | definition. | |
204 | * dtable.cc (dtable::build_fhandler): Allow creation of the /dev/dsp | |
205 | device. | |
206 | * path.cc (windows_device_names): Add /dev/dsp into list of device | |
207 | names. | |
208 | * Makefile.in (DLL_OFILES): Add fhandler_dsp.o. | |
209 | ||
4535e6a9 CF |
210 | Sun Apr 15 16:36:27 2001 Christopher Faylor <cgf@cygnus.com> |
211 | ||
212 | * uname.c (uname): Default n in in86 to 6 if Windows returns > 6. | |
213 | ||
1ff87985 CV |
214 | Sun Apr 15 15:56:00 2001 Corinna Vinschen <corinna@vinschen.de> |
215 | ||
216 | * path.cc (add_ext_from_sym): Redefine to call `add_ext_from_sym_'. | |
217 | (add_ext_from_sym_): New inline function. | |
218 | ||
34bbe838 CF |
219 | Sat Apr 14 19:23:52 2001 Christopher Faylor <cgf@cygnus.com> |
220 | ||
221 | * config.h.in: Turn on VFORK by default. | |
222 | ||
266be1d8 CF |
223 | Sat Apr 14 18:04:35 2001 Christopher Faylor <cgf@cygnus.com> |
224 | ||
225 | * net.cc (cygwin_socket): Set SO_LINGER to small value so closed UNIX | |
226 | domain sockets will not stay around. | |
227 | ||
228 | Sat Apr 14 18:01:43 2001 Pierre A. Humblet <Pierre.Humblet@ieee.org> | |
229 | ||
230 | * select.cc (socket_cleanup): Set SO_LINGER to small value so closed | |
231 | dummy sockets do not stay around. Use correct value for second argument | |
232 | to shutdown. | |
233 | ||
e6b98fc8 RC |
234 | Sat Apr 14 17:04:00 2001 Robert Collins <rbtcollins@hotmail.com> |
235 | ||
236 | * thread.h (MTinterface): Add threadcount. | |
237 | * thread.cc (MTinterface::Init): Set threadcount to 1. | |
238 | (__pthread_create): Increment threadcount. | |
239 | (__pthread_exit): Decrement threadcount and call exit() from the last thread. | |
240 | ||
1114d472 | 241 | Fri Apr 13 11:34:24 2001 Robert Collins <rbtcollins@hotmail.com> |
39b6859a CF |
242 | |
243 | * fork.cc (fork_child): Call the __pthread_atforkchild function. | |
244 | (fork_parent): Call the __pthread_atforkparent function. | |
245 | * cygwin.din: Export pthread_atfork. | |
246 | * thread.h (callback): New class. | |
247 | (MTinterface): Use it. | |
248 | * thread.cc (__pthread_atforkprepare): New function. | |
249 | (__pthread_atforkparent): New function. | |
250 | (__pthread_atforkchild): New function. | |
251 | (__pthread_atfork): New function. | |
252 | * pthread.cc (pthread_atfork): New function. | |
253 | ||
e61cead3 CV |
254 | Fri Apr 13 9:52:00 2001 Corinna Vinschen <corinna@vinschen.de> |
255 | ||
256 | * path.cc (add_ext_from_sym): New define evaluating `known'suffix'. | |
257 | (path_conv::check): Use add_ext_from_sym throughout. | |
258 | ||
259 | Thu Apr 12 23:19:00 2001 Corinna Vinschen <corinna@vinschen.de> | |
70c370d6 CV |
260 | |
261 | * dir.cc (mkdir): Check for case clash. | |
262 | * environ.cc: Add extern declaration for `pcheck_case'. | |
263 | (check_case_init): New function. | |
264 | (struct parse_thing): Add "check_case" option. | |
265 | * errno.cc (_sys_nerrlist): Add text for ECASECLASH. | |
266 | (strerror): Add case branch for ECASECLASH. | |
267 | * fhandler.cc (fhandler_disk_file::open): Check for case clash. | |
268 | * path.cc: Add global variable `pcheck_case'. | |
269 | (struct symlink_info): Add member `case_clash' and method `case_check'. | |
270 | (path_prefix_p_): Call `pathnmatch' instead of `strncasematch'. | |
271 | (pathnmatch): New funtion. | |
272 | (pathmatch): Ditto. | |
273 | (path_conv::check): Add handling for case checking. | |
274 | (symlink): Check for case clash. | |
275 | (symlink_info::check): Add parameter for case checking. | |
276 | Handle case checking. | |
277 | (symlink_info::case_check): New method. | |
278 | (chdir): Don't use unconverted path if pcheck_case==PCHECK_STRICT. | |
279 | * path.h: Add extern declarations for `pathmatch' and | |
280 | `pathnmatch'. | |
281 | (enum case_checking): New enumeration type describing | |
282 | the case checking behaviour of path conversion routines. | |
283 | (class path_conv): Add member `case_clash'. | |
284 | * syscalls.cc (_link): Check for case clash. | |
285 | ||
82d4a5d4 CF |
286 | Thu Apr 12 12:49:53 2001 Christopher Faylor <cgf@cygnus.com> |
287 | ||
288 | * syscalls.cc (mkfifo): New function stub. | |
289 | ||
aa67fd12 CF |
290 | 2001-04-12 Robert Collins <rbtcollins@hotmail.com> |
291 | ||
292 | * configure.in: Remove PTH_ALLOW. | |
293 | * cygwin.din: Remove @PTH_ALLOW@ prefixes to pthread functions. Add | |
294 | new pthread exports. | |
295 | * pthread.cc: New wrapper functions for the above new exports. | |
296 | * sched.cc (valid_sched_parameters): New function. | |
297 | (sched_setparam): Use it. | |
298 | (sched_set_thread_priority): New function. Used by pthread_sched*. | |
299 | * thread.cc (pthread_key_destructor::InsertAfter): New function. | |
300 | (pthread_key_destructor::UnlinkNext): New function. | |
301 | (pthread_key_destructor::Next): New function. | |
302 | (pthread_key_destructor_list::Insert): New function. | |
303 | (pthread_key_destructor_list::Remove): New function. | |
304 | (pthread_key_destructor_list::Pop): New function. | |
305 | (pthread_key_destructor::pthread_key_destructor): New function. | |
306 | (pthread_key_destructor_list::IterateNull): New function. | |
307 | (MTinterface::Init): Initialise new member. | |
308 | (pthread::pthread): Initialise new members. | |
309 | (pthread::create): Copy new attributes. Set the new thread priority. | |
310 | (pthread_attr::pthread_attr): Initialise new members. | |
311 | (pthread_key::pthread_key): Setup destructor function. | |
312 | (pthread_key::~pthread_key): Remove destructor function. | |
313 | (pthread_mutexattr::pthread_mutexattr): New function. | |
314 | (pthread_mutexattr::~pthread_mutexattr): New function. | |
315 | (__pthread_once): New function. | |
316 | (__pthread_cleanup): New function. | |
317 | (__pthread_cancel): New function. | |
318 | (__pthread_setcancelstate): New function. | |
319 | (__pthread_setcanceltype): New function. | |
320 | (__pthread_testcancel): New function. | |
321 | (__pthread_attr_getinheritsched): New function. | |
322 | (__pthread_attr_getschedparam): New function. | |
323 | (__pthread_attr_getschedpolicy): New function. | |
324 | (__pthread_attr_getscope): New function. | |
325 | (__pthread_attr_setinheritsched): New function. | |
326 | (__pthread_attr_setschedparam): New function. | |
327 | (__pthread_attr_setschedpolicy): New function. | |
328 | (__pthread_attr_setscope): New function. | |
329 | (__pthread_exit): Call any key destructors on thread exit. | |
330 | (__pthread_join): Use the embedded attr values. | |
331 | (__pthread_detach): Use the embedded attr values. | |
332 | (__pthread_getconcurrency): New function. | |
333 | (__pthread_getschedparam): New function. | |
334 | (__pthread_key_create): Pass the destructor on object creation. | |
335 | (__pthread_key_delete): Correct incorrect prototype. | |
336 | (__pthread_setconcurrency): New function. | |
337 | (__pthread_setschedparam): New function. | |
338 | (__pthread_cond_timedwait): Support static mutex initialisers. | |
339 | (__pthread_cond_wait): Ditto. | |
340 | (__pthread_mutex_getprioceiling): New function. | |
341 | (__pthread_mutex_lock): Support static mutex initialisers. | |
342 | (__pthread_mutex_trylock): Ditto. | |
343 | (__pthread_mutex_unlock): Ditto. | |
344 | (__pthread_mutex_destroy): Ditto. | |
345 | (__pthread_mutex_setprioceiling): New function. | |
346 | (__pthread_mutexattr_getprotocol): New function. | |
347 | (__pthread_mutexattr_getpshared): New function. | |
348 | (__pthread_mutexattr_gettype): New function. | |
349 | (__pthread_mutexattr_init): New function. | |
350 | (__pthread_mutexattr_destroy): New function. | |
351 | (__pthread_mutexattr_setprotocol): New function. | |
352 | (__pthread_mutexattr_setprioceiling): New function. | |
353 | (__pthread_mutexattr_getprioceiling): New function. | |
354 | (__pthread_mutexattr_setpshared): New function. | |
355 | (__pthread_mutexattr_settype): New function. Remove stubs for non | |
356 | MT_SAFE compilation. | |
357 | * thread.h: Remove duplicate #defines. Add prototypes for new | |
358 | functions in thread.cc. | |
359 | (pthread_key_destructor): New class. | |
360 | (pthread_key_destructor_list): New class. | |
361 | (pthread_attr): Add new members. | |
362 | (pthread): Remove members that are duplicated in the pthread_attr | |
363 | class. | |
364 | (pthread_mutex_attr): Add new members. | |
365 | (pthread_once): New class. | |
366 | * include/pthread.h: Add prototypes for new functions exported from | |
367 | cygwin1.dll. Remove typedefs. | |
368 | * include/sched.h: Add prototypes for new functions in sched.cc. | |
369 | * include/cygwin/types.h: Add typedefs from pthread.h | |
370 | ||
fc672fb2 CF |
371 | Tue Apr 10 22:02:53 2001 Christopher Faylor <cgf@cygnus.com> |
372 | ||
373 | * path.cc (struct symlink_info): Add extn and ext_tacked_on fields. | |
374 | (path_conv::check): Only tack on extension if a known one didn't | |
375 | already exist. | |
376 | (suffix_scan::has): Return pointer to known extension. | |
377 | (symlink_info::check): Record location of extension, if any. | |
378 | ||
619f7fa0 ED |
379 | 2001-04-09 Egor Duda <deo@logos-m.ru> |
380 | ||
381 | * fhandler.h (class fhandler_socket): Add members and methods to | |
382 | support secure connections on AF_UNIX sockets. | |
383 | * fhandler_socket.cc (fhandler_socket::set_connect_secret): New method. | |
384 | (fhandler_socket::get_connect_secret): Ditto. | |
385 | (fhandler_socket::create_secret_event): Ditto. | |
386 | (fhandler_socket::close_secret_event): Ditto. | |
387 | (fhandler_socket::check_peer_secret_event): Ditto. | |
388 | (fhandler_socket::fixup_after_fork): Duplicate secret event to child. | |
389 | (fhandler_socket::dup): Copy address family. | |
390 | (fhandler_socket::close): Close secret event. | |
391 | * net.cc (get_inet_addr): Read secret cookie. | |
392 | (cygwin_connect): Check if peer knows secret cookie value. | |
393 | (cygwin_accept): Ditto. Copy address family to newly created socket. | |
394 | (cygwin_bind): Generate and write secret cookie. | |
395 | (wsock_init): Initialize random number generator. | |
396 | ||
aa970c61 CF |
397 | Sun Apr 8 20:40:58 2001 Christopher Faylor <cgf@cygnus.com> |
398 | ||
399 | * Makefile.in: Put -lgcc last in list of libraries, since stdc++ | |
400 | library needs it. | |
401 | * cygwin.din: Remove obsolete "__empty" export. | |
402 | * exceptions.cc (call_signal_handler_now): Force inclusion of function | |
403 | even when -finline-functions is specified. | |
404 | * sigproc.h: Remove obsolete call_signal_handler declaration. | |
405 | ||
406 | Sun Apr 8 20:36:55 2001 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de> | |
e3eef4d0 | 407 | |
aa970c61 CF |
408 | * fhandler_console.cc (cp_get_internal): New function. |
409 | (cp_convert): New function. | |
410 | (con_to_str): New function. | |
411 | (str_to_con): New function. | |
412 | (fhandler_console::read): Replace OemToCharBuff with con_to_str. | |
413 | (fhandler_console::write_normal): Replace CharToOemBuff with str_to_con. | |
414 | ||
9ddfe5a0 CV |
415 | Thu Apr 5 22:41:00 2001 Corinna Vinschen <corinna@vinschen.de> |
416 | ||
417 | * syscalls.cc (stat_worker): Fix conditional which still allowed | |
418 | successful stat'ing of non-existant files. | |
419 | ||
0403bb74 CF |
420 | Wed Apr 4 10:37:44 2001 Christopher Faylor <cgf@cygnus.com> |
421 | ||
422 | * child_info.h: Bump magic number for fork/exec/spawn. | |
423 | ||
c196a1a2 CV |
424 | Tue Apr 3 20:06:00 2001 Corinna Vinschen <corinna@vinschen.de> |
425 | ||
426 | * errno.cc (errmap): Map ERROR_FILE_INVALID to ENXIO. | |
427 | ||
c90e420d CF |
428 | Mon Apr 2 22:48:58 2001 Christopher Faylor <cgf@cygnus.com> |
429 | ||
430 | * cygrun.c (main): Fix compiler warning. | |
431 | * gmon.c (_mcleanup): Ditto. | |
432 | * profil.c (profile_off): Ditto. | |
433 | ||
434 | * net.cc (find_winsock_errno): New function. | |
435 | (__set_winsock_errno): Use find_winsock_errno. | |
436 | (cygwin_setsockopt): Detect SO_ERROR for debugging. | |
437 | (cygwin_getsockopt): Ditto. Translate error when getsockopt returns | |
438 | SO_ERROR. | |
439 | * winsup.h: regparmize __set_winsock_errno. | |
440 | * include/sys/strace.h: Document that strace functions can't use | |
441 | regparm. | |
442 | ||
0f0a7dc9 CV |
443 | 2001-04-02 Kazuhiro Fujieda <fujieda@jaist.ac.jp> |
444 | ||
445 | * fhandler.cc (fhandler_disk_file::open): Avoid checking a magic | |
446 | number of a directory. | |
447 | ||
f97adf98 CF |
448 | Mon Apr 2 00:24:08 2001 Christopher Faylor <cgf@cygnus.com> |
449 | ||
450 | * shared_info.h (mount_info): Remove mnt_ elements. | |
451 | * thread.h (struct _winsup_t): Add mnt_ elements. | |
452 | * path.cc (fillout_mntent): Use mnt_ elements from reent_winsup (). | |
453 | ||
1ba3935d CF |
454 | Sun Apr 1 20:10:34 2001 Christopher Faylor <cgf@cygnus.com> |
455 | ||
456 | * exceptions.cc (sigframe::call_signal_handler): Return value of | |
457 | call_signal_handler_now. | |
458 | * sigproc.h (sigframe): Use constructor. | |
459 | * syscalls.cc (_read): Correct errno test prior to calling signal | |
460 | handler. | |
461 | ||
2a1743c7 CF |
462 | Sun Apr 1 00:38:06 2001 Christopher Faylor <cgf@cygnus.com> |
463 | ||
0ef785e4 | 464 | * exceptions.cc (sigframe::call_signal_handler): Move outside of "C" |
2a1743c7 CF |
465 | block or some compilers will complain. |
466 | ||
11f3a79b CF |
467 | Sun Apr 1 00:24:14 2001 Christopher Faylor <cgf@cygnus.com> |
468 | ||
469 | * exceptions.cc (call_signal_handler_now): Rename from | |
470 | call_signal_handler to avoid C++ confusion. | |
471 | ||
5817ee2d CF |
472 | Sun Apr 1 00:08:15 2001 Christopher Faylor <cgf@cygnus.com> |
473 | ||
474 | * path.cc (fillout_mntent): Always remove drive root directories from | |
475 | future consideration by "/cygdrive" reporting. | |
476 | (cygdrive_getmnt): Avoid reporting removable drives or drives with no | |
477 | media mounted. | |
478 | ||
f2aeff27 CF |
479 | Sat Mar 31 21:56:19 2001 Christopher Faylor <cgf@cygnus.com> |
480 | ||
481 | * thread.h (struct _winsup_t): Remove obsolete elements. Add | |
482 | available_drives element. | |
483 | * path.cc (mount_info::getmntent): Report "/cygdrive" drives when | |
484 | mounted drives are exhausted. | |
485 | (fillout_mntent): New function. | |
486 | (mount_item::getmntent): Use fillout_mntent. | |
487 | (cygdrives_mntent): New function. Returns next available "/cygdrive". | |
488 | (setmntent): Initialize available "/cygdrives". | |
489 | * syscalls.cc: Remove some if 0'ed code. | |
490 | * times.cc (timezone): Use more descriptive variable name. | |
491 | ||
f6111483 CF |
492 | Sat Mar 31 18:59:52 2001 Christopher Faylor <cgf@cygnus.com> |
493 | ||
494 | * sigproc.h (class sigframe): Implement 'unregister()' method. | |
495 | (sigframe::~sigframe): Use unregister method. | |
496 | (sigframe::call_signal_handler): Declare new method. | |
497 | * exceptions.cc (sigframe::call_signal_handler): New method. | |
498 | Unregisters current sigframe before calling signal handler. | |
499 | (setup_handler): Clear waiting threads prior to arming signal_arrived. | |
500 | * syscalls.cc (_read): Change goto to loop. Recalculate sigframe | |
501 | inside of loop so that constructor is called when appropriate. | |
502 | * wait.cc (wait4): Ditto. | |
503 | ||
504 | * signal.cc: Change "sig" to "signal" in debugging messages throughout. | |
505 | * sigproc.cc: Ditto. | |
506 | ||
ab57d146 CF |
507 | Sat Mar 31 17:12:08 2001 Christopher Faylor <cgf@cygnus.com> |
508 | ||
509 | * fhandler_serial.cc (fhandler_serial::raw_write): Close protected | |
510 | handles with ForceCloseHandle or suffer spurious warnings. | |
511 | ||
0cec3226 CF |
512 | Sat Mar 31 16:23:32 2001 Christopher Faylor <cgf@cygnus.com> |
513 | ||
514 | * fhandler.cc (fhandler_base::read): Remove special handling of CTRL-Z. | |
515 | ||
70afbaae CV |
516 | Sat Mar 31 11:09:00 2001 Corinna Vinschen <corinna@vinschen.de> |
517 | ||
518 | * fhandler.h (class fhandler_console): Add members `insert_mode'. | |
519 | * fhandler_console.cc (fhandler_console::dup): Duplicate `insert_mode'. | |
520 | (fhandler_console::fhandler_console): Initialize `insert_mode'. | |
c796f4f1 | 521 | (fhandler_console::char_command): Add terminal capabilities |
70afbaae CV |
522 | "enter insert mode" = \E[4h and "exit insert mode" = \E[4l. |
523 | Care for insert mode on terminal capability "repeat char" = \E[x;yb. | |
524 | (fhandler_console::write_normal): Care for insert mode before writing | |
525 | to the console. | |
526 | (array keytable): Add keymapping for modified cursor and control | |
527 | block keys (xterm like). | |
528 | ||
f42da31a CV |
529 | Fri Mar 30 13:02:00 2001 Corinna Vinschen <corinna@vinschen.de> |
530 | ||
531 | * fhandler.h (class fhandler_console): Add members `savebufsiz' and | |
532 | `savebuf' to allow save/restore of screen. | |
70afbaae CV |
533 | * fhandler_console.cc (fhandler_console::dup): Duplicate `savebufsiz' |
534 | and `savebuf'. | |
f42da31a CV |
535 | (fhandler_console::fhandler_console): Initialize `savebufsiz' and |
536 | `savebuf'. | |
537 | (fhandler_console::char_command): Add terminal capabilities | |
538 | "save screen content" = \E[?47h and "restore screen content" = \E[?47l. | |
539 | ||
b5eb3d0f CF |
540 | Wed Mar 28 19:28:50 2001 Christopher Faylor <cgf@cygnus.com> |
541 | ||
542 | * path.cc (chdir): Eat trailing whitespace on input path. | |
543 | ||
1ac6d1a1 CF |
544 | Tue Mar 27 22:38:42 2001 Christopher Faylor <cgf@cygnus.com> |
545 | ||
546 | * lib/_cygwin_S_IEXEC.c: Remove "const" from globals or they never seem | |
547 | to be defined. Wrap definitions in extern "C". Include winsup.h to | |
548 | assure proper definitions. | |
549 | ||
550 | * dcrt0.cc (dll_crt0_1): Call stdio_init after premain run so that | |
551 | binmode.o, etc., will control default stdio settings. | |
552 | * dtable.cc (dtable::init_std_file_from_handle): Allow __fmode to force | |
553 | binmode/textmode settings. Default pipes to binmode. | |
554 | ||
37a2d97a CV |
555 | Tue Mar 27 11:31:00 2001 Corinna Vinschen <corinna@vinschen.de> |
556 | ||
557 | * mmap.cc (mmap): Fix conditional for previous patch. | |
558 | ||
1636a5a1 CV |
559 | Mon Mar 26 18:48:00 2001 Corinna Vinschen <corinna@vinschen.de> |
560 | ||
561 | * mmap.cc (mmap): Outflank copy-on-write problem on 9x by | |
562 | setting access mode to FILE_MAP_READ when read access is requested. | |
563 | ||
aa73152e CF |
564 | Sun Mar 25 20:12:21 2001 Christopher Faylor <cgf@cygnus.com> |
565 | ||
566 | * dlfcn.cc (check_access): Eliminate. | |
567 | (check_path_access): Use passed in path_conv buf. | |
568 | (get_full_path_of_dll): Use passed in name buf to avoid a static. Rip | |
569 | out most of the path checking since LoadLibrary will do all of this | |
570 | automatically. | |
571 | (dlopen): Set errno when appropriate (may not be compliant?). | |
572 | * environ.cc (posify): Don't pass in "native" path if it seems to | |
573 | actually be posix. | |
574 | ||
db0421f6 CF |
575 | Thursday Mar 22 2001 Robert Collins <rbtcollins@hotmail.com> |
576 | ||
577 | * fhandler.h (fhandler_dev_clipboard): Extend to support writing. | |
578 | * fhandler_clipboard.cc (fhandler_dev_clipboard::fhandler_dev_clipboard): | |
579 | Initialize new fields. Open clipboard here. | |
580 | (fhandler_dev_clipboard::dup): New method. | |
581 | (fhandler_dev_clipboard::open): Accomodate new fields. Register | |
582 | clipboard here, if appropriate. | |
583 | (set_clipboard): New function. Moves buffer to clipboard. | |
584 | (fhandler_dev_clipboard::write): Truly implement clipboard writing. | |
585 | (fhandler_dev_clipboard::read): Reimplement to allow successive reads. | |
586 | (fhandler_dev_clipboard::lseek): Truly implement seeks in clipboard. | |
0ed560cb CF |
587 | (fhandler_dev_clipboard::close): Clear out new fields. Support |
588 | sequential reads and sequential writes. Support for binary data via a | |
589 | native clipboard format. | |
db0421f6 | 590 | |
0b30bad4 | 591 | 2001-03-22 Egor Duda <deo@logos-m.ru> |
0cec3226 | 592 | |
0b30bad4 CF |
593 | * fhandler_console.cc (fhandler_console::set_default_attr): Update |
594 | console color attributes on tty reset. | |
595 | ||
c4458148 CF |
596 | Wed Mar 21 22:12:36 2001 Christopher Faylor <cgf@cygnus.com> |
597 | ||
598 | * autoload.cc (kernel32_init): New function for kernel32 autoload | |
599 | initialization. | |
600 | (SignalObjectAndWait): Add conditional load of this function when it is | |
601 | available. | |
602 | ||
9a08b2c0 CF |
603 | 2001-03-21 Robert Collins <rbtcollins@hotmail.com> |
604 | ||
605 | * sched.cc: New file. Implement sched*. | |
606 | * include/sched.h: New file. User land includes for sched*. | |
607 | * Makefile.in: Add sched.o | |
608 | * cygwin.din: Add exports for sched*. | |
609 | ||
a1299ba5 CF |
610 | Tue Mar 20 14:48:46 2001 Christopher Faylor <cgf@cygnus.com> |
611 | ||
612 | * dtable.cc: Guard against new winsock.h/winsock2.h warnings when | |
613 | mixing winsock*.h and sys/types.h. | |
614 | * fhandler_socket.cc: Ditto. | |
615 | * net.cc: Ditto. | |
616 | * select.cc: Ditto. | |
617 | * exceptions.cc: Remove unneeded define. | |
618 | ||
b8c8fa17 CF |
619 | Mon Mar 19 17:43:29 2001 Christopher Faylor <cgf@cygnus.com> |
620 | ||
621 | * exceptions.cc (interruptible): Update debugging output. | |
622 | (setup_handler): Ensure that wait_sig loop wakes up when we punt on | |
623 | sending a signal. | |
624 | * poll.cc (poll): Add signal guard here. | |
625 | ||
78ace8a7 ED |
626 | 2001-03-19 Egor Duda <deo@logos-m.ru> |
627 | ||
628 | * tty.h (tty::create_inuse): Add new parameter to allow non- | |
629 | inheritable 'inuse' events. | |
630 | * tty.cc (tty::create_inuse): Use new parameter. | |
631 | * fhandler_tty.cc (fhandler_tty_master::init): Ditto. | |
632 | * fhandler_tty.cc (fhandler_pty_master::open): Ditto. | |
633 | * fhandler_tty.cc (fhandler_tty_master::init): Create master_alive | |
634 | event. | |
635 | * tty.cc (tty_list::terminate): Close master_alive event. | |
636 | * fhandler_tty.cc (fhandler_tty_common::close): Send EOF to slaves | |
637 | when master side is closed. | |
638 | ||
98750a84 CV |
639 | Mon Mar 19 14:32:00 2001 Corinna Vinschen <corinna@vinschen.de> |
640 | ||
641 | * mmap.cc (map::get_list_by_fd): Avoid calling `get_namehash' when | |
642 | file descriptor is -1. | |
643 | ||
30f326bf CV |
644 | Sat Mar 17 18:30:00 2001 Corinna Vinschen <corinna@vinschen.de> |
645 | ||
646 | * syscalls.cc (check_posix_perm): New static function. | |
647 | (fpathconf): Add _PC_POSIX_PERMISSIONS and _PC_POSIX_SECURITY | |
648 | support. | |
649 | (pathconf): Ditto. | |
650 | * include/cygwin/version.h: Bump API minor number to 37. | |
651 | ||
5e8e21d9 ED |
652 | 2001-03-18 Egor Duda <deo@logos-m.ru> |
653 | ||
654 | * fhandler.h (fhandler_tty_slave): Declare new methods. | |
655 | * select.cc (fhandler_tty_slave::select_read): New method. | |
656 | * select.cc (fhandler_tty_slave::ready_for_read): Ditto. | |
657 | * select.cc (verify_tty_slave): New function. | |
658 | * fhandler_termios.cc (fhandler_termios::line_edit): Empty input | |
659 | buffer on signal. | |
660 | * fhandler_tty.cc (fhandler_tty_slave::read): Check for input data | |
661 | after reading from pipe. Reset event if input pipe is empty. | |
662 | * tty.h (class tty): Allow creating events with manual reset. | |
663 | * tty.cc (tty::get_event): Use manual_reset flag. | |
664 | * tty.cc (tty::common_init): Create input_available_event with | |
665 | manual reset. | |
666 | ||
00a74961 CF |
667 | Sat Mar 17 21:48:03 2001 Christopher Faylor <cgf@cygnus.com> |
668 | ||
669 | * external.cc (fillout_pinfo): Match windows pid, as well as cygwin pid | |
670 | when passed in pid. Don't prematurely break when searching for a pid. | |
671 | ||
672 | * thread.h (_winsup_t): Eliminate unneeded field. | |
673 | ||
8eb72e63 CV |
674 | Sat Mar 17 20:46:00 2001 Corinna Vinschen <corinna@vinschen.de> |
675 | ||
676 | * net.cc (get_95_ifconf): Use strcasematch instead of strcasecmp. | |
677 | * syscalls.cc (_unlink): Ditto. | |
678 | (_rename): Ditto. | |
679 | ||
57499703 CF |
680 | Sat Mar 17 12:43:15 2001 Christopher Faylor <cgf@cygnus.com> |
681 | ||
682 | * path.cc (suffix_scan::next): Avoid searching for foo.lnk twice when | |
683 | input is "foo". | |
684 | ||
298fad46 CV |
685 | Sat Mar 17 18:10:00 2001 Corinna Vinschen <corinna@vinschen.de> |
686 | ||
687 | * net.cc (cygwin_socket): Set protocol to 0 when address family is | |
688 | AF_UNIX to avoid WSAEPROTONOSUPPORT error. | |
689 | ||
f52488f7 CV |
690 | Sat Mar 17 09:51:32 2001 Mathew Brozowski <brozow@tavve.com> |
691 | ||
692 | * net.cc (cygwin_socket): Pass protocol parameter to socket call. | |
693 | ||
b63a3f55 CF |
694 | Sat Mar 17 02:05:38 2001 Christopher Faylor <cgf@cygnus.com> |
695 | ||
696 | * dir.cc (readdir): Use strcasematch for consistency. | |
697 | * path.cc (symlink_info): Eliminate known_suffix. | |
698 | (path_conv::check): Always copy ext_here to end of buffer, if found. | |
699 | (suffix_scan): Eliminate ext_here, add suffixes_start. | |
700 | (suffix_scan::has): Eliminate an argument. Reorganize. Always return | |
701 | pointer to end of input path. | |
702 | (suffix_scan::next): Take a second pass through the suffix list looking | |
703 | for .lnk. | |
704 | (symlink_info::check): Eliminate known_suffix usage. | |
705 | ||
db15b3e3 | 706 | Sat Mar 17 00:10:52 2001 Christopher Faylor <cgf@cygnus.com> |
5bb22c6b | 707 | |
db15b3e3 | 708 | * syscalls.cc (stat_dev): Give devices full read/write by default. |
5bb22c6b | 709 | |
c0c9de3c CF |
710 | Saturday Mar 17 3:45 2001 Robert Collins <rbtcollins@hotmail.com> |
711 | ||
712 | * thread.cc (MTinterface::CreateCond): Check for null attr pointer. | |
713 | ||
ddca580f CF |
714 | Fri Mar 16 21:13:23 2001 Christopher Faylor <cgf@cygnus.com> |
715 | ||
716 | * fhandler_termios.cc (fhandler_termios::line_edit): Don't accept input | |
717 | when a signal is sent or we'll end up in an EOF/signal race. | |
718 | ||
b65c6896 CF |
719 | Fri Mar 16 20:25:40 2001 Christopher Faylor <cgf@cygnus.com> |
720 | ||
721 | * path.cc: Translate scan states from defines to enums. | |
722 | (suffix_scan): Rename state to nextstate for clarity. | |
723 | (lnk_match): Change to allow multiple states to indicate that a .lnk | |
724 | has been matched. | |
725 | (suffix_scan::has): Eliminate a goto. Handle .lnk as a special case, | |
726 | since a .lnk may also need to be tacked on the end of a .lnk. | |
727 | (suffix_scan::next): Don't increment next state. Set it specifically. | |
728 | Recognize new .lnk states. | |
729 | ||
92f4bf97 | 730 | Saturday Mar 17 01:19 2001 Robert Collins rbtcollins@hotmail.com |
0cec3226 | 731 | |
5ccbf4b6 CF |
732 | * cygwin.din: Export the new functions. |
733 | * pthread.cc (pthread_cond_*): Add wrapper functions that call | |
734 | __pthread_cond* functions. | |
735 | * thread.cc (__pthread_cond_*): Implement the pthread_cond* functions. | |
736 | * thread.h: Add new class entries and prototypes for __pthread_cond* | |
737 | functions. | |
738 | * include/pthread.h: user land header prototypes for pthread_cond* | |
739 | functions and related defines. | |
740 | ||
e212576d CV |
741 | Wed Mar 14 16:30:00 2001 Corinna Vinschen <corinna@vinschen.de> |
742 | ||
743 | * environ.cc (parse_options): Use strtok_r instead of strtok. | |
744 | * security.cc (convert_string_sid_to_sid): Ditto. | |
745 | (aclfromtext): Ditto. Fix buffer usage. | |
746 | ||
78d2c08c CV |
747 | Wed Mar 14 10:11:00 2001 Corinna Vinschen <corinna@vinschen.de> |
748 | ||
749 | * path.cc (lnk_suffixes): Remove. | |
750 | (class suffix_scan): Add `lnk_state' flag. | |
751 | (suffix_scan::lnk_match): Return state of `lnk_state' now. | |
752 | (suffix_scan::has): Changed behaviour if file has `.lnk' suffix. | |
753 | (suffix_scan::next): Set `lnk_state' where appropriate. | |
754 | (symlink_info::check): Fix a wrong `break'. | |
755 | * syscalls.cc (chown_worker): Change debug statement to reflect | |
756 | lchown fix. | |
757 | (lchown): Call chown_worker with `PC_SYM_NOFOLLOW' instead of | |
758 | `PC_SYM_IGNORE'. | |
759 | ||
1d39c83a CV |
760 | Tue Mar 13 13:52:00 2001 Corinna Vinschen <corinna@vinschen.de> |
761 | ||
762 | * fhandler.cc (fhandler_disk_file::fstat): Add correct modes to | |
763 | symlinks when stat'ing on FAT or FAT32 file systems. | |
764 | ||
e935fcf0 ED |
765 | 2001-03-12 Egor Duda <deo@logos-m.ru> |
766 | ||
767 | * fhandler.h (fhandler_termios::fixup_after_exec): New function. | |
344ce60c ED |
768 | * fhandler_termios.cc (fhandler_termios::fixup_after_fork): New |
769 | function. Fixup output handle. | |
e935fcf0 ED |
770 | * fhandler_tty.cc (fhandler_tty_common::fixup_after_fork): Output |
771 | handle is now fixed up in fhandler_termios::fixup_after_fork(). | |
772 | ||
79409dc0 ED |
773 | 2001-03-12 Egor Duda <deo@logos-m.ru> |
774 | ||
775 | * fhandler.h (fhandler_termios::fhandler_termios): Enable fixup | |
776 | after fork. | |
777 | * fhandler_console.cc (fhandler_console::fhandler_console): Fixup | |
778 | after fork is now enabled in the base class constructor. | |
779 | ||
2b777e2e CF |
780 | Mon Mar 12 11:19:41 2001 Christopher Faylor <cgf@cygnus.com> |
781 | ||
782 | * mkvers.sh: Include config.h so that DEBUGGING is correctly defined. | |
783 | ||
941fa5ad CF |
784 | Mon Mar 12 09:47:55 2001 Christopher Faylor <cgf@cygnus.com> |
785 | ||
786 | * spawn.cc (spawn_guts): Don't set EXIT_REPARENTING if parent process | |
787 | is not a cygwin process (suggested by Jason Gouger | |
788 | <cygwin@jason-gouger.com>). | |
789 | ||
d0909d91 CF |
790 | Sun Mar 11 16:00:58 2001 Christopher Faylor <cgf@cygnus.com> |
791 | ||
792 | * child_info.h: Bump magic number for fork/exec/spawn. | |
793 | ||
2116a175 CF |
794 | Sat Mar 10 20:54:47 2001 Christopher Faylor <cgf@cygnus.com> |
795 | ||
796 | * autoload.cc (noload): Use proper method for multiline strings or | |
797 | newer gcc's complain. | |
798 | * exceptions.cc (unused_sig_wrapper): Ditto. | |
799 | * fhandler.h (fhandler_base): Make get_io_handle and friends return | |
800 | self. | |
801 | * fhandler_tty.cc (fhandler_pty_common::close_on_exec): Accomodate | |
802 | DEBUGGING flag to avoid spurious warnings when inheritance is set. | |
803 | ||
7cf3b655 CF |
804 | Sat Mar 10 16:52:12 2001 Christopher Faylor <cgf@cygnus.com> |
805 | ||
806 | * shortcut.c (PATH_ALL_EXEC): Add parentheses to avoid a compiler | |
807 | warning. | |
808 | ||
809 | * exceptions.cc (setup_handler): Clarify debugging message. | |
810 | * sigproc.cc (proc_subproc): Remove PROC_CHILDSTOPPED test. It is | |
811 | handled by normal PROC_CLEARWAIT case. | |
812 | (wait_sig): Eliminate "dispatched" tracking. Remove __SIGCHILDSTOPPED | |
813 | test. Decrement counter again before jumping out of | |
814 | InterlockedDecrement loop so that subsequent InterlockedIncrement will | |
815 | keep the counter at the correctly decremented value and also detect | |
816 | when there are pending signals. | |
817 | * sigproc.h: Remove __SIGCHILDSTOPPED element. | |
818 | (procstuff): Remove PROC_CHILDSTOPPED element. | |
819 | ||
e2f2a27e CF |
820 | Sat Mar 10 15:22:44 2001 Christopher Faylor <cgf@cygnus.com> |
821 | ||
822 | * syscalls.cc (_rename): Set errno to ENOENT when an old path doesn't | |
823 | exist (from Kazuhiro Fujieda <fujieda@jaist.ac.jp>). Also set EACCES | |
824 | when directory is not writable. | |
825 | ||
6ebccdc1 CF |
826 | Wed Mar 7 15:49:47 2001 Christopher Faylor <cgf@cygnus.com> |
827 | ||
828 | * syscalls.cc (_read): Change definition to return ssize_t to be | |
829 | consistent with read. | |
830 | (_write): Change definition to return ssize_t to be consistent with | |
831 | write. | |
832 | ||
efd76e41 CF |
833 | Wed Mar 7 01:08:21 2001 Christopher Faylor <cgf@cygnus.com> |
834 | ||
835 | * sigproc.h (sigthread): Declare new methods. Create new winapi_lock | |
836 | field. | |
837 | (sigframe:;set): Call get_winapi_lock after frame is set so that signal | |
838 | handler thread knows not to call SuspendThread. | |
839 | (sigframe::~sigframe): Release winapi_lock. | |
840 | * exceptions.cc (sigthread::get_winapi_lock): New method. | |
841 | (sigthread::release_winapi_lock): New method. | |
842 | (setup_handler): Use get_winapi_lock to ensure that signalled thread is | |
843 | not blocked in a Windows API. | |
844 | ||
845 | * path.h (path_types): Avoid broken GCC warning. | |
846 | ||
bf11a54f CV |
847 | Tue Mar 6 14:02:00 2001 Corinna Vinschen <corinna@vinschen.de> |
848 | ||
849 | * path.cc (suffix_scan::has): Change order of conditionals | |
850 | to allow checking for .lnk suffixes even if in_suffixes is empty. | |
851 | ||
852 | Tue Mar 6 13:02:00 2001 Corinna Vinschen <corinna@vinschen.de> | |
7cdc9fee CV |
853 | |
854 | * autoload.c (cygwin_premain0): Add missing parameter. | |
855 | * binmode.c (cygwin_premain0): Ditto. | |
856 | * textmode.c (cygwin_premain0): Ditto. | |
857 | ||
858 | Tue Mar 6 12:04:00 2001 Jason Tiller <jtiller@sjm.com> | |
859 | ||
860 | * auto_load.cc: Add "GetKeyboardLayout" entry in the list of | |
861 | Win32 User32.DLL exports to provide. | |
862 | * fhandler.h (class fhandler_console): Add meta_mask private | |
863 | member to remember which keystroke modifiers should generate | |
864 | META. | |
865 | * fhandler_console.cc (fhandler_console::read): Modify code that | |
866 | tests a keystroke for a META-escaped key to use the 'meta_mask' | |
867 | variable. | |
868 | (fhandler_console::fhandler_console): Add definition for | |
869 | variable "meta_mask" used to determine if a keystroke should be | |
870 | preceded by META in the client console stream. Set meta_mask | |
871 | based on whether or not user's keyboard language is English - | |
872 | non-English keyboards pass AltGr (right <ALT>) unmolested, | |
873 | whereas English keyboards now interpret left- and right-<ALT> | |
874 | as META. | |
875 | ||
a887211b CV |
876 | Mon Mar 5 20:15:00 2001 Corinna Vinschen <corinna@vinschen.de> |
877 | ||
878 | * include/a.out.h: Add copyright hint. | |
879 | * include/fcntl.h: Ditto. | |
880 | * include/lastlog.h: Ditto. | |
881 | * include/memory.h: Ditto. | |
882 | * include/mntent.h: Ditto. | |
883 | * include/paths.h: Ditto. | |
884 | * include/poll.h: Ditto. | |
885 | * include/syslog.h: Ditto. | |
886 | * include/termio.h: Ditto. | |
887 | * include/tzfile.h: Ditto. | |
888 | * include/arpa/inet.h: Ditto. | |
889 | * include/asm/byteorder.h: Ditto. | |
890 | * include/asm/socket.h: Ditto. | |
891 | * include/asm/types.h: Ditto. | |
892 | * include/cygwin/if.h: Ditto. | |
893 | * include/cygwin/mtio.h: Ditto. | |
894 | * include/cygwin/rdevio.h: Ditto. | |
895 | * include/cygwin/socket.h: Ditto. | |
896 | * include/net/if.h: Ditto. | |
897 | * include/netinet/in.h: Ditto. | |
898 | * include/netinet/in_systm.h: Ditto. | |
899 | * include/netinet/ip.h: Ditto. | |
900 | * include/netinet/ip_icmp.h: Ditto. | |
901 | * include/netinet/tcp.h: Ditto. | |
902 | * include/sys/cdefs.h: Ditto. | |
903 | * include/sys/cygwin.h: Ditto. | |
904 | * include/sys/ioctl.h: Ditto. | |
905 | * include/sys/mman.h: Ditto. | |
906 | * include/sys/mount.h: Ditto. | |
907 | * include/sys/mtio.h: Ditto. | |
908 | * include/sys/procfs.h: Ditto. | |
909 | * include/sys/resource.h: Ditto. | |
910 | * include/sys/smallprint.h: Ditto. | |
911 | * include/sys/socket.h: Ditto. | |
912 | * include/sys/strace.h: Ditto. | |
913 | * include/sys/syslog.h: Ditto. | |
914 | * include/sys/sysmacros.h: Ditto. | |
915 | * include/sys/termio.h: Ditto. | |
916 | * include/sys/termios.h: Ditto. | |
917 | * include/sys/uio.h: Ditto. | |
918 | * include/sys/un.h: Ditto. | |
919 | * include/sys/utsname.h: Ditto. | |
920 | * include/sys/vfs.h: Ditto. | |
921 | * include/sys/wait.h: Ditto. | |
922 | * regexp/regerror.c: Ditto. | |
923 | * regexp/regexp.h: Ditto. | |
924 | * regexp/regmagic.h: Ditto. | |
925 | ||
95a8465b CF |
926 | Mon Mar 5 01:25:03 2001 Christopher Faylor <cgf@cygnus.com> |
927 | ||
928 | * dlopen.c (dlopen): Return NULL when name is NULL (suggested by | |
929 | chrisiasci@aol.com). | |
930 | ||
931 | * cygwin.din: Add a new, internally used export - | |
932 | _check_for_executable. | |
933 | * dcrt0.cc (dll_crt0_1): Set _check_for_executable for older binaries. | |
934 | Pass user_data to premain functions. | |
935 | * fhandler.cc (fhandler_disk_file::open): Only check for executable if | |
936 | the linked program is intereested in the executable bit. | |
937 | (fhandler_disk_file::check_execable_p): Delete. | |
938 | * fhandler.h (executable_states): New enumeration of various states of | |
939 | executable bit caring. | |
940 | (fhandler_base::set_execable_p): New method. | |
941 | ||
942 | * fhandler_termios.cc (fhandler_termios::line_edit): Flag when a signal | |
943 | has been sent to the tty. Return -1 when this is so. | |
944 | * fhandler_console.cc (fhandler_console::read): Return -1 when signal | |
945 | sending character encountered. | |
946 | ||
947 | * path.cc (path_conv::check): Record when path refers to a disk device. | |
948 | Move executable extension check here. | |
949 | (check_sysfile): Accomodate new EXEC path states. | |
950 | (has_suffix): Remove. | |
951 | (next_suffix): Remove. | |
952 | (class suffix_scan): New clas. | |
953 | (suffix_scan::has): New method. | |
954 | (suffix_scan:next): New method. | |
955 | (symlink_info::check): Use suffix_scan method to control for scanning | |
956 | for suffixes. | |
957 | * path.h (path_conv::exec_state): New method. | |
958 | * perprocess.h: Make "C" friendly. | |
959 | * include/cygwin/version.h: Define CYGWIN_VERSION_CHECK_FOR_S_IEXEC. | |
960 | Bump CYGWIN_VERSION_API_MINOR. | |
961 | * include/sys/cygwin.h: Change premain declarations. | |
962 | ||
963 | * winsup.h: Move __cplusplus test to after builtin defines. | |
964 | ||
306c4b67 ED |
965 | 2001-03-04 Egor Duda <deo@logos-m.ru> |
966 | ||
967 | * fhandler.h (class fhandler_tty_common): New mutex and event to | |
968 | syncronize input on master tty with slave tty. | |
969 | * fhandler_tty.cc (fhandler_pty_master::accept_input): Use them to | |
970 | syncronize with slave. | |
971 | * fhandler_tty.cc (fhandler_tty_slave::read): Use input mutex and | |
972 | event to syncronize with master. Do not limit amount of data read | |
973 | from master to vmin value. Interrupt on signal and return already | |
974 | read data, if any. | |
975 | * fhandler_tty.cc (fhandler_tty_slave::open): Handle input mutex and | |
976 | event. | |
977 | * fhandler_tty.cc (fhandler_tty_common::close): Ditto. | |
978 | * fhandler_tty.cc (fhandler_tty_common::set_close_on_exec): Ditto. | |
979 | * fhandler_tty.cc (fhandler_tty_common::fixup_after_fork): Ditto. | |
980 | * fhandler_tty.cc (fhandler_tty_common::dup): Ditto. | |
981 | * tty.h (tty::open_input_mutex): New function. | |
982 | * tty.cc (tty::common_init): Create input mutex and event. | |
983 | ||
ed94def2 CV |
984 | Fri Mar 2 13:32:00 2001 Corinna Vinschen <corinna@vinschen.de> |
985 | ||
986 | * dir.cc (readdir): Fix creating path in symlink check. | |
987 | ||
e03f5f73 CV |
988 | Fri Mar 2 12:33:00 2001 Corinna Vinschen <corinna@vinschen.de> |
989 | ||
990 | * dir.cc (readdir): Fix shortcut==symlink condition. | |
991 | * environ.cc: Add extern decl for `allow_winsymlinks'. | |
992 | (struct parse_thing): Add entry for `[no]winsymlinks'. | |
993 | * path.cc (symlink): Change to be able to create both, | |
994 | symlink==shortcut and symlink==systemfile, dependent of | |
995 | the setting of `allow_winsymlinks'. | |
996 | * security.cc (cygwin_logon_user): Add debug output. | |
997 | * shortcut.c: Add defines from path.h. | |
998 | (has_exec_chars): Copy from path.h. | |
999 | (check_shortcut): Check for executable file condition if not a | |
1000 | shortcut. | |
1001 | ||
903c330d CF |
1002 | Thu Mar 1 21:06:07 2001 Christopher Faylor <cgf@cygnus.com> |
1003 | ||
1004 | * exceptions.cc (sig_handle_tty_stop): Ignore attempts to suspend a | |
1005 | process if started by non-cygwin parent. | |
1006 | ||
d80999a1 CF |
1007 | Thu Mar 1 20:48:11 2001 Christopher Faylor <cgf@cygnus.com> |
1008 | ||
1009 | * select.cc (peek_console): Don't report read_ready on mouse events | |
1010 | unless we are looking for mouse events. | |
1011 | * fhandler.h (fhandler_console::mouse_aware): New method. | |
1012 | ||
2de76014 CV |
1013 | Wed Feb 28 15:10:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1014 | ||
1015 | * uinfo.cc: Eliminate `#include <wchar.h>'. | |
1016 | ||
739db26a ED |
1017 | 2001-02-28 Egor Duda <deo@logos-m.ru> |
1018 | ||
1019 | * fhandler_floppy.cc (fhandler_dev_floppy::lseek): Determine | |
1020 | drive geometry or partition size to allow seeking from the end of | |
1021 | raw floppy device. Don't allow positioning past the end of media or | |
1022 | to offsets bigger then max off_t. | |
1023 | ||
a53136cc ED |
1024 | 2001-02-27 Egor Duda <deo@logos-m.ru> |
1025 | ||
1026 | * fhandler.h (class fhandler_console): Make all variables that | |
1027 | describe "state" of console to be members of fhandler_console. | |
1028 | default_color is now the color which is set when console recieves | |
1029 | reset command. | |
1030 | * fhandler_console.cc (fhandler_console::fhandler_console): Turn | |
1031 | mouse handling and raw keyboard mode off by default. Initialize | |
1032 | state information. | |
1033 | * fhandler.cc (fhandler_console::set_raw_win32_keyboard_mode): New | |
1034 | function. | |
1035 | * fhandler_console.cc (fhandler_console::set_default_attr): New | |
1036 | function. Reset console attributes to default values. | |
1037 | * fhandler_console.cc (fhandler_console::open): Reset attributes. | |
1038 | * fhandler_console.cc (fhandler_console::get_win32_attr): New function. | |
1039 | Calculate win32-style console attribute based on terminal attributes. | |
1040 | * fhandler_console.cc (fhandler_console::set_cursor_maybe): Use | |
1041 | member variable. | |
1042 | * fhandler_console.cc (fhandler_console::read): If in raw-win32 | |
1043 | keyboard mode, encode win32 keyboard events in \033{x;y;z;t;u;wK | |
1044 | sequences. | |
1045 | * fhandler_console.cc (fhandler_console::dup): Copy all state | |
1046 | information to the dup()ed handle. | |
1047 | * fhandler_console.cc (fhandler_console::scroll_screen): Use current | |
1048 | fill-in attribute. | |
1049 | * fhandler_console.cc (fhandler_console::clear_screen): Ditto. | |
1050 | * fhandler_console.cc (fhandler_console::char_command): Check if we | |
1051 | saw '?' symbol by member variable. Set terminal attributes on \033[Xm | |
1052 | commands. \033[24m - turn off underline mode, \033[27m - turn off | |
1053 | reverse mode, \033[39m - restore default foreground color. | |
1054 | \033[49m - restore default background color. \033[2000h - turn on raw | |
1055 | keyboard mode, \033[2000l - turn off raw keyboard mode. | |
1056 | * fhandler_console.cc (fhandler_console::write): Set attribues to | |
1057 | default values on reset command. | |
1058 | ||
5b331f1e | 1059 | 2001-02-26 Mike Simons <msimons@moria.simons-clan.com> |
efd76e41 | 1060 | |
5b331f1e CF |
1061 | * times.cc (settimeofday): Replace function stub with working code. |
1062 | ||
88429768 CV |
1063 | Mon Feb 26 10:42:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1064 | ||
1065 | * strace.cc (strace::vprntf): Move prntf functionality to this function | |
1066 | adding an va_list interface to strace. | |
1067 | (strace::printf): Calls strace::vprntf now. | |
1068 | (strace_printf): New function providing an extern "C" interface to | |
1069 | trace output. | |
1070 | * include/sys/strace.h: Make plain C clean. | |
1071 | (class strace): Add `vprntf' method. | |
1072 | ||
6626ebfe CV |
1073 | Mon Feb 26 0:10:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1074 | ||
1075 | * shortcut.c: Remove #include <sys/strace.h>. | |
1076 | ||
649033a8 CV |
1077 | Sun Feb 25 10:32:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1078 | ||
1079 | * path.cc (symlink): Add a ".lnk" suffix regardless. Add a comment. | |
1080 | ||
80ed95f2 CV |
1081 | Sun Feb 25 10:18:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1082 | ||
649033a8 | 1083 | * shortcut.c (check_shortcut): Change symlink condition. |
80ed95f2 | 1084 | |
675412e9 CV |
1085 | Fri Feb 23 10:42:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1086 | ||
1087 | * mmap.cc (fhandler_disk_file::mmap): Use `addr' correctly. | |
1088 | * fhandler_mem.cc (fhandler_dev_mem::mmap): Ditto. | |
1089 | ||
ff413a98 CV |
1090 | Thu Feb 22 17:09:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1091 | ||
1092 | * path.cc (symlink): Keep relative paths relative in the DOS | |
659b480b CV |
1093 | path inside of a shortcut. If that's impossible or the target |
1094 | path is already absolute save an absolute path. | |
ff413a98 | 1095 | |
c5a4eacc CV |
1096 | Thu Feb 22 15:33:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1097 | ||
1098 | * cygerrno.h: Revert previous patch. | |
1099 | * errno.cc: Ditto. | |
1100 | * dir.cc: Eliminate `dir_suffixes'. | |
1101 | (opendir): Remove usage of `dir_suffixes'. | |
1102 | (rmdir): Ditto. | |
1103 | * fhandler.cc (fhandler_disk_file::open): Remove usage of | |
1104 | `inner_suffixes'. | |
1105 | * path.cc: Rename `inner_suffixes' to `lnk_suffixes'. | |
1106 | (path_conv::check): Remove usage of `inner_suffixes'. | |
1107 | (symlink): Ditto. | |
1108 | (symlink_info::check): Handle checking for `.lnk' in path_conv | |
1109 | exclusively here. | |
1110 | (chdir): Remove usage of `dir_suffixes'. | |
1111 | * shortcut.c: Eliminate debug_printf lines. | |
1112 | (check_shortcut): Don't set error except on failing ReadFile. | |
1113 | * spawn.cc: Remove ".lnk" from `std_suffixes'. | |
1114 | * syscalls.cc (_unlink): Remove usage of `inner_suffixes'. | |
1115 | Remove ".lnk" from `stat_suffixes'. | |
1116 | (_rename): Add check for renaming a symlink to keep the ".lnk" | |
1117 | suffix after renaming. | |
1118 | ||
79e56091 CV |
1119 | Thu Feb 22 13:38:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1120 | ||
1121 | * shortcut.c: New file. Provides a C interface to reading of | |
1122 | Windows shortcuts to avoid compiler flag `-fvtable-thunks'. | |
1123 | * shortcut.h: Ditto. | |
1124 | * Makefile.in: Add shortcut.o to DLL_OFILES. | |
1125 | * cygerrno.h: Provide a C interface to `geterrno_from_win_error' for | |
1126 | using in shortcut.c. | |
1127 | * errno.cc (geterrno_from_win_error): Define as extern "C". | |
1128 | * path.cc (struct symlink_info): Remove methods `check_shortcut' and | |
1129 | `check_sysfile'. | |
1130 | (shortcut_header): Move to shortcut.c. | |
1131 | (shortcut_initalized): Ditto. | |
1132 | (create_shortcut_header): Ditto. | |
1133 | (cmp_shortcut_header): Ditto. | |
1134 | (symlink_info::check_shortcut): Ditto. Reorganize as a plain C function. | |
1135 | (symlink_info::check_sysfile): Redefine as a global function using the | |
1136 | same parameter list as `check_shortcut' for clearness. | |
1137 | (symlink_info::check): Change parameter list for calls to | |
1138 | `check_shortcut' and `check_sysfile'. | |
1139 | ||
87e6b098 CV |
1140 | Thu Feb 22 12:04:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1141 | ||
1142 | * fhandler.cc (fhandler_disk_file::open): Use `inner_suffixes' when | |
1143 | resolving real_path. | |
1144 | * path.cc (symlink): Ditto for win32_topath. | |
1145 | ||
10b06c5e CV |
1146 | Wed Feb 21 22:41:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1147 | ||
1148 | * Makefile.in: Add `-lshell32 -luuid' to link pass for new-cygwin1.dll. | |
1149 | * autoload.cc: Add LoadDLLinitfunc for ole32.dll. | |
1150 | Add LoadDLLfuncEx statements for CoInitialize@4, CoUninitialize@0 | |
1151 | and CoCreateInstance@20. | |
1152 | * dir.cc (dir_suffixes): New datastructure. | |
1153 | (readdir): Check for R/O *.lnk files to hide the suffix. | |
1154 | (opendir): Use `dir_suffixes' in path conversion. | |
1155 | (rmdir): Ditto. | |
1156 | * fhandler.cc (fhandler_disk_file::fstat): Add S_IFLNK flag | |
1157 | before calling `get_file_attribute'. Take FILE_ATTRIBUTE_READONLY | |
1158 | into account only if the file is no symlink. | |
1159 | * path.cc (inner_suffixes): New datastructure. | |
1160 | (SYMLINKATTR): Eliminated. | |
1161 | (path_conv::check): Use `inner_suffixes' on inner path components. | |
1162 | (shortcut_header): New global static variable. | |
1163 | (shortcut_initalized): Ditto. | |
1164 | (create_shortcut_header): New function. | |
1165 | (cmp_shortcut_header): Ditto. | |
1166 | (symlink): Create symlinks by creating windows shortcuts. Preserve | |
1167 | the old code. | |
1168 | (symlink_info::check_shortcut): New method. | |
1169 | (symlink_info::check_sysfile): Ditto. | |
1170 | (symlink_info::check): Check for shortcuts. Move code reading | |
1171 | old system attribute symlinks into symlink_info::check_sysfile(). | |
1172 | (chdir): Use `dir_suffixes' in path conversion. | |
1173 | * security.cc (get_file_attribute): Check for S_IFLNK flag. | |
1174 | Force 0777 permissions then. | |
1175 | * spawn.cc (std_suffixes): Add ".lnk" suffix. | |
1176 | * syscalls.cc (_unlink): Use `inner_suffixes' in path conversion. | |
1177 | Check for shortcut symlinks to eliminate R/O attribute before | |
1178 | calling DeleteFile(). | |
1179 | (stat_suffixes): Add ".lnk" suffix. | |
1180 | (stat_worker): Force 0777 permissions if file is a symlink. | |
1181 | ||
0917ed59 ED |
1182 | 2001-02-21 Egor Duda <deo@logos-m.ru> |
1183 | ||
1184 | * sigproc.cc (getsem): Make semaphore always non-inheritable. | |
1185 | ||
441d7aee CF |
1186 | Mon Feb 19 22:25:53 2001 Christopher Faylor <cgf@cygnus.com> |
1187 | ||
1188 | * dcrt0.cc (locale_init): Remove. | |
1189 | ||
f97e7d75 CF |
1190 | 2001-02-15 Kazuhiro Fujieda <fujieda@jaist.ac.jp> |
1191 | ||
1192 | * cygwin.din: Export rand48 functions. | |
1193 | * thread.cc (MTinterface::Init): Remove the initialization of | |
1194 | `reent_data'. | |
1195 | * dcrt0.cc: Add the initalizer to the declaration of `reent_data'. | |
1196 | * include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR to 35. | |
1197 | ||
fc68bf34 ED |
1198 | 2001-02-16 Egor Duda <deo@logos-m.ru> |
1199 | ||
1200 | * signal.cc (signal): Prohibit setting handlers for SIGKILL and | |
1201 | SIGSTOP | |
1202 | * signal.cc (sigaction): Ditto | |
1203 | * syscalls.cc (_lseek): Return EINVAL on invalid input | |
1204 | ||
ee2c7251 CF |
1205 | Wed Feb 14 14:54:40 2001 Christophe Iasci <chrisiasci@aol.com> |
1206 | ||
1207 | * dlfcn.cc (dlopen): Do not call LoadLibrary with a NULL pointer, when | |
1208 | the library is not found | |
1209 | ||
8f8e7442 | 1210 | 2001-02-14 Egor Duda <deo@logos-m.ru> |
efd76e41 | 1211 | |
8f8e7442 CF |
1212 | * fhandler_console.cc (fhandler_console::char_command): Ignore unknown |
1213 | rendition codes in \033[xx;yym control sequences | |
1214 | ||
cde0c2fb CF |
1215 | Fri Feb 9 23:19:01 2001 Christopher Faylor <cgf@cygnus.com> |
1216 | ||
1217 | * fork.cc (fork_parent): Return EAGAIN when can't record pid. | |
1218 | * pinfo.h (pinfo::remember): Return value of call to proc_subproc. | |
1219 | * sigproc.cc (proc_subproc): Return error if can't record pid. | |
1220 | ||
c41482c7 CF |
1221 | Fri Feb 9 12:17:27 2001 Christopher Faylor <cgf@cygnus.com> |
1222 | ||
1223 | * syscalls.cc (mknod): Add valid parameters. | |
1224 | ||
889109ab CV |
1225 | Thu Feb 8 22:09:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1226 | ||
1227 | * mmap.cc (mmap): Check for reusing a mapping only on MAP_SHARED | |
1228 | and on MAP_PRIVATE|MAP_ANON in the special case of offset 0. | |
1229 | ||
db49d0b5 CV |
1230 | Thu Feb 8 21:57:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1231 | ||
1232 | * mmap.cc (class list): Add member `hash'. | |
1233 | (list::list): Initialize `hash'. | |
1234 | (list::get_list_by_fd): Use filepath hash value to get the correct | |
1235 | mapping list if it's not an anonymous mapping. | |
1236 | (map::add_list): Initialize `hash' with filepath hash value. | |
1237 | (mmap): Check for reusing a mapping only on MAP_SHARED. | |
1238 | ||
91d385fe CF |
1239 | Wed Feb 7 18:47:36 2001 Christopher Faylor <cgf@cygnus.com> |
1240 | ||
1241 | * signal.cc (killpg): Correct first argument. | |
1242 | ||
9182099c CV |
1243 | Wed Feb 7 22:22:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1244 | ||
1245 | * autoload.cc: Add LoadDLLinitfunc for iphlpapi.dll. | |
1246 | Add LoadDLLfuncEx statements for GetIfTable@12 and GetIpAddrTable@12. | |
1247 | * fhandler_socket.cc (fhandler_socket::ioctl): Move variable | |
1248 | definitions to the beginning of the function to allow better debugging. | |
1249 | Add handling for SIOCGIFHWADDR, SIOCGIFMETRIC and SIOCGIFMTU. | |
1250 | * net.cc: Include iphlpapi.h. | |
1251 | (get_2k_ifconf): Rewritten. Uses IP Helper API now. | |
1252 | (get_nt_ifconf): Add handling for SIOCGIFHWADDR, SIOCGIFMETRIC | |
1253 | and SIOCGIFMTU. | |
1254 | (get_95_ifconf): Ditto. Renamed from `get_9x_ifconf'. | |
1255 | (get_ifconf): Name loopback `lo' instead of `lo0' as in Linux. | |
1256 | Add handling for SIOCGIFHWADDR, SIOCGIFMETRIC and SIOCGIFMTU. | |
1257 | Call `get_95_ifconf' only on Windows 95, `get_nt_ifconf' only | |
1258 | on Windows NT < Service Pack 3, `get_2k_ifconf otherwise. | |
1259 | * include/asm/socket.h: Add defines for SIOCGIFHWADDR, SIOCGIFMETRIC | |
1260 | and SIOCGIFMTU. | |
1261 | * include/cygwin/if.h: Add `ifr_hwaddr', `ifr_metric' and `ifr_mtu'. | |
1262 | (struct ifreq): Add `ifru_hwaddr'. | |
1263 | ||
d7ed877b CV |
1264 | Tue Feb 6 15:04:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1265 | ||
1266 | * syscalls.cc (stat_worker): Add a check for the special case when | |
1267 | a process creates a file using mode 000 using ntsec. | |
1268 | ||
ae9b22c6 CV |
1269 | Mon Feb 5 17:00:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1270 | ||
1271 | * fhandler.cc (fhandler_base::open): Always add GENERIC_READ access | |
1272 | when opening raw disk devices. | |
1273 | * fhandler_floppy.cc (fhandler_dev_floppy::lseek): Implement bytewise | |
1274 | access. | |
1275 | * fhandler_raw.cc (fhandler_dev_raw::open): Always open raw disk device | |
1276 | binary. | |
1277 | (fhandler_dev_raw::raw_write): Don't drop read buffer content when | |
1278 | writing after read. | |
1279 | ||
cada03f9 CV |
1280 | Mon Feb 5 13:30:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1281 | ||
1282 | * mmap.cc (mmap_record::fixup_map): New method to duplicate | |
1283 | the memory protection in a just forked child. | |
1284 | (mmap): Realign gran_len to page boundary only on anonymous | |
1285 | mapping before saving in the mmap_record. | |
1286 | (munmap): Cleanup code. | |
1287 | (msync): Ditto. | |
1288 | (fixup_mmaps_after_fork): Ditto. Call mmap_record::fixup_map now. | |
1289 | ||
47f81092 CF |
1290 | Thu Feb 1 23:08:29 2001 Christopher Faylor <cgf@cygnus.com> |
1291 | ||
1292 | * cygheap.cc (creturn): Correctly calculate cygheap_max. | |
1293 | ||
f8da1507 CF |
1294 | Wed Jan 31 10:04:58 2001 Christopher Faylor <cgf@cygnus.com> |
1295 | ||
1296 | * shared.cc (shared_info::initialize): Reduce size of heap. | |
1297 | ||
83443511 CV |
1298 | Wed Jan 31 13:22:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1299 | ||
1300 | * include/sys/resource.h: Fix typo. | |
1301 | ||
44e6d951 CV |
1302 | Wed Jan 31 13:20:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1303 | ||
83443511 | 1304 | * include/sys/resource.h: Add RLIMIT_NLIMITS and RLIM_NLIMITS. |
44e6d951 | 1305 | |
4f42df7b CF |
1306 | Tue Jan 30 18:15:23 2001 Christopher Faylor <cgf@cygnus.com> |
1307 | ||
1308 | * include/cygwin/version.h: Bump version to 1.3.0. | |
1309 | ||
9928a7e1 CV |
1310 | Tue Jan 30 8:55:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1311 | ||
1312 | * pinfo.cc (pinfo::init): Use INVALID_HANDLE_VALUE instead of | |
1313 | explicit cast (HANDLE) 0xffffffff. | |
1314 | * shared.cc (open_shared): Ditto. | |
1315 | ||
747e88d3 CF |
1316 | Mon Jan 29 17:15:22 2001 Bill Hegardt <bill@troyxcd.com> |
1317 | ||
1318 | * fhandler_serial.cc (raw_write): Use local copy of OVERLAPPED | |
1319 | structure instead of shared structure to fix a race condition between | |
1320 | read/write. | |
1321 | ||
68ea0dc2 CV |
1322 | Mon Jan 29 14:30:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1323 | ||
1324 | * mmap.cc (mmap): Remove obsolete check for MAP_SHARED|MAP_ANON as | |
1325 | being invalid. | |
1326 | ||
f977222f CV |
1327 | Mon Jan 29 10:23:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1328 | ||
1329 | * mmap.cc (mmap_record::find_empty): Fix loop condition. | |
1330 | ||
6a4878cf CF |
1331 | Sun Jan 28 19:40:40 2001 Christopher Faylor <cgf@cygnus.com> |
1332 | ||
1333 | * syscalls.cc (_link): Make sure that newpath does not exist. Set | |
1334 | errno if it does. | |
1335 | ||
1336 | Sun Jan 28 19:29:08 2001 Christopher Faylor <cgf@cygnus.com> | |
1337 | ||
1338 | * cygheap.cc (init_cheap): Don't specify a load address for the heap. | |
1339 | It doesn't work on #!*& Windows 9x. | |
1340 | (cygheap_init): Move GetUserName to memory_init. | |
1341 | * dcrt0.cc (dll_crt0_1): Call new memory_init functin, eliminate call | |
1342 | to heap_init. | |
1343 | * heap.cc (heap_init): Improve error output. | |
1344 | * heap.h: Correct some declarations. | |
1345 | * shared.cc (mount_table_init): Remove. | |
1346 | (memory_init): Renamed from shared_init. Reorganize to accomodate | |
1347 | strange Windows 9x problems with cygheap/heap interaction. | |
1348 | * shared_info.h: Rename shared_init to memory_init. | |
1349 | ||
ae6c8e4f CF |
1350 | Sun Jan 28 01:25:33 2001 Christopher Faylor <cgf@cygnus.com> |
1351 | ||
1352 | * include/cygwin/version.h: Bump API version. | |
1353 | ||
9a089f21 CF |
1354 | Sun Jan 28 01:18:22 2001 Christopher Faylor <cgf@cygnus.com> |
1355 | ||
1356 | * cygheap.cc (init_cheap): Move username initialization. | |
1357 | (cygheap_init): Here. | |
1358 | * shared_info.h (mount_info): Add a sys_mount_table_counter field. | |
1359 | (shared_info): Ditto. | |
1360 | * path.cc (mount_info::conv_to_win32_path): Check that our mount table | |
1361 | is in sync with the system mount table and reinitialize it if not. | |
1362 | (mount_info::add_reg_mount): Bump sys_mount_table counters if the | |
1363 | system mount table changes. | |
1364 | (mount_info::del_reg_mount): Ditto. | |
1365 | (mount_info::write_cygdrive_info_to_registry): Ditto. | |
1366 | (mount_info::remove_cygdrive_info_from_registry): Ditto. | |
1367 | ||
2a6fc028 CF |
1368 | Sun Jan 28 00:28:30 2001 Christopher Faylor <cgf@cygnus.com> |
1369 | ||
1370 | Throughout, change 'cygwin_shared.mount' to 'mount_table'. | |
1371 | * child_info.h (child_info): Move shared_h, console_h to cygheap. Add | |
1372 | mount_h. | |
1373 | * cygheap.h (init_cygheap): Add shared_h, console_h. | |
1374 | * cygheap.cc (init_cheap): Initialize heap at a fixed location after | |
1375 | the shared memory regions. Initialize cygheap->user name here. | |
1376 | * dcrt0.cc (dll_crt0_1): Call getpagesize () to initialize constants. | |
1377 | Remove cygheap_init since it is done in shared_init now. | |
1378 | (_dll_crt0): Initialize mount_h, remove shared_h and console_h | |
1379 | initialization. | |
1380 | * fhandler_console.cc (console_shared_h): Eliminate. | |
1381 | (get_tty_stuff): Use cygheap->console_h rather than console_shared_h. | |
6a4878cf CF |
1382 | * heap.cc (heap_init): Use page size constant calculated earlier in |
1383 | initialization. | |
2a6fc028 CF |
1384 | * shared.cc: Eliminate cygwin_shared_h. Add cygwin_mount_h. |
1385 | (mount_table_init): New function for initializing a user mount table. | |
6a4878cf CF |
1386 | (open_shared_file_map): Use constant for shared memory region. |
1387 | Initialize cygheap and mount table here. | |
2a6fc028 CF |
1388 | (open_shared): Improve debugging output. |
1389 | (shared_info::initialize): Eliminate call to mount.init. | |
1390 | (shared_terminate): Use cygheap->shared_h. Close cygwin_mount_h. | |
1391 | (open_shared_file_map): Eliminate. | |
1392 | * shared_info.h (mount_info): Add a version field. | |
6a4878cf CF |
1393 | (shared_align_past): New macro for calculating location for shared |
1394 | memory regions. | |
2a6fc028 | 1395 | * sigproc.cc (init_child_info): Eliminate shared_h, console_h. |
6a4878cf CF |
1396 | * spawn.cc (spawn_guts): Pass on cygwin_mount_h iff not a different |
1397 | user. | |
2a6fc028 CF |
1398 | * syscalls.cc (system_info): New global holding system memory defaults. |
1399 | (getpagesize): Use system_info. | |
1400 | * uinfo.cc (internal_getlogin): Only fill in user name if nonexistent. | |
1401 | * winsup.h: Declare system_info. | |
1402 | ||
6a4878cf CF |
1403 | * passwd.cc (read_etc_passwd): Use cygheap->user.name () rather than |
1404 | retrieving the name again. | |
2a6fc028 | 1405 | |
bdfeca60 CF |
1406 | Sat Jan 27 10:18:02 2001 Christopher Faylor <cgf@cygnus.com> |
1407 | ||
1408 | * path.cc (path_conv::check): Detect when path has symlinks. | |
1409 | (symlink_info::check): Remove debugging stuff. | |
1410 | (chdir): Use posix'ized win32 path if cd'ed to a path using symlinks. | |
1411 | ||
206a8d88 CF |
1412 | Fri Jan 26 21:20:28 2001 Christopher Faylor <cgf@cygnus.com> |
1413 | ||
1414 | * exceptions.cc (sigreturn): Call any pending signals prior to | |
1415 | resetting the signal mask so that stacked signals behave correctly. | |
1416 | (sigdelayed): Avoid a race where a signal could end up calling an | |
1417 | incorrect signal handler if two signals come in close together. | |
1418 | ||
174f1a39 CV |
1419 | Tue Jan 23 21:56:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1420 | ||
1421 | * mmap.cc (fhandler_disk_file::mmap): Call CreateFileMapping with | |
1422 | len != 0 only when performing an anonymous mapping. | |
1423 | ||
4c7b8250 CF |
1424 | Mon Jan 22 15:35:28 2001 Christopher Faylor <cgf@cygnus.com> |
1425 | ||
1426 | * path.h: Add a new constant. | |
1427 | * syscalls.cc (_read): Oscillate errno check. | |
1428 | ||
c65a3183 CF |
1429 | Mon Jan 22 15:27:12 2001 Christopher Faylor <cgf@cygnus.com> |
1430 | ||
1431 | * include/cygwin/version.h: Bump API to reflect setlogmask. | |
1432 | ||
29c39fe3 CF |
1433 | Sun Jan 21 22:40:25 2001 Jason Tishler <jt@dothill.com> |
1434 | ||
1435 | * cygwin.din: Add export for setlogmask(). | |
1436 | * syslog.cc (setlogmask): New function. | |
1437 | ||
c807d355 CV |
1438 | Thu Jan 18 10:27:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1439 | ||
1440 | * resource.cc (setrlimit): Support RLIMIT_NOFILE. | |
1441 | ||
4e2a97b2 CF |
1442 | Wed Jan 17 23:23:12 2001 Christopher Faylor <cgf@cygnus.com> |
1443 | ||
1444 | * syscalls.cc (setdtablesize): Call with amount to increment not total | |
1445 | amount. Return success or failure error code. | |
1446 | ||
a7cde2b9 CF |
1447 | Wed Jan 17 09:47:13 2001 Christopher Faylor <cgf@cygnus.com> |
1448 | ||
1449 | * autoload.cc (LoadDLLinitfunc): Remove debugging statement. | |
1450 | ||
1451 | * exceptions.cc (sig_handle_tty_stop): Move setting of PID_STOPPED to | |
1452 | earlier in interrupt. | |
1453 | ((interrupt_setup): i.e., here. | |
1454 | (sig_handle): Don't queue multiple SIGSTOPS. | |
1455 | * fhandler.h (bg_check_types): Enumerate return value of bg_check for | |
1456 | clarity. | |
1457 | * signal.cc (kill_pgrp): Minor cleanup. | |
1458 | * fhandler_termios.cc (fhandler_termios::bg_check): Use enumerated type | |
1459 | for function return. Don't raise signal if a signal is already queued. | |
1460 | * fhandler_console.cc (fhandler_console::read): Use enumerated return | |
1461 | type for bg_check. | |
1462 | * select.cc: Ditto, throughout. | |
1463 | * read.cc: Ditto, throughout. | |
1464 | * termios.cc: Ditto, throughout. | |
1465 | (_read): YA interrupt detect simplification. | |
1466 | * wait.cc (wait4): Ditto. | |
1467 | ||
cb503978 CV |
1468 | Wed Jan 17 10:56:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1469 | ||
1470 | * cygheap.cc (cygheap_user::~cygheap_user): Temporarily | |
1471 | disable free'ing memory. | |
1472 | ||
9fedfd57 CV |
1473 | Tue Jan 16 18:01:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1474 | ||
1475 | * mmap.cc (mmap): Initialize fh to avoid compiler warnings. | |
1476 | ||
9470a80c CF |
1477 | Mon Jan 15 21:07:00 2001 Christopher Faylor <cgf@cygnus.com> |
1478 | ||
1479 | * wait.cc (wait4): Rename variable for consistency. Allow restartable | |
1480 | signal behavior. | |
1481 | ||
9334c89c CV |
1482 | Mon Jan 15 23:15:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1483 | ||
1484 | * mmap.cc (mmap): Add more parameter checking. Change error output | |
1485 | in case of EINVAL. Treat mmapping /dev/zero like MAP_ANONYMOUS. | |
1486 | ||
c6dd43f2 CV |
1487 | Mon Jan 15 20:34:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1488 | ||
1489 | * mmap.cc: include <unistd.h>. Define some bit operations for | |
1490 | the new page map. | |
1491 | (mmap_record): Change type of base_address_ to caddr_t. | |
1492 | Add map_map_ member. Add several methods to manipulate map_map_. | |
1493 | (mmap_record::alloc_map): New method. | |
1494 | (mmap_record::free_map): Ditto. | |
1495 | (mmap_record::find_empty): Ditto. | |
1496 | (mmap_record::map_map): Ditto. | |
1497 | (mmap_record::unmap_map): Ditto. | |
1498 | (list::add_record): Change return type to `mmap_record *'. | |
1499 | Allocate page map. | |
1500 | (list::match): New method. | |
1501 | (mmap): Partly rewritten to take care for the new page map. Add some | |
1502 | parameter checking. | |
1503 | (munmap): Ditto. | |
1504 | ||
66097f06 CV |
1505 | Mon Jan 15 13:50:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1506 | ||
1507 | * heap.cc (heap_init): Fix extern declaration of getpagesize. | |
1508 | * syscalls.cc (getpagesize): Fix another typo. | |
1509 | ||
dc3651b6 CV |
1510 | Mon Jan 15 12:48:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1511 | ||
1512 | * syscalls.cc (getpagesize): Save pagesize in global variable to | |
1513 | avoid calling GetSystemInfo too often. | |
1514 | * heap.cc (getpagesize): Eliminate. | |
1515 | (heap_init): Use getpagesize function from syscalls.cc. | |
1516 | ||
4cf2c0e0 CV |
1517 | Mon Jan 15 11:56:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1518 | ||
1519 | * sysconf.cc (sysconf): return `getpagesize ()' on _SC_PAGESIZE | |
1520 | request to avoid implementing the same twice. | |
1521 | ||
a3ec080b CF |
1522 | Sun Jan 14 14:07:50 2001 Christopher Faylor <cgf@cygnus.com> |
1523 | ||
1524 | * syscalls.cc (_read): Use more lightweight method for determining if | |
1525 | read has been interrupted by a signal. | |
1526 | ||
c3d62298 CF |
1527 | Fri Jan 12 00:35:15 2001 Christopher Faylor <cgf@cygnus.com> |
1528 | ||
1529 | * debug.h: Add regparm attributes to some functions. | |
1530 | ||
1531 | * signal.cc (sigaction): Don't treat SIGCONT specially. | |
1532 | ||
6a4878cf CF |
1533 | * exceptions.cc (interrupt_setup): Save sa_flags of interrupted signal |
1534 | for later use. | |
c3d62298 CF |
1535 | (sig_handler): Default any stopping signal to SIGSTOP. |
1536 | (call_signal_handler): New function. | |
1537 | (sigdelayed0): New function. | |
6a4878cf CF |
1538 | * sigproc.cc (sigproc_init): Initialize SIGSTOP sigaction for special |
1539 | behavior. | |
c3d62298 CF |
1540 | * sigproc.h: Define call_signal_handler. |
1541 | * syscalls.cc (_read): Allow restartable signal behavior. | |
1542 | ||
c4efddf6 CV |
1543 | Thu Jan 11 13:17:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1544 | ||
1545 | * fhandler.h (fhandler_base): New method `fixup_mmap_after_fork'. | |
1546 | (fhandler_disk_file: Ditto. | |
1547 | (fhandler_dev_mem): Ditto. | |
1548 | * fhandler_mem.cc (fhandler_dev_mem::open): Set OBJ_INHERIT attribute | |
1549 | for device\physicalmemory handle. | |
1550 | (fhandler_dev_mem::mmap): Ditto. | |
6a4878cf CF |
1551 | * fhandler_mem.cc (fhandler_dev_mem::fixup_mmap_after_fork): New |
1552 | method. | |
1553 | * mmap.cc (mmap_record): Add private `fdesc_' member. Change | |
1554 | constructor accordingly. | |
c4efddf6 CV |
1555 | (get_fd): New method. |
1556 | (mmap): Use new mmap_record constructor. | |
1557 | (fhandler_base::fixup_mmap_after_fork): New method. | |
1558 | (fhandler_disk_file::fixup_mmap_after_fork): Ditto. | |
6a4878cf | 1559 | (fixup_mmaps_after_fork): Call `fixup_mmap_after_fork' of appropriate |
c4efddf6 CV |
1560 | fhandler class. |
1561 | ||
7416e1d2 CF |
1562 | Wed Jan 10 22:08:30 2001 Kazuhiro Fujieda <fujieda@jaist.ac.jp> |
1563 | ||
1564 | * sigproc.cc (wait_sig): Allow SIGCONT when stopped. | |
1565 | ||
55ae1dff CV |
1566 | Tue Jan 9 16:55:00 2001 Corinna Vinschen <corinna@vinschen.de> |
1567 | ||
1568 |