summaryrefslogtreecommitdiff
path: root/nslcd/common.h
diff options
context:
space:
mode:
authorArthur de Jong <arthur@arthurdejong.org>2009-08-12 21:41:10 +0000
committerArthur de Jong <arthur@arthurdejong.org>2009-08-12 21:41:10 +0000
commit8974d0b9bf3326e3e4fae7719df0091231c8132f (patch)
tree0584c6d3580c4b9b6a6e8e1be7be0d6e08cb3503 /nslcd/common.h
parent6c9a27d1bfed99845b22d0784ffcf3cf24978489 (diff)
don't return password hashes at all for non-root users, based on a patch by Alexander V. Chernikov <melifaro@ipfw.ru>
git-svn-id: http://arthurdejong.org/svn/nss-pam-ldapd/nss-ldapd@969 ef36b2f9-881f-0410-afb5-c4e39611909c
Diffstat (limited to 'nslcd/common.h')
-rw-r--r--nslcd/common.h15
1 files changed, 10 insertions, 5 deletions
diff --git a/nslcd/common.h b/nslcd/common.h
index 37ddc9a..48674c9 100644
--- a/nslcd/common.h
+++ b/nslcd/common.h
@@ -124,9 +124,9 @@ int nslcd_netgroup_byname(TFILE *fp,MYLDAP_SESSION *session);
int nslcd_network_byname(TFILE *fp,MYLDAP_SESSION *session);
int nslcd_network_byaddr(TFILE *fp,MYLDAP_SESSION *session);
int nslcd_network_all(TFILE *fp,MYLDAP_SESSION *session);
-int nslcd_passwd_byname(TFILE *fp,MYLDAP_SESSION *session);
-int nslcd_passwd_byuid(TFILE *fp,MYLDAP_SESSION *session);
-int nslcd_passwd_all(TFILE *fp,MYLDAP_SESSION *session);
+int nslcd_passwd_byname(TFILE *fp,MYLDAP_SESSION *session,uid_t calleruid);
+int nslcd_passwd_byuid(TFILE *fp,MYLDAP_SESSION *session,uid_t calleruid);
+int nslcd_passwd_all(TFILE *fp,MYLDAP_SESSION *session,uid_t calleruid);
int nslcd_protocol_byname(TFILE *fp,MYLDAP_SESSION *session);
int nslcd_protocol_bynumber(TFILE *fp,MYLDAP_SESSION *session);
int nslcd_protocol_all(TFILE *fp,MYLDAP_SESSION *session);
@@ -144,9 +144,14 @@ int nslcd_pam_sess_o(TFILE *fp,MYLDAP_SESSION *session);
int nslcd_pam_sess_c(TFILE *fp,MYLDAP_SESSION *session);
int nslcd_pam_pwmod(TFILE *fp,MYLDAP_SESSION *session);
-/* macro for generating service handling code */
+/* macros for generating service handling code */
#define NSLCD_HANDLE(db,fn,readfn,logcall,action,mkfilter,writefn) \
- int nslcd_##db##_##fn(TFILE *fp,MYLDAP_SESSION *session) \
+ NSLCD_HANDLE_PARAMS(db,fn,,readfn,logcall,action,mkfilter,writefn)
+#define COMMA ,
+#define NSLCD_HANDLE_UID(db,fn,readfn,logcall,action,mkfilter,writefn) \
+ NSLCD_HANDLE_PARAMS(db,fn,COMMA uid_t calleruid,readfn,logcall,action,mkfilter,writefn)
+#define NSLCD_HANDLE_PARAMS(db,fn,params,readfn,logcall,action,mkfilter,writefn) \
+ int nslcd_##db##_##fn(TFILE *fp,MYLDAP_SESSION *session params ) \
{ \
/* define common variables */ \
int32_t tmpint32; \