diff options
author | Gerald (Jerry) Carter <jerry@samba.org> | 2008-09-15 15:41:37 -0500 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2008-09-16 10:27:49 -0700 |
commit | d6de32db2f8d080cb746b3032c128f210154b75e (patch) | |
tree | 3a28e1eefd2f2c3773aa0bb030372707d4e63f48 /source3/winbindd/winbindd_proto.h | |
parent | f2723d193d8a7963b937414ee32e5c6f529b9032 (diff) | |
download | samba-d6de32db2f8d080cb746b3032c128f210154b75e.tar.gz samba-d6de32db2f8d080cb746b3032c128f210154b75e.tar.bz2 samba-d6de32db2f8d080cb746b3032c128f210154b75e.zip |
winbindd: Add support for name aliasing.
* Add support user and group name aliasing by expanding
the ws_name_replace() and ws_name_return() functions.
The lookup path is
aliases -> qualified name -> SID
SID -> fully qualified name -> alias
In other words, the name aliasing support is a thin layer
built on top of SID/NAME translation.
* Rename the ws_name_XX() functions to normalize_name_map()
and normalize_name_unmap(). Chaneg interface to return
NTSTATUS rather than char *.
* Add associated cache validation functions.
Diffstat (limited to 'source3/winbindd/winbindd_proto.h')
-rw-r--r-- | source3/winbindd/winbindd_proto.h | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/source3/winbindd/winbindd_proto.h b/source3/winbindd/winbindd_proto.h index e0fc073a0a..4774bc8106 100644 --- a/source3/winbindd/winbindd_proto.h +++ b/source3/winbindd/winbindd_proto.h @@ -583,8 +583,22 @@ NTSTATUS lookup_usergroups_cached(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, const DOM_SID *user_sid, uint32 *p_num_groups, DOM_SID **user_sids); -void ws_name_replace( char *name, char replace ); -void ws_name_return( char *name, char replace ); + +NTSTATUS normalize_name_map(TALLOC_CTX *mem_ctx, + struct winbindd_domain *domain, + char *name, + char **normalized); +NTSTATUS normalize_name_unmap(TALLOC_CTX *mem_ctx, + char *name, + char **normalized); + +NTSTATUS resolve_username_to_alias(TALLOC_CTX *mem_ctx, + struct winbindd_domain *domain, + const char *name, char **alias); +NTSTATUS resolve_alias_to_username(TALLOC_CTX *mem_ctx, + struct winbindd_domain *domain, + const char *alias, char **name); + bool winbindd_can_contact_domain(struct winbindd_domain *domain); bool winbindd_internal_child(struct winbindd_child *child); void winbindd_set_locator_kdc_envs(const struct winbindd_domain *domain); |