]>
Commit | Line | Data |
---|---|---|
0c8455c3 CV |
1 | 2003-02-05 Pierre Humblet <pierre.humblet@ieee.org> |
2 | ||
3 | * sec_helper.cc (get_sids_info): New function. | |
4 | * security.cc (extract_nt_dom_user): Simplify with strechr. | |
5 | (get_user_groups): Initialize glen to MAX_SID_LEN. | |
6 | (get_user_local_groups): Ditto. | |
7 | (get_attribute_from_acl): Define ace_sid as cygpsid. | |
8 | (get_nt_attribute): Define owner_sid and group_sid as cygpsid. | |
9 | Call get_sids_info instead of cygsid.get_{u,g}id and is_grp_member. | |
10 | (get_nt_object_attribute): Ditto. | |
11 | (alloc_sd): Define ace_sid as cygpsid. | |
12 | ||
5ae9331a TP |
13 | 2003-02-04 Thomas Pfaff <tpfaff@gmx.net> |
14 | ||
15 | * syscalls.cc (struct system_cleanup_args): New struct. | |
16 | (system_cleanup): New function. | |
17 | (system): Use pthread_cleanup_push and _pop to save and restore | |
18 | signal handlers and sigprocmask. | |
19 | ||
3dbafd87 CV |
20 | 2003-02-04 Corinna Vinschen <corinna@vinschen.de> |
21 | ||
22 | * path.cc (symlink): Create security attributes so that only the | |
23 | user can modify the symlink. | |
24 | * security.cc (set_security_attribute): Remove symlink special | |
25 | handling. | |
26 | ||
0daf2561 CV |
27 | 2003-02-04 Pierre Humblet <pierre.humblet@ieee.org> |
28 | ||
29 | * grp.cc (internal_getgroups): Do not return without closing | |
30 | the process handle. | |
31 | ||
4a21c2d5 CV |
32 | 2003-02-04 Pierre Humblet <pierre.humblet@ieee.org> |
33 | ||
34 | * security.h (class cygpsid): New class. | |
35 | (class cygsid): Use cygpsid as base. Remove members psid, get_id, | |
36 | get_uid, get_gid, string, debug_printf and the == and != operators. | |
37 | (cygsidlist::clear_supp): Only do work if setgroups has been called. | |
38 | * sec_helper.cc: Define sid_auth NO_COPY. | |
39 | (cygpsid::operator==): New operator. | |
40 | (cygpsid::get_id): New function. | |
41 | (cygpsid::string): New function. | |
42 | (cygsid::string): Delete. | |
43 | (cygsid::get_id): Delete. | |
44 | * pwdgrp.h: Change arguments of internal_getpwsid, | |
45 | internal_getgrsid and internal_getgroups to cygpsid. | |
46 | * passwd.cc (internal_getpwsid): Change argument from cygsid to cygpsid. | |
47 | * grp.cc (internal_getgrsid): Ditto. | |
48 | (internal_getgroups): Ditto. | |
49 | ||
335556d5 CF |
50 | 2003-02-03 Christopher Faylor <cgf@redhat.com> |
51 | ||
52 | Eliminate most unneeded this-> pointers throughout. | |
53 | ||
153e83c6 CV |
54 | 2003-02-03 Pierre Humblet <pierre.humblet@ieee.org> |
55 | ||
56 | * security.h: Add third argument to set_process_privilege. | |
57 | * autoload.cc: Add OpenThreadToken. | |
58 | * sec_helper.cc (set_process_privilege): Add and use use_thread | |
59 | argument. | |
60 | * security.cc (alloc_sd): Modify call to set_process_privilege. | |
61 | Remember the result in each process. If failed and file owner is not | |
62 | the user, fail. | |
63 | ||
f0f3ea68 CV |
64 | 2003-02-03 Corinna Vinschen <corinna@vinschen.de> |
65 | ||
66 | * fhandler_socket.cc (fhandler_socket::recvfrom): Return buffer | |
67 | length and don't set errno in case of WSAEMSGSIZE error. | |
68 | (fhandler_socket::recvmsg): Ditto. | |
69 | ||
6688a061 CF |
70 | 2003-02-01 Christopher Faylor <cgf@redhat.com> |
71 | ||
72 | * grp.cc (getgrent32): Only refresh group entries when at beginning. | |
73 | (internal_getgrsid): Only refresh if uninitialized. | |
74 | (internal_getgrent): Ditto. | |
75 | * passwd.cc (getpwent): Only refresh passwd entries when at beginning. | |
76 | (pwdgrp::read_passwd): linebuf *cannot* be NO_COPY. | |
77 | (internal_getpwsid): Only refresh if uninitialized. | |
78 | (getpass): No need to refresh passwd data here. | |
79 | * pwdgrp.h (refresh): Eliminate default. | |
80 | ||
a5a93a62 CF |
81 | 2003-01-31 Christopher Faylor <cgf@redhat.com> |
82 | ||
83 | * dlfcn.cc (dlerror): Only report load errors once per error. | |
84 | ||
b0a82a85 CF |
85 | 2003-01-31 Christopher Faylor <cgf@redhat.com> |
86 | ||
87 | * fhandler_serial.cc (fhandler_serial::open): Avoid extraneous setting | |
88 | of res. | |
89 | ||
90 | * termios.cc (tcsetattr): Correctly record errno after tcsetattr call. | |
91 | ||
92 | 2003-01-31 Troy Curtiss <troyc@usa.net> | |
93 | ||
94 | * fhandler_serial.cc (fhandler_serial::tcsetattr): Add error-checking | |
95 | so that if any Win32 SetComm*() calls fail, errno gets set to EINVAL | |
96 | and tcsetattr() returns -1. Catch invalid bitrates, mostly. If baud | |
97 | rate setting is B0, just drop DTR and leave Win32 DCB bitrate as-is | |
98 | since 0 is not a valid Win32 setting. | |
99 | (fhandler_serial::tcgetattr): If DTR is low, populate the bitrate as | |
100 | B0, otherwise get it from the DCB. | |
101 | ||
949c3da1 CF |
102 | 2003-01-31 Christopher Faylor <cgf@redhat.com> |
103 | ||
104 | * passwd.cc (pwdgrp::read_passwd): linebuf *must* be static (from | |
105 | Pierre Humblet). | |
106 | * pwdgrp.h (pwdgrp::refresh): Avoid calling read function if we already | |
107 | have lock since that means we are in the process of reading the file. | |
108 | ||
485d85bf CF |
109 | 2003-01-31 Jason Tishler <jason@tishler.net> |
110 | ||
111 | * shared.cc (shared_info::heap_chunk_size): Use correct variable when | |
112 | reading HKLM. | |
113 | ||
704ce461 CF |
114 | 2003-01-30 Christopher Faylor <cgf@redhat.com> |
115 | ||
116 | * fhandler_registry.cc (fhandler_registry::exists): Fix off-by-one | |
117 | error when inspecting path. | |
118 | ||
ba6e1083 CF |
119 | 2003-01-29 Christopher Faylor <cgf@redhat.com> |
120 | ||
121 | * lib/getopt.c: Allow environment variable control of POSIXLY_INCORRECT | |
122 | behavior. | |
123 | ||
124 | 2003-01-28 Corinna Vinschen <corinna@vinschen.de> | |
01e3c897 CV |
125 | |
126 | * fhandler_socket.cc (fhandler_socket::accept): On successful execution | |
127 | set connection state of returned socket to CONNECTED. | |
128 | ||
dfb366da CF |
129 | 2003-01-27 Christopher Faylor <cgf@redhat.com> |
130 | ||
131 | * passwd.cc (pwdgrp::parse_passwd): Be more unforgiving about | |
132 | non-numeric fields. | |
133 | ||
03dba1de CF |
134 | 2003-01-26 Christopher Faylor <cgf@redhat.com> |
135 | ||
136 | * uinfo.cc (pwdgrp::next_num): Remove check for NULL since it is no | |
137 | longer a valid return from next_str. | |
138 | (pwdgrp::add_line): Duh. Revert to use strchr. | |
139 | ||
fea48988 CF |
140 | 2003-01-26 Christopher Faylor <cgf@redhat.com> |
141 | ||
ca6018a0 | 142 | * string.h (strechr): New function. |
fea48988 CF |
143 | * uinfo.cc (pwdgrp::next_str): Search only for input char in string. |
144 | Return EOS on failure. Don't check for NULL since it shouldn't be | |
145 | possible. | |
146 | (pwdgrp::add_line): Revert to replacing '\n' in input line with '\0'. | |
147 | (pwdgrp::next_num): Pass explicit separator character to next_str. | |
148 | * grp.cc (pwdgrp::parse_group): Ditto. | |
149 | * passwd.cc (pwdgrp::parse_passwd): Ditto. Revamp test for garbage | |
150 | input. | |
151 | * pwdgrp.h (pwdgrp::next_str): Don't use default parameter. | |
152 | ||
9a751621 CF |
153 | 2003-01-26 Christopher Faylor <cgf@redhat.com> |
154 | ||
155 | * uinfo.cc (pwdgrp::load): Regularize strace output. Add warning for | |
156 | CreateFile failure. | |
157 | ||
c9133395 CF |
158 | 2003-01-26 Christopher Faylor <cgf@redhat.com> |
159 | ||
bdbd7fb6 CF |
160 | * passwd.cc (pwdgrp::parse_passwd): Eliminate use of memset. The |
161 | structure should always be completely filled out. | |
162 | * grp.cc (pwdgrp::parse_group): Ditto. | |
163 | ||
164 | 2003-01-26 Christopher Faylor <cgf@redhat.com> | |
165 | ||
166 | * grp.cc (pwdgrp::parse_group): Fix off-by-one problem in allocating | |
c9133395 | 167 | gr_mem. |
65037056 CF |
168 | |
169 | 2003-01-26 Christopher Faylor <cgf@redhat.com> | |
170 | ||
171 | * include/sys/strace.h (paranoid_printf): Define as not being part of | |
172 | "all" output. | |
173 | ||
174 | 2003-01-25 Christopher Faylor <cgf@redhat.com> | |
175 | ||
176 | * pwdgrp.h (pwdgrp::next_num): Rename from next_int. Returns | |
177 | true/false if parse operation succeeded. | |
178 | (pwdgrp::reparse): Remove. | |
179 | (pwdgrp::raw_ptr): New function. Returns pointer in line. | |
180 | (pwdgrp::next_num): New functions for parsing other than unsigned long. | |
181 | * grp.cc (pwdgrp::parse_group): Reinstate previous parsing behavior. | |
182 | Don't fill in fields with NULL and assign empty gr_mem to known pointer | |
183 | rather than doing a pointless calloc. Streamline gr_mem parsing. | |
184 | Don't increment curr_lines here. | |
185 | * passwd.cc (pwdgrp::parse_passwd): Use new behavior of next_num. | |
186 | Don't increment curr_lines here. | |
187 | * uinfo.cc (pwdgrp::next_str): Keep returning EOL if out of data. | |
188 | (pwdgrp::reparse): Remove. | |
189 | (pwdgrp::next_num): Rename from next_int. Return bool indicating | |
190 | success of parse, argument returns value parsed. | |
191 | (pwdgrp::add_line): Increment curr_lines here on successful parse. | |
192 | (pwdgrp::load): (from Pierre Humblet) Don't return status. Just report | |
193 | it here. | |
194 | ||
a53ddfe6 CF |
195 | 2003-01-25 Christopher Faylor <cgf@redhat.com> |
196 | ||
197 | * pwdgrp.cc (pwdgrp::reparse): Declare. | |
198 | * uinfo.cc (pwdgrp::reparse): Define. | |
c9b99d0d | 199 | * grp.cc (pwdgrp::parse_group): Use reparse. |
a53ddfe6 | 200 | |
4f7e12dd CV |
201 | 2003-01-25 Pierre Humblet <pierre.humblet@ieee.org> |
202 | ||
203 | * syscalls.cc (seteuid32): On Win95 get the pw entry. If it exists | |
204 | update the euid and call cygheap->user.set_name. Remove special | |
205 | handling of ILLEGAL_UID. | |
ba6e1083 | 206 | (setgid32): Add a debug_printf. On Win95, always set the egid. |
4f7e12dd CV |
207 | Remove special handling of ILLEGAL_GID. Do not compare gid and gr_gid. |
208 | * child_info.h (class cygheap_exec_info): Remove uid. | |
209 | * spawn.cc (spawn_guts): Do not set ciresrv.moreinfo->uid. | |
210 | * dcrto.cc (dll_crt0_1): Always call uinfo_init. | |
211 | * uinfo.cc (uinfo_init): Reorganize and close handle if needed. | |
212 | (cygheap_user::ontherange): Do not call internal_getpwnam if pw is NULL. | |
213 | ||
45dbfc26 CF |
214 | 2003-01-24 Christopher Faylor <cgf@redhat.com> |
215 | ||
216 | * fhandler_console.cc (fhandler_console::send_winch_maybe): Reset | |
217 | scroll region if size changes. | |
218 | ||
7d33eefa CV |
219 | 2003-01-24 Pierre Humblet <pierre.humblet@ieee.org> |
220 | Jason Tishler <jason@tishler.net> | |
221 | ||
222 | * cygwin.din: Export setreuid32, setreuid, setregid32, setregid. | |
223 | * syscalls.cc (setreuid32): New function. | |
224 | (setreuid): Ditto. | |
225 | (setregid32): Ditto. | |
226 | (setregid): Ditto. | |
227 | * include/cygwin/version.h: Bump API minor number. | |
228 | ||
ac413374 | 229 | 2003-01-23 Christopher Faylor <cgf@redhat.com> |
69fae986 | 230 | |
ac413374 | 231 | * pwdrp.h (pwdgrp::refresh): Lock entire test prior to reading. |
2037688a | 232 | |
ac413374 | 233 | 2003-01-23 Christopher Faylor <cgf@redhat.com> |
09a88426 CF |
234 | |
235 | * grp.cc (pwdgrp::parse_group): Eliminate arg and use class member | |
236 | instead. Use next_str and next_int to parse arguments. | |
237 | * passwd.cc (pwdgrp::parse_passwd): Ditto. | |
238 | (grab_string): Eliminate. | |
239 | (grab_int): Ditto. | |
240 | * pwdgrp.h (pwdgrp::parse): Eliminate input arg. | |
241 | (pwdgrp::parse_passwd): Reflect above change. | |
242 | (pwdgrp::parse_group): Reflect above change. | |
243 | (pwdgrp::next_str): New function. | |
244 | (pwdgrp::next_int): Ditto. | |
245 | (pwdgrp::gets): Eliminate. | |
246 | * uinfo.cc (pwdgrp::next_str): New function. | |
247 | (pwdgrp::next_int): Ditto. | |
248 | (pwdgrp::add_line): Subsume gets. | |
249 | (pwdgrp::gets): Eliminate. | |
250 | (pwdgrp::load): Just call add_line to parse input buffer. | |
251 | ||
ac413374 CF |
252 | 2003-01-22 Thomas Pfaff <tpfaff@gmx.net> |
253 | ||
254 | * include/pthread.h (PTHREAD_MUTEX_RECURSIVE): Revert changes from | |
255 | 2003-01-09 mutex patch. | |
256 | (PTHREAD_MUTEX_ERRORCHECK): Ditto. | |
257 | ||
258 | 2003-01-22 Corinna Vinschen <corinna@vinschen.de> | |
259 | ||
260 | * cygrun.c: Move from here to ../testsuite. | |
261 | * Makefile.in: Remove cygrun.exe dependencies. | |
262 | ||
263 | 2003-01-21 Jason Tishler <jason@tishler.net> | |
264 | ||
265 | * cygwin.din: Export nanosleep(). | |
266 | * signal.cc (nanosleep): New function. | |
267 | (sleep): Move old functionality to nanosleep(). Call nanosleep(). | |
268 | (usleep): Remove old functionality. Call nanosleep(). | |
269 | * include/cygwin/version.h: Bump API minor number. | |
270 | ||
57394495 CF |
271 | 2003-01-21 Christopher Faylor <cgf@redhat.com> |
272 | ||
273 | * grp.cc: Call gr.refresh() rather than doing isunitialized tests | |
274 | throughout. | |
275 | (gr): Use constructor (sigh). | |
276 | (pwdgrp::parse_group): Rename from parse_grp. | |
277 | (pwdgrp::read_group): Rename from read_etc_group. Just call gr.load | |
278 | with a single argument. | |
279 | * passwd.cc: Call pr.refresh() rather than doing isunitialized tests | |
280 | throughout. | |
281 | (pr): Use constructor (sigh). | |
282 | (pwdgrp::parse_passwd): Rename from "parse_pwd". | |
283 | (pwdgrp::read_passwd): Rename from read_etc_passwd. Just call pr.load | |
284 | with a single argument. | |
285 | * pwdgrp.h (pwdgrp_state): Eliminate. | |
286 | (pwdgrp): Reflect above renamings. | |
287 | (pwdgrp::etc_ix): Rename from pwd_ix. | |
288 | (pwdgrp::read): New element. | |
289 | (pwdgrp::lock): New element. | |
290 | (pwdgrp::refresh): New function. | |
291 | (pwdgrp::load): Eliminate variations which take buffer arguments. | |
292 | (pwdgrp::pwdgrp): New constructors. Initialize mutex here. | |
293 | * uinfo.cc (pwdgrp::load): Accommodate pwd_ix -> etc_ix renaming. | |
294 | (pwdgrp::load): Set initialized state to true rather than setting state | |
295 | to loaded. | |
296 | ||
984864e9 CF |
297 | 2003-01-21 Christopher Faylor <cgf@redhat.com> |
298 | ||
89f7e8d1 | 299 | * include/cygwin/version.h: Bump DLL minor number. |
984864e9 | 300 | |
d8cde3a3 CF |
301 | 2003-01-21 Pierre Humblet <pierre.humblet@ieee.org> |
302 | ||
303 | * path.h (etc::change_possible): Revert the type to bool. | |
304 | (etc::set_last_modified): Remove obsolete function. | |
305 | * path.cc (etc::change_possible): Revert type to bool. | |
306 | (etc::test_file_change): Do not test for negative values of | |
307 | change_possible and do not set it to -res. | |
308 | (etc::dir_changed): When the handle is NULL, call memset instead of | |
09a88426 CF |
309 | test_file_changed. When the handle is invalid, return true. Detect |
310 | filename change in /etc. | |
d8cde3a3 | 311 | (etc::file_changed): Remove unneeded check for !fn[n]. |
33de631b | 312 | * uinfo.cc (pwdgrp::load): Eliminate spurious setting of fh to NULL. |
b99b804b | 313 | * pwdgrp.h (pwdgrp::operator =): Eliminate. |
d8cde3a3 | 314 | |
7905c4f1 CF |
315 | 2003-01-19 Christopher Faylor <cgf@redhat.com> |
316 | ||
317 | * pwdgrp.h (etc): Move to path.h. | |
318 | (pwdgrp::max_lines): New field. | |
319 | (pwdgrp::curr_lines): New field. | |
320 | (pwdgrp::pwdgrp_buf): Ditto. | |
321 | (pwdgrp_buf_elem_size): Ditto. | |
322 | (pwdgrp_parse): Ditto. | |
323 | (pwdgrp::gets): Just declare here. | |
324 | (pwdgrp::load): Ditto. Just take one argument. | |
325 | (pwdgrp::load): Define overloaded function accepting passwd buf. | |
326 | (pwdgrp::load): Define overloaded function accepting group buf. | |
327 | * grp.cc: Use pwdgrp elements rather than standalone static variables | |
328 | throughout. | |
329 | (curr_lines): Eliminate. | |
330 | (max_lines): Ditto. | |
331 | (add_grp_line): Ditto. | |
332 | (parse_grp): Define as returning boolean. Accept void * arg and line | |
333 | count. Coerce first argument into __group32 buf reference. Increment | |
334 | curr_line as appropriate. | |
335 | (read_etc_group): Pass pwdgrp buffer to gr.load. | |
336 | * passwd.cc: Use pwdgrp elements rather than standalone static variables | |
337 | throughout. | |
338 | (curr_lines): Eliminate. | |
339 | (max_lines): Ditto. | |
340 | (add_grp_line): Ditto. | |
341 | (parse_passwd): Define as returning boolean. Accept void * arg and line | |
342 | count. Coerce first argument into passwd buf reference. Increment | |
343 | curr_line as appropriate. | |
344 | (read_etc_group): Pass pwdgrp buffer to pr.load. | |
345 | * path.cc (etc::fn): Extend buffer size to allow index by 1 rather than | |
346 | zero. | |
347 | (etc::last_modified): Ditto. | |
348 | (etc::change_possible): Ditto. Renamed from sawchange. Change to | |
349 | signed char since elements are now tri-state. | |
350 | (etc::init): Assume "handle" is 1 based rather than 0. | |
351 | (etc::test_file_change): New function. Sets change_possible based on | |
352 | file date comparison. | |
353 | (etc::dir_changed): Check file states immediately after changed_h is | |
354 | initialized to avoid a race. | |
355 | (etc::file_changed): Use test_file_change to detect if file needs to be | |
356 | updated. | |
357 | * path.h (etc): Move class here from pwdgrp.h. | |
7905c4f1 CF |
358 | * uinfo.cc: Move etc:: functions to path.cc. Move pwdgrp functions |
359 | here. | |
360 | (pwdgrp::gets): Eliminate buf checks. Just check eptr and set lptr. | |
361 | (pwdgrp::add_line): New function. | |
362 | (pwdgrp::load): Call generic add_line function which will call correct | |
363 | parser. | |
364 | ||
4c6a3e50 CF |
365 | 2003-01-17 Christopher Faylor <cgf@redhat.com> |
366 | ||
367 | * cygheap.cc: Change most 'int's to 'unsigned's. | |
368 | (_cmalloc): Only check for size of malloced region when calculating | |
97d2bc79 | 369 | bucket. Add overhead when performing the sbrk. Previous change broke |
4c6a3e50 CF |
370 | _crealloc. |
371 | ||
e9152439 CF |
372 | 2003-01-17 Christopher Faylor <cgf@redhat.com> |
373 | ||
374 | * dcrt0.cc (initialize_env): Use colon for CYGWIN_DEBUG separator. | |
375 | * grp.cc: Change most statics to NO_COPY throughout. | |
376 | * passwd.cc: Ditto. | |
377 | ||
378 | 2003-01-17 Christopher Faylor <cgf@redhat.com> | |
379 | ||
380 | * pwdgrp.h: Change some BOOLs to bools. | |
381 | (pwdgrp::pwdgrp): Remove unneeded constructor. | |
382 | * passwd.cc: Change BOOL to bool throughout. | |
383 | ||
afa378e7 CV |
384 | 2003-01-17 Corinna Vinschen <corinna@vinschen.de> |
385 | ||
386 | * cygwin.din: Add strerror_r. | |
387 | * include/cygwin/version.h: Bump API minor number. | |
388 | ||
1de6f431 CF |
389 | 2003-01-17 Christopher Faylor <cgf@redhat.com> |
390 | ||
391 | * uinfo.cc (etc::dir_changed): Don't print a warning if can't open | |
392 | /etc, unless debugging. | |
393 | ||
d8cde3a3 | 394 | 2003-01-17 Pierre Humblet <pierre.humblet@ieee.org> |
14ea5029 CF |
395 | |
396 | * grp.cc (read_etc_group): On NT, add a line for gid = -1. Change name | |
397 | "unknown" to "mkgroup". | |
398 | (internal_getgrgid): Do not return default in nontsec case. | |
399 | (internal_getgroups): Add argument srchsid and look for it in groups if | |
400 | not NULL. | |
401 | * passwd.cc (read_etc_passwd): On NT, add a line for uid = -1. Use | |
402 | same default uid for Win95 and NT. Call cygheap_user::ontherange to | |
403 | initialize HOME. | |
404 | ||
14ea5029 CF |
405 | 2003-01-16 Christopher Faylor <cgf@redhat.com> |
406 | ||
407 | * cygheap.cc (init_cygheap::etc_changed): Move to uinfo.cc. | |
408 | * cygheap.h (init_cygheap::etc_changed_h): Remove. | |
409 | (init_cygheap::etc_changed): Ditto. | |
410 | * grp.cc (group_state): Remove. Use gr instead throughout. | |
411 | (gr): Define as class pwdgrp. | |
412 | (read_etc_group): Remove gr definition. Remove calls to | |
413 | set_last_modified and close. Pass add_grp to gr.load to load file. | |
414 | * passwd.cc (passwd_state): Remove. Use pr instead, throughout. | |
415 | (pr): Define as class pwdgrp. | |
416 | (read_etc_passwd): Remove pr definition. Remove calls to | |
417 | set_last_modified and close. Pass add_pwd_line to pr.load to load | |
418 | file. | |
419 | * pwdgrp.h (etc): New helper class for pwdgrp. | |
420 | (pwdgrp): Combine pwdgrp_check and pwdgrp_read into one class. Remove | |
421 | file_w32 and last_modified fields. | |
422 | (pwdgrp::set_last_modified): Remove. | |
423 | (pwdgrp::isinitializing): Remove FindFirstFile stuff. Move to | |
424 | etc::file_changed. | |
425 | (pwdgrp::load): Rename from 'open'. Call etc::init to initialize etc | |
426 | scanning. Close file handle after reading buffer into memory. Parse | |
427 | buffer by calling second argument. | |
428 | (pwdgrp::gets): Reorganize slightly to rely on eptr starting at | |
5304bcdf | 429 | beginning of buffer. |
14ea5029 CF |
430 | (pwdgrp::close): Remove. |
431 | * uinfo.cc (etc::dir_changed): New function. | |
432 | (etc::init): Ditto. | |
433 | (etc::file_changed): Ditto. | |
434 | (etc::set_last_modified): Ditto. | |
435 | ||
41429bc9 CV |
436 | 2003-01-16 Jason Tishler <jason@tishler.net> |
437 | ||
438 | * mmap.cc (fixup_mmaps_after_fork): Add ERROR_NOACCESS to the list of | |
439 | ReadProcessMemory() error codes that trigger a retry with temporary | |
440 | PAGE_READONLY access. Note that this can occur on NT 4.0. | |
441 | ||
18813254 CF |
442 | 2003-01-15 Christopher Faylor <cgf@redhat.com> |
443 | ||
444 | * path.cc (normalize_posix_path): Convert win32 path separators to | |
445 | slashes when full path is specified. | |
446 | ||
77cb0c56 CF |
447 | 2003-01-15 Pierre Humblet <pierre.humblet@ieee.org> |
448 | ||
449 | * cmalloc.cc (_cmalloc): Fix memory leak. | |
450 | ||
ce542f78 CV |
451 | 2003-01-15 Corinna Vinschen <corinna@vinschen.de> |
452 | ||
453 | * autoload.cc: Fix copyright date. | |
454 | * fhandler_dsp.cc: Ditto. | |
455 | * mmap.cc: Ditto. | |
456 | * net.cc: Ditto. | |
457 | * ntdll.h: Ditto. | |
458 | * signal.cc: Ditto. | |
459 | * syscalls.cc: Ditto. | |
460 | * uname.cc: Ditto. | |
461 | * wait.cc: Ditto. | |
462 | ||
15996b6f CV |
463 | 2003-01-14 Corinna Vinschen <corinna@vinschen.de> |
464 | ||
465 | * mmap.cc (fixup_mmaps_after_fork): Copy protection to child process. | |
466 | Change ambiguous debug output. | |
467 | ||
857b65dd CV |
468 | 2003-01-14 Corinna Vinschen <corinna@vinschen.de> |
469 | ||
470 | * mmap.cc (mmap_record::access): Change argument type to caddr_t | |
471 | for strictness. | |
472 | (mprotect): Protect against calling VirtualProtect() for shared | |
473 | pages on 9x/Me. | |
474 | (fixup_mmaps_after_fork): If ReadProcessMemory() fails, try to | |
475 | change protection of parent page to PAGE_READONLY, then try again. | |
476 | Revert protection afterwards. | |
477 | ||
e14328f4 TP |
478 | 2003-01-14 Thomas Pfaff <tpfaff@gmx.net> |
479 | ||
480 | * syscalls.cc (system): Add pthread_testcancel call. | |
481 | * thread.cc: Update list of cancellation points. | |
482 | ||
4a3584c8 TP |
483 | 2003-01-14 Thomas Pfaff <tpfaff@gmx.net> |
484 | ||
485 | * wait.cc: Include thread.h | |
486 | (wait4): Add pthread_testcancel call. | |
487 | Wait for child process and cancellation event. | |
488 | * thread.cc: Update list of cancellation points. | |
489 | ||
7ec66a2c TP |
490 | 2003-01-14 Thomas Pfaff <tpfaff@gmx.net> |
491 | ||
492 | * signal.cc (sleep): Add pthread_testcancel call. | |
493 | Wait for signal and cancellation event. | |
494 | (usleep): Ditto. | |
495 | ||
496 | 2003-01-14 Thomas Pfaff <tpfaff@gmx.net> | |
3457ce4d TP |
497 | |
498 | * exceptions.cc (handle_sigsuspend): Add pthread_testcancel call. | |
499 | Wait for signal and cancellation event. | |
500 | * thread.cc: Update list of cancellation points. | |
501 | ||
2673d5f2 CF |
502 | 2003-01-14 David Huang <davehzhr@hotmail.com> |
503 | ||
504 | * fhandler_dsp.cc (fhandler_dsp::ioctl): Add limited support for | |
505 | SNDCTL_DSP_GETFMTS. | |
506 | ||
9f0d3f37 CF |
507 | 2003-01-12 Christopher Faylor <cgf@redhat.com> |
508 | ||
509 | * ntdll.h: Fix typo. | |
510 | ||
7f129d87 CV |
511 | 2003-01-12 Corinna Vinschen <corinna@vinschen.de> |
512 | ||
513 | * uname.cc (uname): Use cygwin_gethostname() to retrieve hostname. | |
514 | ||
ab2dbccc CV |
515 | 2003-01-12 Pierre Humblet <pierre.humblet@ieee.org> |
516 | ||
517 | * sec_acl.cc (search_ace): Use id == -1, instead of < 0, as wildcard. | |
518 | (setacl): Start the search for a matching default at the next entry. | |
519 | Invalidate the type of merged entries instead of clearing it. | |
520 | Use well_known_creator for default owner and owning group and do | |
521 | not try to merge non-default and default entries in these cases. | |
522 | (getacl): Recognize well_known_creator for default owner and group. | |
523 | (acl_worker): Improve errno settings and streamline the nontsec case. | |
524 | * security.cc (write_sd): Remove the call to set_process_privilege. | |
525 | (alloc_sd): If the owner changes, call set_process_privilege and return | |
526 | immediately on failure. Change inheritance rules: on new directories add | |
527 | inherit only allow ACEs for creator_owner, creator_group and everyone. | |
528 | Preserve all inheritances through chmod and chown calls. Introduce | |
529 | isownergroup to implement the uid == gid case, to keep the inheritance | |
530 | code simple. Do not initialize owner_sid and group_sid and stop using | |
531 | the variable psd. | |
532 | ||
68115c74 CF |
533 | 2003-01-10 Christopher Faylor <cgf@redhat.com> |
534 | ||
535 | * net.cc: Use gethostname define from winsock2.h. | |
536 | ||
e3abf986 CF |
537 | 2003-01-10 Christopher Faylor <cgf@redhat.com> |
538 | ||
539 | * path.cc: Unrevert below reversion except for | |
540 | mount_info::conv_to_posix_path part. | |
541 | ||
df2caa88 CV |
542 | 2003-01-10 Corinna Vinschen <corinna@vinschen.de> |
543 | ||
544 | * path.cc: Revert patch from 2003-01-09 to normalize a windows path | |
545 | rather than converting to posix. | |
546 | ||
dc8d11f5 CV |
547 | 2003-01-10 Corinna Vinschen <corinna@vinschen.de> |
548 | ||
549 | * autoload.cc (gethostname): Make call optional, return 1 if function | |
550 | can't get loaded. | |
551 | * net.cc (cygwin_gethostname): Call GetComputerName if return value | |
552 | of gethostname is non-zero. | |
553 | ||
70d61f30 CV |
554 | 2003-01-10 Charles Wilson <cwilson@ece.gatech.edu> |
555 | ||
8735f49f | 556 | * cygwin.din: Add asprintf and vasprintf, as well as the reentrant |
70d61f30 | 557 | versions and underscore variants. |
8735f49f | 558 | * include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR. |
70d61f30 | 559 | |
a7711767 CV |
560 | 2003-01-10 Corinna Vinschen <corinna@vinschen.de> |
561 | ||
562 | * net.cc (cygwin_gethostname): Fix call to wsock function gethostname. | |
563 | ||
d5223b2b CF |
564 | 2003-01-09 Christopher Faylor <cgf@redhat.com> |
565 | ||
566 | * cygthread.cc (cygthread::cygthread): Be more noisy about odd | |
567 | condition. | |
568 | * miscfuncs.cc (low_priority_sleep): Sleep in regular priority if | |
569 | that's what we're currently running at. | |
570 | ||
65f207e8 TP |
571 | 2003-01-09 Thomas Pfaff <tpfaff@gmx.net> |
572 | ||
573 | * include/semaphore.h: Modify typedef for sem_t. | |
574 | * include/cygwin/types.h: Modify typedefs for pthread_t, | |
575 | pthread_mutex_t, pthread_key_t, pthread_attr_t, | |
576 | pthread_mutexattr_t, pthread_condattr_t, pthread_cond_t, | |
577 | pthread_rwlock_t and pthread_rwlockattr_t. | |
578 | ||
09cbb9d6 TP |
579 | 2003-01-09 Thomas Pfaff <tpfaff@gmx.net> |
580 | ||
581 | * thread.h (WAIT_CANCELED): New define. | |
582 | (pthread::cancelable_wait): New static method. | |
583 | * thread.cc (pthread::cancelable_wait): Implement. | |
584 | (semaphore::Wait): Wait on semaphore and thread cancellation. | |
585 | (pthread::join): Wait on joined thread and thread cancellation. | |
586 | (semaphore::wait): Add testcancel to check for thread | |
587 | cancellation even if the semaphore is available. | |
588 | ||
5d68d1de TP |
589 | 2003-01-09 Thomas Pfaff <tpfaff@gmx.net> |
590 | ||
591 | * include/pthread.h: Add define for errorchecking mutexes. | |
592 | Change default mutex type. | |
593 | * thread.cc (pthread_cond::TimedWait): Update mutex unlock | |
594 | calls. | |
595 | (pthread_mutex::pthread_mutex): New implement. | |
596 | (pthread_mutex::~pthread_mutex): Ditto. | |
597 | (pthread_mutex::Lock): Ditto. | |
598 | (pthread_mutex::TryLock): Ditto. | |
599 | (pthread_mutex::UnLock): Ditto. | |
600 | (pthread_mutex::Destroy): Implement new method. | |
601 | (pthread_mutex::SetOwner): Ditto. | |
602 | (pthread_mutex::LockRecursive): Ditto. | |
603 | (pthread_mutex::fixup_after_fork): Restore locking state after | |
604 | fork. | |
605 | (__pthread_mutex_lock): Return pthread_mutex::Lock errorcode. | |
606 | (__pthread_mutex_trylock): Return pthread_mutex::TryLock | |
607 | errorcode. | |
608 | (__pthread_mutex_unlock): Return pthread_mutex::UnLock | |
609 | errorcode. | |
610 | (__pthread_mutex_destroy): Call pthread_mutex::Destroy to | |
3457ce4d | 611 | destroy mutex. |
5d68d1de TP |
612 | (__pthread_mutexattr_settype): Allow errorchecking and recursive |
613 | types. | |
614 | * thread.h (MUTEX_LOCK_COUNTER_INITIAL): New define. | |
615 | (pthread_mutex::criticalsection): Remove. | |
616 | (pthread_mutex::lock_counter): New member. | |
617 | (pthread_mutex::recursion_counter): Ditto. | |
618 | (pthread_mutex::owner): Ditto. | |
619 | (pthread_mutex::type): Ditto. | |
620 | (pthread_mutex::Destroy): New method. | |
621 | (pthread_mutex::SetOwner): Ditto. | |
622 | (pthread_mutex::LockRecursive): Ditto. | |
623 | ||
ed9fe455 TP |
624 | 2003-01-09 Thomas Pfaff <tpfaff@gmx.net> |
625 | ||
626 | * pthread.cc (pthread_cond_init): Use new pthread_cond::init. | |
627 | * thread.cc: Some white spaces cleanups. | |
628 | Change __pthread_cond_init to pthread_cond::init throughout. | |
629 | (nativeMutex): Move class methods outside pthread_mutex. | |
630 | (MTinterface::Init): Initialize pthread_cond init lock. | |
631 | (pthread_cond::condInitializationLock): Instantiate. | |
632 | (pthread_cond::initMutex): New Method. | |
633 | (pthread_cond::isGoodInitializerOrBadObject): Ditto. | |
634 | * thread.h: Some white spaces cleanups. | |
635 | (nativeMutex): Move class declaration outside pthread_mutex. | |
636 | (pthread_cond::condInitializationLock): New static member. | |
637 | (pthread_cond::initMutex): New Method. | |
638 | (pthread_cond::isGoodInitializerOrBadObject): Ditto. | |
639 | (__pthread_cond_init): Remove prototype. | |
640 | ||
93353aee CV |
641 | 2003-01-09 Corinna Vinschen <corinna@vinschen.de> |
642 | ||
643 | * fhandler_disk_file.cc (num_entries): Return 2 as link count if | |
644 | directory unreadable. | |
645 | ||
3eb27a4e CV |
646 | 2003-01-09 Corinna Vinschen <corinna@vinschen.de> |
647 | ||
648 | * security.cc (get_nt_attribute): Always return -1 when read_sd() | |
649 | fails. | |
650 | (get_file_attribute): Set permissions to 0 and owner/group to -1 | |
651 | if security descriptor is unreadable. | |
652 | ||
85ba109d CF |
653 | 2003-01-09 Christopher Faylor <cgf@redhat.com> |
654 | ||
655 | Use isdirsep rather than SLASH_P throughout. | |
656 | * path.cc (iscygdrive): Disallow /cygdrive\x. | |
657 | (normalize_posix_path): "Normalize" a windows path, if detected, rather | |
658 | than converting to posix. | |
659 | ||
660 | 2003-01-06 Troy Curtiss <troyc@usa.net> | |
661 | ||
662 | * fhandler_serial.cc (fhandler_serial::tcsetattr): Add support and | |
663 | capability checking for B230400 bitrate. | |
664 | (fhandler_serial::tcgetattr): Add support for B230400 bitrate. | |
665 | * include/sys/termios.h: Add B230400 definition for Posix support of | |
666 | 230.4Kbps. | |
667 | ||
cbdbe9d7 CF |
668 | 2003-01-05 Christopher Faylor <cgf@redhat.com> |
669 | ||
670 | * pinfo.cc (_pinfo::commune_send): Use myself->lock rather than just | |
671 | lock when leaving. | |
672 | ||
f3afe99b CF |
673 | 2003-01-03 Christopher Faylor <cgf@redhat.com> |
674 | ||
675 | * dtable.h (dtable::in_vfork_cleanup): New function. True if vfork | |
676 | cleanup needed. | |
677 | * dtable.cc (dtable::vfork_parent_restore): Remove assertion. | |
678 | * pipe.cc (fhandler_pipe::close): Don't close read_state during | |
679 | fork_fixup since it wasn't inherited. | |
680 | ||
2665fb15 CF |
681 | 2003-01-01 Christopher Faylor <cgf@redhat.com> |
682 | ||
683 | * passwd.cc (getpwuid_r32): Revert previous change. | |
684 | ||
8619b42b CF |
685 | 2003-01-01 Christopher Faylor <cgf@redhat.com> |
686 | ||
687 | * sysconf.cc (sysconf): Return arbitrary values for | |
688 | _SC_GETGR_R_SIZE_MAX, _SC_LOGIN_NAME_MAX, _SC_GETPW_R_SIZE_MAX. | |
689 | ||
690 | * passwd.cc (getpwuid_r32): Add uid/gid fields to size check | |
691 | calculation. | |
692 |