summaryrefslogtreecommitdiff
path: root/source3/nsswitch/winbindd.h
diff options
context:
space:
mode:
authorJim McDonough <jmcd@samba.org>2003-02-20 22:46:37 +0000
committerJim McDonough <jmcd@samba.org>2003-02-20 22:46:37 +0000
commit5bec7f5fcac1a3e5a48b04f140b96f03b88f0965 (patch)
tree5cb222ca209a4159336997d58f664d255642ba71 /source3/nsswitch/winbindd.h
parent8d8a8c9633ea04d269d70b1fa8f4393cc73f7bbd (diff)
downloadsamba-5bec7f5fcac1a3e5a48b04f140b96f03b88f0965.tar.gz
samba-5bec7f5fcac1a3e5a48b04f140b96f03b88f0965.tar.bz2
samba-5bec7f5fcac1a3e5a48b04f140b96f03b88f0965.zip
From aliguori@us.ibm.com:
This patch adds the architecture for an IDMAP backend system including a new smb.conf parameter "winbind backend". Right now, the only valid value is "tdb" but I'm currently working on an LDAP backend. (This used to be commit 35e4448dcb2deb0d5d34d9e974a49f2fb31f1356)
Diffstat (limited to 'source3/nsswitch/winbindd.h')
-rw-r--r--source3/nsswitch/winbindd.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/source3/nsswitch/winbindd.h b/source3/nsswitch/winbindd.h
index 164b7ffda7..a498b76626 100644
--- a/source3/nsswitch/winbindd.h
+++ b/source3/nsswitch/winbindd.h
@@ -4,6 +4,7 @@
Winbind daemon for ntdom nss module
Copyright (C) Tim Potter 2000
+ Copyright (C) Anthony Liguori 2003
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
@@ -195,6 +196,30 @@ typedef struct {
POLICY_HND pol;
} CLI_POLICY_HND;
+/* Filled out by IDMAP backends */
+struct idmap_methods {
+ /* Called when backend is first loaded */
+ BOOL (*init)(void);
+
+ BOOL (*get_sid_from_uid)(uid_t uid, DOM_SID *sid);
+ BOOL (*get_sid_from_gid)(gid_t gid, DOM_SID *sid);
+
+ BOOL (*get_uid_from_sid)(DOM_SID *sid, uid_t *uid);
+ BOOL (*get_gid_from_sid)(DOM_SID *sid, gid_t *gid);
+
+ BOOL (*get_rid_from_uid)(uid_t uid, uint32 *user_rid,
+ struct winbindd_domain **domain);
+ BOOL (*get_rid_from_gid)(gid_t gid, uint32 *group_rid,
+ struct winbindd_domain **domain);
+ BOOL (*get_uid_from_rid)(const char *dom_name, uint32 rid, uid_t *uid);
+ BOOL (*get_gid_from_rid)(const char *dom_name, uint32 rid, gid_t *gid);
+
+ /* Called when backend is unloaded */
+ BOOL (*close)(void);
+ /* Called to dump backend status */
+ void (*status)(void);
+};
+
#include "winbindd_proto.h"
#include "rpc_parse.h"