summaryrefslogtreecommitdiffstats
path: root/src/providers/proxy/proxy.h
diff options
context:
space:
mode:
authorStephen Gallagher <sgallagh@redhat.com>2010-05-26 14:42:36 -0400
committerStephen Gallagher <sgallagh@redhat.com>2010-05-27 14:44:13 -0400
commit10afbe39cb81a1810dba486c4b8e46578bb300bb (patch)
tree19615080a6bd73b41212293174b3bc936c2e3169 /src/providers/proxy/proxy.h
parenta772f2e29661dda4c69124a4c794183798418ae4 (diff)
downloadsssd-10afbe39cb81a1810dba486c4b8e46578bb300bb.tar.gz
sssd-10afbe39cb81a1810dba486c4b8e46578bb300bb.tar.xz
sssd-10afbe39cb81a1810dba486c4b8e46578bb300bb.zip
Proxy provider PAM handling in child process
This patch adds a new tevent_req to the proxy provider, which will spawn short-lived child processes to handle PAM requests. These processes then call the proxied PAM stack and return the results via SBUS method reply. Once it is returned, the parent process kills the child. There is a maximum of ten child processes running simultaneously, after which requests will be queued for sending once a child slot frees up. The maximum processes will be made configurable at a later date (as this would violate string freeze).
Diffstat (limited to 'src/providers/proxy/proxy.h')
-rw-r--r--src/providers/proxy/proxy.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/providers/proxy/proxy.h b/src/providers/proxy/proxy.h
new file mode 100644
index 000000000..d95e50efe
--- /dev/null
+++ b/src/providers/proxy/proxy.h
@@ -0,0 +1,30 @@
+/*
+ SSSD
+
+ Proxy provider, private header file
+
+ Authors:
+ Sumit Bose <sbose@redhat.com>
+
+ Copyright (C) 2010 Red Hat
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#ifndef __PROXY_H__
+#define __PROXY_H__
+
+#define PROXY_CHILD_PIPE "private/proxy_child"
+
+#endif /* __PROXY_H__ */