diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2002-09-11 10:37:11 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2002-09-11 10:37:11 +0000 |
commit | 5a8746b73201f906c0a2d03041130c28f89eb26d (patch) | |
tree | cccaba3bb75d28da890a4174c9d4d854c54aa7ff /winsup/cygwin/security.h | |
parent | 22f8000733076a2acf41e58f8294341c256628b0 (diff) | |
download | cygnal-5a8746b73201f906c0a2d03041130c28f89eb26d.tar.gz cygnal-5a8746b73201f906c0a2d03041130c28f89eb26d.tar.bz2 cygnal-5a8746b73201f906c0a2d03041130c28f89eb26d.zip |
* grp.cc (initgroups): Call groups::clear_supp to free the
supplementary group sids that may have been set by setgroups.
* security.cc (cygsidlist::free_sids): Also zero the class members.
* security.h (groups::clear_supp): New.
Rename cygsidlist_unknown to cygsidlist_empty.
Diffstat (limited to 'winsup/cygwin/security.h')
-rw-r--r-- | winsup/cygwin/security.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/winsup/cygwin/security.h b/winsup/cygwin/security.h index 580d7c143..d9bd691f3 100644 --- a/winsup/cygwin/security.h +++ b/winsup/cygwin/security.h @@ -86,7 +86,7 @@ public: } }; -typedef enum { cygsidlist_unknown, cygsidlist_alloc, cygsidlist_auto } cygsidlist_type; +typedef enum { cygsidlist_empty, cygsidlist_alloc, cygsidlist_auto } cygsidlist_type; class cygsidlist { int maxcount; public: @@ -167,6 +167,11 @@ public: sgsids = newsids; ischanged = TRUE; } + void clear_supp () + { + sgsids.free_sids (); + ischanged = TRUE; + } void update_pgrp (const PSID sid) { pgsid = sid; |