This is the mail archive of the cygwin-patches@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

etc_changed, passwd & group.


Chris,

Here is the code as it stands. It compiles & runs, and passes
fork tests correctly. Feel free to takeover or at least
have a look. I will continue testing tomorrow evening.

I include only the 5 files that are related to etc_changed,
the 5 others (setuid on Win9X) can wait.

Pierre

P.S. Does GetFileInformationByHandle () work reliably on network drives
(sse MSDN warnings)? If so, in pwdgrp.h read () it could replace 
GetFileSize and GetFileTime and one could also verify that the file hasn't
mutated into a directory.

2003/01/16  Pierre Humblet  <pierre.humblet@ieee.org>

	* cygheap.h (struct init_cygheap): Remove etc_changed_h and 
	etc_changed members. 
	* cygheap.cc (init_cygheap::etc_changed): Delete.
	* pwdgroup.h (class pwdgrp_check): Delete.
	(class pwdgrp_read): Delete.
	(enum etc_changed_bits): Create.
	(struct etc_change): Create.
	(class pwdgrp_file): Create.
	* passwd.cc: Major changes to use class pwdgrp_file instead of classes 
	pwdgrp_check and pwdgrp_read.
	(etc_change::etc_watch): Create.
	(etc_change::etc_changed): Create.
	(grab_int): Replace almost_null by "".
	(read_etc_passwd): On NT, add a line for uid = -1. Use same default uid
	for Win95 and NT. Call cygheap_user::ontherange to initialize HOME. 
	* grp.cc: Major changes to use class pwdgrp_file instead of classes 
	pwdgrp_check and pwdgrp_read.
	(read_etc_group): On NT, add a line for gid = -1. Change name "unknown"
	to "mkgroup". 
	(internal_getgrgid): Do not return default in nontsec case.
	(internal_getgroups): Add argument srchsid and look for it in groups
	if not NULL.

Attachment: etc.diff
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]