s3: Remove unused arg "user_sid" from winbindd_store_creds
[abartlet/samba.git/.git] / source3 / winbindd / winbindd_creds.c
index 62facb67698838937a1200f2b7e968dd00073039..11dbfed6ba85ea17e920d3458a5c485f4b5ecff3 100644 (file)
@@ -4,23 +4,24 @@
    Winbind daemon - cached credentials funcions
 
    Copyright (C) Guenther Deschner 2005
-   
+
    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/>.
 */
 
 #include "includes.h"
 #include "winbindd.h"
+#include "../libcli/auth/libcli_auth.h"
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_WINBIND
 
 
 NTSTATUS winbindd_get_creds(struct winbindd_domain *domain,
                            TALLOC_CTX *mem_ctx,
-                           const DOM_SID *sid,
-                           NET_USER_INFO_3 **info3,
+                           const struct dom_sid *sid,
+                           struct netr_SamInfo3 **info3,
                            const uint8 *cached_nt_pass[NT_HASH_LEN],
                            const uint8 *cred_salt[NT_HASH_LEN])
 {
-       NET_USER_INFO_3 *info;
+       struct netr_SamInfo3 *info;
        NTSTATUS status;
 
        status = wcache_get_creds(domain, mem_ctx, sid, cached_nt_pass, cred_salt);
@@ -56,31 +57,24 @@ NTSTATUS winbindd_store_creds(struct winbindd_domain *domain,
                              TALLOC_CTX *mem_ctx, 
                              const char *user, 
                              const char *pass, 
-                             NET_USER_INFO_3 *info3,
-                             const DOM_SID *user_sid)
+                             struct netr_SamInfo3 *info3)
 {
        NTSTATUS status;
        uchar nt_pass[NT_HASH_LEN];
-       DOM_SID cred_sid;
+       struct dom_sid cred_sid;
 
        if (info3 != NULL) {
-       
-               DOM_SID sid;
-               sid_copy(&sid, &(info3->dom_sid.sid));
-               sid_append_rid(&sid, info3->user_rid);
-               sid_copy(&cred_sid, &sid);
-               info3->user_flgs |= LOGON_CACHED_ACCOUNT;
-               
-       } else if (user_sid != NULL) {
-       
-               sid_copy(&cred_sid, user_sid);
-               
+
+               sid_compose(&cred_sid, info3->base.domain_sid,
+                           info3->base.rid);
+               info3->base.user_flags |= NETLOGON_CACHED_ACCOUNT;
+
        } else if (user != NULL) {
-       
+
                /* do lookup ourself */
 
                enum lsa_SidType type;
-               
+
                if (!lookup_cached_name(mem_ctx,
                                        domain->name,
                                        user,
@@ -91,7 +85,7 @@ NTSTATUS winbindd_store_creds(struct winbindd_domain *domain,
        } else {
                return NT_STATUS_INVALID_PARAMETER;
        }
-               
+
        if (pass) {
 
                int count = 0;
@@ -138,17 +132,9 @@ NTSTATUS winbindd_update_creds_by_info3(struct winbindd_domain *domain,
                                        TALLOC_CTX *mem_ctx,
                                        const char *user,
                                        const char *pass,
-                                       NET_USER_INFO_3 *info3)
-{
-       return winbindd_store_creds(domain, mem_ctx, user, pass, info3, NULL);
-}
-
-NTSTATUS winbindd_update_creds_by_sid(struct winbindd_domain *domain,
-                                     TALLOC_CTX *mem_ctx,
-                                     const DOM_SID *sid,
-                                     const char *pass)
+                                       struct netr_SamInfo3 *info3)
 {
-       return winbindd_store_creds(domain, mem_ctx, NULL, pass, NULL, sid);
+       return winbindd_store_creds(domain, mem_ctx, user, pass, info3);
 }
 
 NTSTATUS winbindd_update_creds_by_name(struct winbindd_domain *domain,
@@ -156,7 +142,7 @@ NTSTATUS winbindd_update_creds_by_name(struct winbindd_domain *domain,
                                       const char *user,
                                       const char *pass)
 {
-       return winbindd_store_creds(domain, mem_ctx, user, pass, NULL, NULL);
+       return winbindd_store_creds(domain, mem_ctx, user, pass, NULL);
 }