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:
Diffstat (limited to 'winsup/cygwin/external.cc')
-rw-r--r--winsup/cygwin/external.cc21
1 files changed, 20 insertions, 1 deletions
diff --git a/winsup/cygwin/external.cc b/winsup/cygwin/external.cc
index 4dc87bf80..47b18809c 100644
--- a/winsup/cygwin/external.cc
+++ b/winsup/cygwin/external.cc
@@ -1,7 +1,7 @@
/* external.cc: Interface to Cygwin internals from external programs.
Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
- 2008, 2009, 2010, 2011, 2012 Red Hat, Inc.
+ 2008, 2009, 2010, 2011, 2012, 2014 Red Hat, Inc.
Written by Christopher Faylor <cgf@cygnus.com>
@@ -26,6 +26,7 @@ details. */
#include "child_info.h"
#include "environ.h"
#include "cygserver_setpwd.h"
+#include "pwdgrp.h"
#include <unistd.h>
#include <stdlib.h>
#include <wchar.h>
@@ -553,6 +554,24 @@ cygwin_internal (cygwin_getinfo_types t, ...)
}
break;
+ case CW_GETPWSID:
+ {
+ va_arg (arg, int);
+ PSID psid = va_arg (arg, PSID);
+ cygpsid sid (psid);
+ res = (uintptr_t) internal_getpwsid (sid);
+ }
+ break;
+
+ case CW_GETGRSID:
+ {
+ va_arg (arg, int);
+ PSID psid = va_arg (arg, PSID);
+ cygpsid sid (psid);
+ res = (uintptr_t) internal_getgrsid (sid);
+ }
+ break;
+
default:
set_errno (ENOSYS);
}