Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2008-08-18 16:56:59 +0400
committerCorinna Vinschen <corinna@vinschen.de>2008-08-18 16:56:59 +0400
commitbba489539439916482e0b92b0bc593d55de51105 (patch)
tree835fb09adda0d2c630fb7d410414d3cf189b7112
parent2d1bfd524def4379518e09cede0b9fd43d8a66ef (diff)
* mkgroup.c (enum_local_groups): Use NetLocalGroupGetInfo to find out
if a group exists, rather than just allocating a buffer and going ahead.
-rw-r--r--winsup/utils/ChangeLog5
-rw-r--r--winsup/utils/mkgroup.c7
2 files changed, 8 insertions, 4 deletions
diff --git a/winsup/utils/ChangeLog b/winsup/utils/ChangeLog
index 7cd59bff8..6917ab58d 100644
--- a/winsup/utils/ChangeLog
+++ b/winsup/utils/ChangeLog
@@ -1,5 +1,10 @@
2008-08-18 Corinna Vinschen <corinna@vinschen.de>
+ * mkgroup.c (enum_local_groups): Use NetLocalGroupGetInfo to find out
+ if a group exists, rather than just allocating a buffer and going ahead.
+
+2008-08-18 Corinna Vinschen <corinna@vinschen.de>
+
* mkgroup.c (enum_local_groups): Call print_win_error with GetLastError
as argument when LookupAccountXXX failed.
(enum_groups): Ditto.
diff --git a/winsup/utils/mkgroup.c b/winsup/utils/mkgroup.c
index 6854f09d1..700363ee9 100644
--- a/winsup/utils/mkgroup.c
+++ b/winsup/utils/mkgroup.c
@@ -348,10 +348,9 @@ enum_local_groups (BOOL domain, domlist_t *dom_or_machine, const char *sep,
if (disp_groupname != NULL)
{
mbstowcs (gname, disp_groupname, GNLEN + 1);
- rc = NetApiBufferAllocate (sizeof (LOCALGROUP_INFO_0),
- (void *) &buffer);
- buffer[0].lgrpi0_name = gname;
- entriesread = 1;
+ rc = NetLocalGroupGetInfo (servername, gname, 0, (void *) &buffer);
+ if (rc == ERROR_SUCCESS)
+ entriesread = 1;
}
else
rc = NetLocalGroupEnum (servername, 0, (void *) &buffer,