]> sourceware.org Git - newlib-cygwin.git/blame - winsup/cygwin/ChangeLog
merge from gcc
[newlib-cygwin.git] / winsup / cygwin / ChangeLog
CommitLineData
7b2ce663
CV
12003-02-27 Pierre Humblet <pierre.humblet@ieee.org>
2
3 * uinfo.cc (internal_getlogin): Only update user.groups.pgsid
4 if the call to set the primary group succeeds.
5
0e7a60fe
CF
62003-02-27 Christopher Faylor <cgf@redhat.com>
7
8 * cygthread::detach: Improve error message.
9
61a52599
CV
102003-02-26 Pierre Humblet <pierre.humblet@ieee.org>
11
12 * sec_helper.cc (get_sids_info): debug_print owner_sid and group_sid.
13
6b9a9ce6
CV
142003-02-25 Corinna Vinschen <corinna@vinschen.de>
15
16 * mmap.cc (mmap64): Fix returned address by taking the granularity
17 into account.
18
1ffc44aa
PH
192003-02-23 Pierre Humblet <pierre.humblet@ieee.org>
20
21 * syslog.cc (syslog): Do not unlock the file before closing it
22 and remove debug_printf about stream errors.
23
a066f364
CF
242003-02-22 Christopher Faylor <cgf@redhat.com>
25
26 * cygmalloc.h: Remove MORECORE_CANNOT_TRIM. It's not true.
27 # cygwin.din: Export mallinfo.
28 # malloc_wrapper.cc (mallinfo): New function.
29
878e60c5
CF
302003-02-22 Pierre Humblet <pierre.humblet@ieee.org>
31
32 * syslog.cc (syslog): Do not print the Windows pid. Print the Cygwin
33 pid as an unsigned decimal. On Win95 print a timestamp and attempt to
34 lock the file up to four times in 3 ms.
35
b1d1e50d
CV
362003-02-21 Corinna Vinschen <corinna@vinschen.de>
37
38 * fhandler_socket.cc (fhandler_socket::fhandler_socket): Fix compiler
39 warning.
40 (fhandler_socket::fstat): Simplify. Set st_uid/st_gid to effective
41 uid/gid of current process in case of open sockets.
42
cf762b08
CV
432003-02-21 Corinna Vinschen <corinna@vinschen.de>
44
45 * dtable.cc (dtable::build_fhandler_from_name): Set some fhandler
46 data on sockets to evaluate AF_LOCAL sockets correctly.
47 (dtable::build_fhandler): Set unit number on sockets.
48 * fhandler.h (fhandler_socket): Add unit number.
49 (fhandler_socket::get_unit): New method.
50 * fhandler_socket.cc (fhandler_socket::fhandler_socket): Set unit
51 number.
52 (fhandler_socket::fstat): Reorganize to return more Linux-like
53 values.
54 * net.cc: include ctype.h.
55 (fdsock): Set unit number when building fhandler.
56 * path.cc (path_conv::check): Set device type to FH_SOCKET if file
57 is a AF_UNIX socket.
58 (get_devn): Evaluate unit for virtual socket devices.
59 (win32_device_name): Set windows path for sockets to unix_path with
60 just backslashes to keep the different names.
61 * syscalls.cc (fstat64): Don't override st_ino, st_dev and st_rdev
62 for sockets.
63 (stat_worker): Ditto.
64
652003-02-21 Pierre Humblet <pierre.humblet@ieee.org>
66
67 * autoload.cc (AccessCheck): Add.
68 (DuplicateToken): Add.
69 * security.h (check_file_access): Declare.
70 * syscalls.cc (access): Convert path to Windows, check existence
71 and readonly attribute. Call check_file_access instead of acl_access.
72 * security.cc (check_file_access): Create.
73 * sec_acl (acl_access): Delete.
74
5cd82412
CF
752003-02-19 Christopher Faylor <cgf@redhat.com>
76
77 * fhandler.cc (fhandler_base::open): Move some filesystem specific
78 stuff.
79 (fhandler_disk_file::open): Accept some filesystem specific stuff.
80 * sigproc.cc (wait_for_sigthread): Become slightly more thread safe.
81 (sig_send): Don't assume that signal thread is ready.
82
892d8962
CV
832003-02-20 Corinna Vinschen <corinna@vinschen.de>
84
85 * wincap.h (wincap): Remove unnecessary definition of
86 supports_sparse_files.
87 * wincap.cc: Ditto.
88
518f5d49
CV
892003-02-20 Corinna Vinschen <corinna@vinschen.de>
90
91 * fhandler_disk_file.cc (fhandler_disk_file::opendir): Check descriptor
92 created by cygheap_fdnew constructor.
93 * fhandler_virtual.cc (fhandler_virtual::opendir): Ditto.
94 * fhandler_socket.cc (fhandler_socket::accept): Ditto and move
95 creation of file descriptor behind blocking OS call.
96 * net.cc (cygwin_socket): Ditto.
97 (cygwin_rcmd): Ditto.
98 (cygwin_rresvport): Ditto.
99 (cygwin_rexec): Ditto.
100 (socketpair): Ditto.
101
3a88cf1b
CV
1022003-02-20 Corinna Vinschen <corinna@vinschen.de>
103
104 * autoload.cc (GetCompressedFileSize): Add.
105 * fhandler_disk_file.cc (fhandler_disk_file::fstat_helper): Compute
106 st_blocks value from GetCompressedFileSize() if available.
107
79207923
CV
1082003-02-18 Vaclav Haisman <V.Haisman@sh.cvut.cz>
109
110 * wincap.h (wincaps::supports_sparse_files): New flag.
111 (wincapc::supports_sparse_files): New method.
112 * wincap.cc (wincap_unknown): Define value for the new flag.
113 (wincap_95): Ditto.
114 (wincap_95osr2): Ditto.
115 (wincap_98): Ditto.
116 (wincap_98se): Ditto.
117 (wincap_me): Ditto.
118 (wincap_nt3): Ditto.
119 (wincap_nt4): Ditto.
120 (wincap_nt4sp4): Ditto.
121 (wincap_2000): Ditto.
122 (wincap_xp): Ditto.
123 * path.h (path_conv::fs_flags): New method.
124 * fhandler_disk_file.cc: Include winioctl.h for DeviceIoControl.
125 (fhandler_disk_file::open): Set newly created and truncated files as
126 sparse on platforms that support it.
127
afe13e84
CV
1282003-02-17 Pierre Humblet <pierre.humblet@ieee.org>
129
130 * grp.cc (internal_getgroups): Handle properly tokens with
131 no groups. Fix bug introduced on 2003-02-04.
132
8fc16812
CF
1332003-02-16 Christopher Faylor <cgf@redhat.com>
134
135 * cygwin.din: Export all appropriate newlibc libm functions. Sort.
136 * include/cygwin/version.h: Bump API minor number.
137
f655eadf
CF
1382003-02-15 Christopher Faylor <cgf@redhat.com>
139
8fc16812 140 * cygwin.din: Export all appropriate newlib libc functions.
f655eadf
CF
141 * include/cygwin/version.h: Bump API minor number.
142
4d9ba012
CV
1432003-02-14 Jason Tishler <jason@tishler.net>
144
145 * mmap.cc (mprotect): Add missing break.
146
dff01e3a
CF
1472003-02-13 Christopher Faylor <cgf@redhat.com>
148
149 * exceptions.cc (try_to_debug): Don't reset priority when returning
150 from non-waitloop call.
d1d1797e
CF
151
1522003-02-13 Vaclav Haisman <V.Haisman@sh.cvut.cz>
153 Christopher Faylor <cgf@redhat.com>
154
155 * fhandler_console.cc (fhandler_console::write_normal): Use MessageBeep
156 for bell sound.
157 * autoload.cc (MessageBeep): Add.
158
97c61aeb
CF
1592003-02-13 Christopher Faylor <cgf@redhat.com>
160
161 * include/cygwin/types.h: Use correct ifdef guard for u_ definitions.
162
a200c081
CF
1632003-02-13 Christopher Faylor <cgf@redhat.com>
164
165 * environ.cc (environ_init): Use strechr.
166
2858de3a
CF
1672003-02-13 Christopher Faylor <cgf@redhat.com>
168
169 * include/cygwin/in.h (sockaddr_in): Fix typo.
170
75c8a70c
CF
1712003-02-12 Christopher Faylor <cgf@redhat.com>
172
173 * path.h (path_conv): Reorganize slightly.
174
939d19b0
CF
1752003-02-12 Christopher Faylor <cgf@redhat.com>
176
177 * fhandler_tty.cc (process_input): Add sanity check to ensure that
178 console typeahead is cleared on signal.
179
7a44ba05
CF
1802003-02-12 Christopher Faylor <cgf@redhat.com>
181
182 * spawn.cc (linebuf::~linebuf): Resurrect commented out (for
183 debugging?) code.
184
407b8df6
CF
1852003-02-10 Ralf Habacker <ralf.habacker@freenet.de>
186
187 * include/cygwin/in.h (in_attr_t): Define new type.
188 * include/arpa/inet.h (inet_addr): Change return type to in_addr_t.
189 (inet_lnaof): Ditto.
190 (inet_netof): Ditto.
191 (inet_network): Ditto.
192
1932003-02-10 Christopher Faylor <cgf@redhat.com>
194
195 * include/cygwin/types.h: Move many *_t typedefs here. Protect them
196 with ifdefs.
197 * fhandler_disk_file.cc (fhandler_disk_file::fstat): Change ntsec_atts to mode_t.
198 * security.cc (get_attribute_from_acl): Accept mode_t attribute.
199 (get_nt_attribute): Ditto.
200 (get_file_attribute): Ditto.
201 (get_nt_object_attribute): Ditto.
202 (get_object_attribute): Ditto.
203 * security.h: Reflect above changes.
204 * syscalls.cc (chown_worker): Change attrib to mode_t.
205
ad80bc42
CF
2062003-02-08 Christopher Faylor <cgf@redhat.com>
207
67c64e3b 208 * include/cygwin/version.h: Bump DLL minor number to 21.
ad80bc42
CF
209
2102003-02-07 Christopher Faylor <cgf@redhat.com>
211
212 * malloc.cc (DEFAULT_MMAP_THRESHOLD): Bump down to 16MB thanks to below
213 changes.
214
4136fdb1
CV
2152003-02-07 Corinna Vinschen <corinna@vinschen.de>
216
217 * mmap.cc (mmap_record::alloc_map): De-inline. Add offset and length
218 parameter. Only protect pages actually unused currently. Do job
219 of map_map() when initializing a map.
220 (mmap_record::map_map): Reduce functionality for the reuse case
221 of private anonymous mapping.
222 (mmap_record::fixup_map): Format change.
223 (list::add_record): Add offset and length parameter to call
224 mmap_record::alloc_map() correctly.
225 (mmap64): Rename `l' variable to `map_list'. Accomodate above changes.
226 (munmap): Rename `l' variable to `map_list'.
227 (msync): Ditto.
228 (fhandler_disk_file::mmap): Streamline code.
229 (mprotect): Ditto.
230 (fixup_mmaps_after_fork): Rename `l' variable to `map_list'.
231
49b84ce4
CF
2322003-02-07 Vaclav Haisman <V.Haisman@sh.cvut.cz>
233 Christopher Faylor <cgf@redhat.com>
234
235 * exceptions.cc (try_to_debug): Set priority of current thread rather
236 than the main thread. Make busy waiting loop less busy. Restore
237 priority when function returns.
238
bc5b63ed
CF
2392003-02-07 Christopher Faylor <cgf@redhat.com>
240
241 * malloc.cc (DEFAULT_MMAP_THRESHOLD): Set high to avoid mmaps.
242
2432003-02-07 Christopher Faylor <cgf@redhat.com>
244
245 * pipe.cc (fhandler_pipe::close): Avoid extraneous this->.
246
1de8d164
CF
2472003-02-06 Christopher Faylor <cgf@redhat.com>
248
249 * heap.cc (heap_init): Remove debugging code.
250
565e8015
CV
2512003-02-06 Pierre Humblet <pierre.humblet@ieee.org>
252
253 * security.h: Introduce names UNKNOWN_UID and UNKNOWN_GID and delete
1de8d164 254 declaration of is_grp_member.
565e8015
CV
255 * uinfo.cc (internal_getlogin): Use UNKNOWN_GID.
256 * passwd.cc (pwdgrp::read_passwd): Use UNKNOWN_UID.
257 * grp.cc (pwdgrp::read_group): Change group name to provide better
258 feedback.
259 (getgrgid): Use gid16togid32.
260 * sec_helper.cc (is_grp_member): Delete.
261
d238c1b4
CF
2622003-02-05 Christopher Faylor <cgf@redhat.com>
263
264 * path.cc: Change 'to_posix_p' to 'to_posix' throughout.
265 (conv_path_list_buf_size): Accommodate relative paths.
266
b7f52fe8
CF
2672003-02-05 Christopher Faylor <cgf@redhat.com>
268
269 * path.cc (etc::dir_changed): Fix debug printf.
270
62cd433e
CV
2712003-02-05 Corinna Vinschen <corinna@vinschen.de>
272
273 * sec_acl.cc (setacl): Move all permission settings to beginning of
274 loop. Set default rights to same values as in alloc_sd(). Set DELETE
275 for owner and default owner only if S_IWOTH is given.
276
2772003-02-05 Pierre Humblet <pierre.humblet@ieee.org>
278
279 * sec_acl.cc: Change all __aclent16_t to __aclent32_t except in
280 wrapper function definitions. Replace call to the aclXYZ functions by
281 calls aclXYZ32.
282 (searchace): Change type of third argument to __uid32_t and use
283 ILLEGAL_UID instead of -1;
284 (setacl): Remove some initializations. Only give STANDARD_RIGHTS_WRITE
285 for S_IWOTH. Replace -1 by ILLEGAL_UID.
286 (getacl): Change type of owner_sid, group_sid and ace_sid to cygpsid.
287 In last else clause, suppress second call to ace_sid.get_id and use
288 TRUE in first call. Replace EqualSid by ==.
289 (acl_access): Call internal_getgroups in USER and GROUP cases.
290 (acecmp: Define static.
291 (acl32): Create from 16 bit type.
292 (facl32): Ditto.
293 (lacl32): Ditto.
294 (aclcheck32): Ditto.
295 (aclsort32): Ditto.
296 (acltomode32): Ditto.
297 (aclfrommode32): Ditto.
298 (acltopbits32): Ditto.
299 (aclfrompbits32): Ditto.
300 (acltotext32): Ditto.
301 (aclfromtext32): Ditto, and use strechr.
302 (acl16to32): Create.
303 (acl): Make it a wrapper function.
304 (facl): Ditto.
305 (lacl): Ditto.
306 (aclcheck): Ditto.
307 (aclsort): Ditto.
308 (acltomode): Ditto.
309 (aclfrommode): Ditto.
310 (acltopbits): Ditto.
311 (aclfrompbits): Ditto.
312 (acltotext): Ditto.
313 (aclfromtext): Ditto.
314 * security.cc (write_sd): Call set_process_privilege and check
315 ownership.
316 (alloc_sd): Remove call to set_process_privilege and the owner check.
317
cadd065b
CF
3182003-02-05 Christopher Faylor <cgf@redhat.com>
319
320 * include/sys/cygwin.h: Use C-style comments.
321
0c8455c3
CV
3222003-02-05 Pierre Humblet <pierre.humblet@ieee.org>
323
324 * sec_helper.cc (get_sids_info): New function.
325 * security.cc (extract_nt_dom_user): Simplify with strechr.
326 (get_user_groups): Initialize glen to MAX_SID_LEN.
327 (get_user_local_groups): Ditto.
328 (get_attribute_from_acl): Define ace_sid as cygpsid.
329 (get_nt_attribute): Define owner_sid and group_sid as cygpsid.
330 Call get_sids_info instead of cygsid.get_{u,g}id and is_grp_member.
331 (get_nt_object_attribute): Ditto.
332 (alloc_sd): Define ace_sid as cygpsid.
333
5ae9331a
TP
3342003-02-04 Thomas Pfaff <tpfaff@gmx.net>
335
336 * syscalls.cc (struct system_cleanup_args): New struct.
337 (system_cleanup): New function.
338 (system): Use pthread_cleanup_push and _pop to save and restore
339 signal handlers and sigprocmask.
340
3dbafd87
CV
3412003-02-04 Corinna Vinschen <corinna@vinschen.de>
342
343 * path.cc (symlink): Create security attributes so that only the
344 user can modify the symlink.
345 * security.cc (set_security_attribute): Remove symlink special
346 handling.
347
0daf2561
CV
3482003-02-04 Pierre Humblet <pierre.humblet@ieee.org>
349
350 * grp.cc (internal_getgroups): Do not return without closing
351 the process handle.
352
4a21c2d5
CV
3532003-02-04 Pierre Humblet <pierre.humblet@ieee.org>
354
355 * security.h (class cygpsid): New class.
356 (class cygsid): Use cygpsid as base. Remove members psid, get_id,
357 get_uid, get_gid, string, debug_printf and the == and != operators.
358 (cygsidlist::clear_supp): Only do work if setgroups has been called.
359 * sec_helper.cc: Define sid_auth NO_COPY.
360 (cygpsid::operator==): New operator.
361 (cygpsid::get_id): New function.
362 (cygpsid::string): New function.
363 (cygsid::string): Delete.
364 (cygsid::get_id): Delete.
365 * pwdgrp.h: Change arguments of internal_getpwsid,
366 internal_getgrsid and internal_getgroups to cygpsid.
367 * passwd.cc (internal_getpwsid): Change argument from cygsid to cygpsid.
d238c1b4 368 * grp.cc (internal_getgrsid): Ditto.
4a21c2d5
CV
369 (internal_getgroups): Ditto.
370
335556d5
CF
3712003-02-03 Christopher Faylor <cgf@redhat.com>
372
373 Eliminate most unneeded this-> pointers throughout.
374
153e83c6
CV
3752003-02-03 Pierre Humblet <pierre.humblet@ieee.org>
376
377 * security.h: Add third argument to set_process_privilege.
378 * autoload.cc: Add OpenThreadToken.
379 * sec_helper.cc (set_process_privilege): Add and use use_thread
380 argument.
381 * security.cc (alloc_sd): Modify call to set_process_privilege.
382 Remember the result in each process. If failed and file owner is not
383 the user, fail.
384
f0f3ea68
CV
3852003-02-03 Corinna Vinschen <corinna@vinschen.de>
386
387 * fhandler_socket.cc (fhandler_socket::recvfrom): Return buffer
388 length and don't set errno in case of WSAEMSGSIZE error.
389 (fhandler_socket::recvmsg): Ditto.
390
6688a061
CF
3912003-02-01 Christopher Faylor <cgf@redhat.com>
392
393 * grp.cc (getgrent32): Only refresh group entries when at beginning.
394 (internal_getgrsid): Only refresh if uninitialized.
395 (internal_getgrent): Ditto.
396 * passwd.cc (getpwent): Only refresh passwd entries when at beginning.
397 (pwdgrp::read_passwd): linebuf *cannot* be NO_COPY.
398 (internal_getpwsid): Only refresh if uninitialized.
399 (getpass): No need to refresh passwd data here.
400 * pwdgrp.h (refresh): Eliminate default.
401
a5a93a62
CF
4022003-01-31 Christopher Faylor <cgf@redhat.com>
403
404 * dlfcn.cc (dlerror): Only report load errors once per error.
405
b0a82a85
CF
4062003-01-31 Christopher Faylor <cgf@redhat.com>
407
408 * fhandler_serial.cc (fhandler_serial::open): Avoid extraneous setting
409 of res.
410
411 * termios.cc (tcsetattr): Correctly record errno after tcsetattr call.
412
4132003-01-31 Troy Curtiss <troyc@usa.net>
414
415 * fhandler_serial.cc (fhandler_serial::tcsetattr): Add error-checking
416 so that if any Win32 SetComm*() calls fail, errno gets set to EINVAL
417 and tcsetattr() returns -1. Catch invalid bitrates, mostly. If baud
418 rate setting is B0, just drop DTR and leave Win32 DCB bitrate as-is
419 since 0 is not a valid Win32 setting.
420 (fhandler_serial::tcgetattr): If DTR is low, populate the bitrate as
421 B0, otherwise get it from the DCB.
422
949c3da1
CF
4232003-01-31 Christopher Faylor <cgf@redhat.com>
424
425 * passwd.cc (pwdgrp::read_passwd): linebuf *must* be static (from
426 Pierre Humblet).
427 * pwdgrp.h (pwdgrp::refresh): Avoid calling read function if we already
428 have lock since that means we are in the process of reading the file.
429
485d85bf
CF
4302003-01-31 Jason Tishler <jason@tishler.net>
431
432 * shared.cc (shared_info::heap_chunk_size): Use correct variable when
433 reading HKLM.
434
704ce461
CF
4352003-01-30 Christopher Faylor <cgf@redhat.com>
436
437 * fhandler_registry.cc (fhandler_registry::exists): Fix off-by-one
438 error when inspecting path.
439
ba6e1083
CF
4402003-01-29 Christopher Faylor <cgf@redhat.com>
441
442 * lib/getopt.c: Allow environment variable control of POSIXLY_INCORRECT
443 behavior.
444
4452003-01-28 Corinna Vinschen <corinna@vinschen.de>
01e3c897
CV
446
447 * fhandler_socket.cc (fhandler_socket::accept): On successful execution
448 set connection state of returned socket to CONNECTED.
449
dfb366da
CF
4502003-01-27 Christopher Faylor <cgf@redhat.com>
451
452 * passwd.cc (pwdgrp::parse_passwd): Be more unforgiving about
453 non-numeric fields.
454
03dba1de
CF
4552003-01-26 Christopher Faylor <cgf@redhat.com>
456
457 * uinfo.cc (pwdgrp::next_num): Remove check for NULL since it is no
458 longer a valid return from next_str.
459 (pwdgrp::add_line): Duh. Revert to use strchr.
460
fea48988
CF
4612003-01-26 Christopher Faylor <cgf@redhat.com>
462
ca6018a0 463 * string.h (strechr): New function.
fea48988
CF
464 * uinfo.cc (pwdgrp::next_str): Search only for input char in string.
465 Return EOS on failure. Don't check for NULL since it shouldn't be
466 possible.
467 (pwdgrp::add_line): Revert to replacing '\n' in input line with '\0'.
468 (pwdgrp::next_num): Pass explicit separator character to next_str.
469 * grp.cc (pwdgrp::parse_group): Ditto.
470 * passwd.cc (pwdgrp::parse_passwd): Ditto. Revamp test for garbage
471 input.
472 * pwdgrp.h (pwdgrp::next_str): Don't use default parameter.
473
9a751621
CF
4742003-01-26 Christopher Faylor <cgf@redhat.com>
475
476 * uinfo.cc (pwdgrp::load): Regularize strace output. Add warning for
477 CreateFile failure.
478
c9133395
CF
4792003-01-26 Christopher Faylor <cgf@redhat.com>
480
bdbd7fb6
CF
481 * passwd.cc (pwdgrp::parse_passwd): Eliminate use of memset. The
482 structure should always be completely filled out.
483 * grp.cc (pwdgrp::parse_group): Ditto.
484
4852003-01-26 Christopher Faylor <cgf@redhat.com>
486
487 * grp.cc (pwdgrp::parse_group): Fix off-by-one problem in allocating
c9133395 488 gr_mem.
65037056
CF
489
4902003-01-26 Christopher Faylor <cgf@redhat.com>
491
492 * include/sys/strace.h (paranoid_printf): Define as not being part of
493 "all" output.
494
4952003-01-25 Christopher Faylor <cgf@redhat.com>
496
497 * pwdgrp.h (pwdgrp::next_num): Rename from next_int. Returns
498 true/false if parse operation succeeded.
499 (pwdgrp::reparse): Remove.
500 (pwdgrp::raw_ptr): New function. Returns pointer in line.
501 (pwdgrp::next_num): New functions for parsing other than unsigned long.
502 * grp.cc (pwdgrp::parse_group): Reinstate previous parsing behavior.
503 Don't fill in fields with NULL and assign empty gr_mem to known pointer
504 rather than doing a pointless calloc. Streamline gr_mem parsing.
505 Don't increment curr_lines here.
506 * passwd.cc (pwdgrp::parse_passwd): Use new behavior of next_num.
507 Don't increment curr_lines here.
508 * uinfo.cc (pwdgrp::next_str): Keep returning EOL if out of data.
509 (pwdgrp::reparse): Remove.
510 (pwdgrp::next_num): Rename from next_int. Return bool indicating
511 success of parse, argument returns value parsed.
512 (pwdgrp::add_line): Increment curr_lines here on successful parse.
513 (pwdgrp::load): (from Pierre Humblet) Don't return status. Just report
514 it here.
515
a53ddfe6
CF
5162003-01-25 Christopher Faylor <cgf@redhat.com>
517
518 * pwdgrp.cc (pwdgrp::reparse): Declare.
519 * uinfo.cc (pwdgrp::reparse): Define.
c9b99d0d 520 * grp.cc (pwdgrp::parse_group): Use reparse.
a53ddfe6 521
4f7e12dd
CV
5222003-01-25 Pierre Humblet <pierre.humblet@ieee.org>
523
524 * syscalls.cc (seteuid32): On Win95 get the pw entry. If it exists
525 update the euid and call cygheap->user.set_name. Remove special
526 handling of ILLEGAL_UID.
ba6e1083 527 (setgid32): Add a debug_printf. On Win95, always set the egid.
4f7e12dd
CV
528 Remove special handling of ILLEGAL_GID. Do not compare gid and gr_gid.
529 * child_info.h (class cygheap_exec_info): Remove uid.
530 * spawn.cc (spawn_guts): Do not set ciresrv.moreinfo->uid.
531 * dcrto.cc (dll_crt0_1): Always call uinfo_init.
532 * uinfo.cc (uinfo_init): Reorganize and close handle if needed.
533 (cygheap_user::ontherange): Do not call internal_getpwnam if pw is NULL.
534
45dbfc26
CF
5352003-01-24 Christopher Faylor <cgf@redhat.com>
536
537 * fhandler_console.cc (fhandler_console::send_winch_maybe): Reset
538 scroll region if size changes.
539
7d33eefa
CV
5402003-01-24 Pierre Humblet <pierre.humblet@ieee.org>
541 Jason Tishler <jason@tishler.net>
542
543 * cygwin.din: Export setreuid32, setreuid, setregid32, setregid.
544 * syscalls.cc (setreuid32): New function.
545 (setreuid): Ditto.
546 (setregid32): Ditto.
547 (setregid): Ditto.
548 * include/cygwin/version.h: Bump API minor number.
549
ac413374 5502003-01-23 Christopher Faylor <cgf@redhat.com>
69fae986 551
ac413374 552 * pwdrp.h (pwdgrp::refresh): Lock entire test prior to reading.
2037688a 553
ac413374 5542003-01-23 Christopher Faylor <cgf@redhat.com>
09a88426
CF
555
556 * grp.cc (pwdgrp::parse_group): Eliminate arg and use class member
557 instead. Use next_str and next_int to parse arguments.
558 * passwd.cc (pwdgrp::parse_passwd): Ditto.
559 (grab_string): Eliminate.
560 (grab_int): Ditto.
561 * pwdgrp.h (pwdgrp::parse): Eliminate input arg.
562 (pwdgrp::parse_passwd): Reflect above change.
563 (pwdgrp::parse_group): Reflect above change.
564 (pwdgrp::next_str): New function.
565 (pwdgrp::next_int): Ditto.
566 (pwdgrp::gets): Eliminate.
567 * uinfo.cc (pwdgrp::next_str): New function.
568 (pwdgrp::next_int): Ditto.
569 (pwdgrp::add_line): Subsume gets.
570 (pwdgrp::gets): Eliminate.
571 (pwdgrp::load): Just call add_line to parse input buffer.
572
ac413374
CF
5732003-01-22 Thomas Pfaff <tpfaff@gmx.net>
574
575 * include/pthread.h (PTHREAD_MUTEX_RECURSIVE): Revert changes from
576 2003-01-09 mutex patch.
577 (PTHREAD_MUTEX_ERRORCHECK): Ditto.
578
5792003-01-22 Corinna Vinschen <corinna@vinschen.de>
580
581 * cygrun.c: Move from here to ../testsuite.
582 * Makefile.in: Remove cygrun.exe dependencies.
583
5842003-01-21 Jason Tishler <jason@tishler.net>
585
586 * cygwin.din: Export nanosleep().
587 * signal.cc (nanosleep): New function.
588 (sleep): Move old functionality to nanosleep(). Call nanosleep().
589 (usleep): Remove old functionality. Call nanosleep().
590 * include/cygwin/version.h: Bump API minor number.
591
57394495
CF
5922003-01-21 Christopher Faylor <cgf@redhat.com>
593
594 * grp.cc: Call gr.refresh() rather than doing isunitialized tests
595 throughout.
596 (gr): Use constructor (sigh).
597 (pwdgrp::parse_group): Rename from parse_grp.
598 (pwdgrp::read_group): Rename from read_etc_group. Just call gr.load
599 with a single argument.
600 * passwd.cc: Call pr.refresh() rather than doing isunitialized tests
601 throughout.
602 (pr): Use constructor (sigh).
603 (pwdgrp::parse_passwd): Rename from "parse_pwd".
604 (pwdgrp::read_passwd): Rename from read_etc_passwd. Just call pr.load
605 with a single argument.
606 * pwdgrp.h (pwdgrp_state): Eliminate.
607 (pwdgrp): Reflect above renamings.
608 (pwdgrp::etc_ix): Rename from pwd_ix.
609 (pwdgrp::read): New element.
610 (pwdgrp::lock): New element.
611 (pwdgrp::refresh): New function.
612 (pwdgrp::load): Eliminate variations which take buffer arguments.
613 (pwdgrp::pwdgrp): New constructors. Initialize mutex here.
614 * uinfo.cc (pwdgrp::load): Accommodate pwd_ix -> etc_ix renaming.
615 (pwdgrp::load): Set initialized state to true rather than setting state
616 to loaded.
617
984864e9
CF
6182003-01-21 Christopher Faylor <cgf@redhat.com>
619
89f7e8d1 620 * include/cygwin/version.h: Bump DLL minor number.
984864e9 621
d8cde3a3
CF
6222003-01-21 Pierre Humblet <pierre.humblet@ieee.org>
623
624 * path.h (etc::change_possible): Revert the type to bool.
625 (etc::set_last_modified): Remove obsolete function.
626 * path.cc (etc::change_possible): Revert type to bool.
627 (etc::test_file_change): Do not test for negative values of
628 change_possible and do not set it to -res.
629 (etc::dir_changed): When the handle is NULL, call memset instead of
09a88426
CF
630 test_file_changed. When the handle is invalid, return true. Detect
631 filename change in /etc.
d8cde3a3 632 (etc::file_changed): Remove unneeded check for !fn[n].
33de631b 633 * uinfo.cc (pwdgrp::load): Eliminate spurious setting of fh to NULL.
b99b804b 634 * pwdgrp.h (pwdgrp::operator =): Eliminate.
d8cde3a3 635
7905c4f1
CF
6362003-01-19 Christopher Faylor <cgf@redhat.com>
637
638 * pwdgrp.h (etc): Move to path.h.
639 (pwdgrp::max_lines): New field.
640 (pwdgrp::curr_lines): New field.
641 (pwdgrp::pwdgrp_buf): Ditto.
642 (pwdgrp_buf_elem_size): Ditto.
643 (pwdgrp_parse): Ditto.
644 (pwdgrp::gets): Just declare here.
645 (pwdgrp::load): Ditto. Just take one argument.
646 (pwdgrp::load): Define overloaded function accepting passwd buf.
647 (pwdgrp::load): Define overloaded function accepting group buf.
648 * grp.cc: Use pwdgrp elements rather than standalone static variables
649 throughout.
650 (curr_lines): Eliminate.
651 (max_lines): Ditto.
652 (add_grp_line): Ditto.
653 (parse_grp): Define as returning boolean. Accept void * arg and line
654 count. Coerce first argument into __group32 buf reference. Increment
655 curr_line as appropriate.
656 (read_etc_group): Pass pwdgrp buffer to gr.load.
657 * passwd.cc: Use pwdgrp elements rather than standalone static variables
658 throughout.
659 (curr_lines): Eliminate.
660 (max_lines): Ditto.
661 (add_grp_line): Ditto.
662 (parse_passwd): Define as returning boolean. Accept void * arg and line
663 count. Coerce first argument into passwd buf reference. Increment
664 curr_line as appropriate.
665 (read_etc_group): Pass pwdgrp buffer to pr.load.
666 * path.cc (etc::fn): Extend buffer size to allow index by 1 rather than
667 zero.
668 (etc::last_modified): Ditto.
669 (etc::change_possible): Ditto. Renamed from sawchange. Change to
670 signed char since elements are now tri-state.
671 (etc::init): Assume "handle" is 1 based rather than 0.
672 (etc::test_file_change): New function. Sets change_possible based on
673 file date comparison.
674 (etc::dir_changed): Check file states immediately after changed_h is
675 initialized to avoid a race.
676 (etc::file_changed): Use test_file_change to detect if file needs to be
677 updated.
678 * path.h (etc): Move class here from pwdgrp.h.
7905c4f1
CF
679 * uinfo.cc: Move etc:: functions to path.cc. Move pwdgrp functions
680 here.
681 (pwdgrp::gets): Eliminate buf checks. Just check eptr and set lptr.
682 (pwdgrp::add_line): New function.
683 (pwdgrp::load): Call generic add_line function which will call correct
684 parser.
685
4c6a3e50
CF
6862003-01-17 Christopher Faylor <cgf@redhat.com>
687
688 * cygheap.cc: Change most 'int's to 'unsigned's.
689 (_cmalloc): Only check for size of malloced region when calculating
97d2bc79 690 bucket. Add overhead when performing the sbrk. Previous change broke
4c6a3e50
CF
691 _crealloc.
692
e9152439
CF
6932003-01-17 Christopher Faylor <cgf@redhat.com>
694
695 * dcrt0.cc (initialize_env): Use colon for CYGWIN_DEBUG separator.
696 * grp.cc: Change most statics to NO_COPY throughout.
697 * passwd.cc: Ditto.
698
6992003-01-17 Christopher Faylor <cgf@redhat.com>
700
701 * pwdgrp.h: Change some BOOLs to bools.
702 (pwdgrp::pwdgrp): Remove unneeded constructor.
703 * passwd.cc: Change BOOL to bool throughout.
704
afa378e7
CV
7052003-01-17 Corinna Vinschen <corinna@vinschen.de>
706
707 * cygwin.din: Add strerror_r.
708 * include/cygwin/version.h: Bump API minor number.
709
1de6f431
CF
7102003-01-17 Christopher Faylor <cgf@redhat.com>
711
712 * uinfo.cc (etc::dir_changed): Don't print a warning if can't open
713 /etc, unless debugging.
714
d8cde3a3 7152003-01-17 Pierre Humblet <pierre.humblet@ieee.org>
14ea5029
CF
716
717 * grp.cc (read_etc_group): On NT, add a line for gid = -1. Change name
718 "unknown" to "mkgroup".
719 (internal_getgrgid): Do not return default in nontsec case.
720 (internal_getgroups): Add argument srchsid and look for it in groups if
721 not NULL.
722 * passwd.cc (read_etc_passwd): On NT, add a line for uid = -1. Use
723 same default uid for Win95 and NT. Call cygheap_user::ontherange to
724 initialize HOME.
725
14ea5029
CF
7262003-01-16 Christopher Faylor <cgf@redhat.com>
727
728 * cygheap.cc (init_cygheap::etc_changed): Move to uinfo.cc.
729 * cygheap.h (init_cygheap::etc_changed_h): Remove.
730 (init_cygheap::etc_changed): Ditto.
731 * grp.cc (group_state): Remove. Use gr instead throughout.
732 (gr): Define as class pwdgrp.
733 (read_etc_group): Remove gr definition. Remove calls to
734 set_last_modified and close. Pass add_grp to gr.load to load file.
735 * passwd.cc (passwd_state): Remove. Use pr instead, throughout.
736 (pr): Define as class pwdgrp.
737 (read_etc_passwd): Remove pr definition. Remove calls to
738 set_last_modified and close. Pass add_pwd_line to pr.load to load
739 file.
740 * pwdgrp.h (etc): New helper class for pwdgrp.
741 (pwdgrp): Combine pwdgrp_check and pwdgrp_read into one class. Remove
742 file_w32 and last_modified fields.
743 (pwdgrp::set_last_modified): Remove.
744 (pwdgrp::isinitializing): Remove FindFirstFile stuff. Move to
745 etc::file_changed.
746 (pwdgrp::load): Rename from 'open'. Call etc::init to initialize etc
747 scanning. Close file handle after reading buffer into memory. Parse
748 buffer by calling second argument.
749 (pwdgrp::gets): Reorganize slightly to rely on eptr starting at
5304bcdf 750 beginning of buffer.
14ea5029
CF
751 (pwdgrp::close): Remove.
752 * uinfo.cc (etc::dir_changed): New function.
753 (etc::init): Ditto.
754 (etc::file_changed): Ditto.
755 (etc::set_last_modified): Ditto.
756
41429bc9
CV
7572003-01-16 Jason Tishler <jason@tishler.net>
758
759 * mmap.cc (fixup_mmaps_after_fork): Add ERROR_NOACCESS to the list of
760 ReadProcessMemory() error codes that trigger a retry with temporary
761 PAGE_READONLY access. Note that this can occur on NT 4.0.
762
18813254
CF
7632003-01-15 Christopher Faylor <cgf@redhat.com>
764
765 * path.cc (normalize_posix_path): Convert win32 path separators to
766 slashes when full path is specified.
767
77cb0c56
CF
7682003-01-15 Pierre Humblet <pierre.humblet@ieee.org>
769
770 * cmalloc.cc (_cmalloc): Fix memory leak.
771
ce542f78
CV
7722003-01-15 Corinna Vinschen <corinna@vinschen.de>
773
774 * autoload.cc: Fix copyright date.
775 * fhandler_dsp.cc: Ditto.
776 * mmap.cc: Ditto.
777 * net.cc: Ditto.
778 * ntdll.h: Ditto.
779 * signal.cc: Ditto.
780 * syscalls.cc: Ditto.
781 * uname.cc: Ditto.
782 * wait.cc: Ditto.
783
15996b6f
CV
7842003-01-14 Corinna Vinschen <corinna@vinschen.de>
785
786 * mmap.cc (fixup_mmaps_after_fork): Copy protection to child process.
787 Change ambiguous debug output.
788
857b65dd
CV
7892003-01-14 Corinna Vinschen <corinna@vinschen.de>
790
791 * mmap.cc (mmap_record::access): Change argument type to caddr_t
792 for strictness.
793 (mprotect): Protect against calling VirtualProtect() for shared
794 pages on 9x/Me.
795 (fixup_mmaps_after_fork): If ReadProcessMemory() fails, try to
796 change protection of parent page to PAGE_READONLY, then try again.
797 Revert protection afterwards.
798
e14328f4
TP
7992003-01-14 Thomas Pfaff <tpfaff@gmx.net>
800
801 * syscalls.cc (system): Add pthread_testcancel call.
802 * thread.cc: Update list of cancellation points.
803
4a3584c8
TP
8042003-01-14 Thomas Pfaff <tpfaff@gmx.net>
805
806 * wait.cc: Include thread.h
807 (wait4): Add pthread_testcancel call.
808 Wait for child process and cancellation event.
809 * thread.cc: Update list of cancellation points.
810
7ec66a2c
TP
8112003-01-14 Thomas Pfaff <tpfaff@gmx.net>
812
813 * signal.cc (sleep): Add pthread_testcancel call.
814 Wait for signal and cancellation event.
815 (usleep): Ditto.
816
8172003-01-14 Thomas Pfaff <tpfaff@gmx.net>
3457ce4d
TP
818
819 * exceptions.cc (handle_sigsuspend): Add pthread_testcancel call.
820 Wait for signal and cancellation event.
821 * thread.cc: Update list of cancellation points.
822
2673d5f2
CF
8232003-01-14 David Huang <davehzhr@hotmail.com>
824
825 * fhandler_dsp.cc (fhandler_dsp::ioctl): Add limited support for
826 SNDCTL_DSP_GETFMTS.
827
9f0d3f37
CF
8282003-01-12 Christopher Faylor <cgf@redhat.com>
829
830 * ntdll.h: Fix typo.
831
7f129d87
CV
8322003-01-12 Corinna Vinschen <corinna@vinschen.de>
833
834 * uname.cc (uname): Use cygwin_gethostname() to retrieve hostname.
835
ab2dbccc
CV
8362003-01-12 Pierre Humblet <pierre.humblet@ieee.org>
837
838 * sec_acl.cc (search_ace): Use id == -1, instead of < 0, as wildcard.
839 (setacl): Start the search for a matching default at the next entry.
840 Invalidate the type of merged entries instead of clearing it.
841 Use well_known_creator for default owner and owning group and do
842 not try to merge non-default and default entries in these cases.
843 (getacl): Recognize well_known_creator for default owner and group.
844 (acl_worker): Improve errno settings and streamline the nontsec case.
845 * security.cc (write_sd): Remove the call to set_process_privilege.
846 (alloc_sd): If the owner changes, call set_process_privilege and return
847 immediately on failure. Change inheritance rules: on new directories add
848 inherit only allow ACEs for creator_owner, creator_group and everyone.
849 Preserve all inheritances through chmod and chown calls. Introduce
850 isownergroup to implement the uid == gid case, to keep the inheritance
851 code simple. Do not initialize owner_sid and group_sid and stop using
852 the variable psd.
853
68115c74
CF
8542003-01-10 Christopher Faylor <cgf@redhat.com>
855
856 * net.cc: Use gethostname define from winsock2.h.
857
e3abf986
CF
8582003-01-10 Christopher Faylor <cgf@redhat.com>
859
860 * path.cc: Unrevert below reversion except for
861 mount_info::conv_to_posix_path part.
862
df2caa88
CV
8632003-01-10 Corinna Vinschen <corinna@vinschen.de>
864
865 * path.cc: Revert patch from 2003-01-09 to normalize a windows path
866 rather than converting to posix.
867
dc8d11f5
CV
8682003-01-10 Corinna Vinschen <corinna@vinschen.de>
869
870 * autoload.cc (gethostname): Make call optional, return 1 if function
871 can't get loaded.
872 * net.cc (cygwin_gethostname): Call GetComputerName if return value
873 of gethostname is non-zero.
874
70d61f30
CV
8752003-01-10 Charles Wilson <cwilson@ece.gatech.edu>
876
8735f49f 877 * cygwin.din: Add asprintf and vasprintf, as well as the reentrant
70d61f30 878 versions and underscore variants.
8735f49f 879 * include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR.
70d61f30 880
a7711767
CV
8812003-01-10 Corinna Vinschen <corinna@vinschen.de>
882
883 * net.cc (cygwin_gethostname): Fix call to wsock function gethostname.
884
d5223b2b
CF
8852003-01-09 Christopher Faylor <cgf@redhat.com>
886
887 * cygthread.cc (cygthread::cygthread): Be more noisy about odd
888 condition.
889 * miscfuncs.cc (low_priority_sleep): Sleep in regular priority if
890 that's what we're currently running at.
891
65f207e8
TP
8922003-01-09 Thomas Pfaff <tpfaff@gmx.net>
893
894 * include/semaphore.h: Modify typedef for sem_t.
895 * include/cygwin/types.h: Modify typedefs for pthread_t,
896 pthread_mutex_t, pthread_key_t, pthread_attr_t,
897 pthread_mutexattr_t, pthread_condattr_t, pthread_cond_t,
898 pthread_rwlock_t and pthread_rwlockattr_t.
899
09cbb9d6
TP
9002003-01-09 Thomas Pfaff <tpfaff@gmx.net>
901
902 * thread.h (WAIT_CANCELED): New define.
903 (pthread::cancelable_wait): New static method.
904 * thread.cc (pthread::cancelable_wait): Implement.
905 (semaphore::Wait): Wait on semaphore and thread cancellation.
906 (pthread::join): Wait on joined thread and thread cancellation.
907 (semaphore::wait): Add testcancel to check for thread
908 cancellation even if the semaphore is available.
909
5d68d1de
TP
9102003-01-09 Thomas Pfaff <tpfaff@gmx.net>
911
912 * include/pthread.h: Add define for errorchecking mutexes.
913 Change default mutex type.
914 * thread.cc (pthread_cond::TimedWait): Update mutex unlock
915 calls.
916 (pthread_mutex::pthread_mutex): New implement.
917 (pthread_mutex::~pthread_mutex): Ditto.
918 (pthread_mutex::Lock): Ditto.
919 (pthread_mutex::TryLock): Ditto.
920 (pthread_mutex::UnLock): Ditto.
921 (pthread_mutex::Destroy): Implement new method.
922 (pthread_mutex::SetOwner): Ditto.
923 (pthread_mutex::LockRecursive): Ditto.
924 (pthread_mutex::fixup_after_fork): Restore locking state after
925 fork.
926 (__pthread_mutex_lock): Return pthread_mutex::Lock errorcode.
927 (__pthread_mutex_trylock): Return pthread_mutex::TryLock
928 errorcode.
929 (__pthread_mutex_unlock): Return pthread_mutex::UnLock
930 errorcode.
931 (__pthread_mutex_destroy): Call pthread_mutex::Destroy to
3457ce4d 932 destroy mutex.
5d68d1de
TP
933 (__pthread_mutexattr_settype): Allow errorchecking and recursive
934 types.
935 * thread.h (MUTEX_LOCK_COUNTER_INITIAL): New define.
936 (pthread_mutex::criticalsection): Remove.
937 (pthread_mutex::lock_counter): New member.
938 (pthread_mutex::recursion_counter): Ditto.
939 (pthread_mutex::owner): Ditto.
940 (pthread_mutex::type): Ditto.
941 (pthread_mutex::Destroy): New method.
942 (pthread_mutex::SetOwner): Ditto.
943 (pthread_mutex::LockRecursive): Ditto.
944
ed9fe455
TP
9452003-01-09 Thomas Pfaff <tpfaff@gmx.net>
946
947 * pthread.cc (pthread_cond_init): Use new pthread_cond::init.
948 * thread.cc: Some white spaces cleanups.
949 Change __pthread_cond_init to pthread_cond::init throughout.
950 (nativeMutex): Move class methods outside pthread_mutex.
951 (MTinterface::Init): Initialize pthread_cond init lock.
952 (pthread_cond::condInitializationLock): Instantiate.
953 (pthread_cond::initMutex): New Method.
954 (pthread_cond::isGoodInitializerOrBadObject): Ditto.
955 * thread.h: Some white spaces cleanups.
956 (nativeMutex): Move class declaration outside pthread_mutex.
957 (pthread_cond::condInitializationLock): New static member.
958 (pthread_cond::initMutex): New Method.
959 (pthread_cond::isGoodInitializerOrBadObject): Ditto.
960 (__pthread_cond_init): Remove prototype.
961
93353aee
CV
9622003-01-09 Corinna Vinschen <corinna@vinschen.de>
963
964 * fhandler_disk_file.cc (num_entries): Return 2 as link count if
965 directory unreadable.
966
3eb27a4e
CV
9672003-01-09 Corinna Vinschen <corinna@vinschen.de>
968
969 * security.cc (get_nt_attribute): Always return -1 when read_sd()
970 fails.
971 (get_file_attribute): Set permissions to 0 and owner/group to -1
972 if security descriptor is unreadable.
973
85ba109d
CF
9742003-01-09 Christopher Faylor <cgf@redhat.com>
975
976 Use isdirsep rather than SLASH_P throughout.
977 * path.cc (iscygdrive): Disallow /cygdrive\x.
978 (normalize_posix_path): "Normalize" a windows path, if detected, rather
979 than converting to posix.
980
9812003-01-06 Troy Curtiss <troyc@usa.net>
982
983 * fhandler_serial.cc (fhandler_serial::tcsetattr): Add support and
984 capability checking for B230400 bitrate.
985 (fhandler_serial::tcgetattr): Add support for B230400 bitrate.
986 * include/sys/termios.h: Add B230400 definition for Posix support of
987 230.4Kbps.
988
cbdbe9d7
CF
9892003-01-05 Christopher Faylor <cgf@redhat.com>
990
991 * pinfo.cc (_pinfo::commune_send): Use myself->lock rather than just
992 lock when leaving.
993
f3afe99b
CF
9942003-01-03 Christopher Faylor <cgf@redhat.com>
995
996 * dtable.h (dtable::in_vfork_cleanup): New function. True if vfork
997 cleanup needed.
998 * dtable.cc (dtable::vfork_parent_restore): Remove assertion.
999 * pipe.cc (fhandler_pipe::close): Don't close read_state during
1000 fork_fixup since it wasn't inherited.
1001
2665fb15
CF
10022003-01-01 Christopher Faylor <cgf@redhat.com>
1003
1004 * passwd.cc (getpwuid_r32): Revert previous change.
1005
8619b42b
CF
10062003-01-01 Christopher Faylor <cgf@redhat.com>
1007
1008 * sysconf.cc (sysconf): Return arbitrary values for
1009 _SC_GETGR_R_SIZE_MAX, _SC_LOGIN_NAME_MAX, _SC_GETPW_R_SIZE_MAX.
1010
1011 * passwd.cc (getpwuid_r32): Add uid/gid fields to size check
1012 calculation.
1013
This page took 0.15667 seconds and 5 git commands to generate.