Mercurial > illumos > illumos-gate
diff usr/src/lib/smbsrv/libmlsvc/common/samlib.c @ 10717:fe0545fc3cdd
6612607 CIFS ADS client should use ldap_sasl_interactive_bind_s API
6877755 smbd should not route stderr, stdout to /dev/null
6882701 Wrong error message for attempt to map local user to Windows group, or vice versa
6885105 Potential for deadlock in smb_node_set_delete_on_close()
6881928 smbd core generated when running a script to join domain, set abe properties
6885538 Reduce dependencies on libsmbrdr
6820325 cifs service can't start on multi vlan+ipmp configuration
author | Alan Wright <amw@Sun.COM> |
---|---|
date | Mon, 05 Oct 2009 11:03:34 -0700 |
parents | ee04788f8605 |
children | 37e5dcdf36d3 |
line wrap: on
line diff
--- a/usr/src/lib/smbsrv/libmlsvc/common/samlib.c Mon Oct 05 13:48:48 2009 -0400 +++ b/usr/src/lib/smbsrv/libmlsvc/common/samlib.c Mon Oct 05 11:03:34 2009 -0700 @@ -31,7 +31,6 @@ #include <alloca.h> #include <smbsrv/libsmb.h> -#include <smbsrv/libsmbrdr.h> #include <smbsrv/libmlsvc.h> #include <smbsrv/ntstatus.h> @@ -114,7 +113,9 @@ DWORD rid; DWORD status; int rc; - char *user = smbrdr_ipc_get_user(); + char user[SMB_USERNAME_MAXLEN]; + + smb_ipc_get_user(user, SMB_USERNAME_MAXLEN); rc = samr_open(server, domain_name, user, SAM_CONNECT_CREATE_ACCOUNT, &samr_handle); @@ -199,7 +200,9 @@ DWORD access_mask; DWORD status; int rc; - char *user = smbrdr_ipc_get_user(); + char user[SMB_USERNAME_MAXLEN]; + + smb_ipc_get_user(user, SMB_USERNAME_MAXLEN); rc = samr_open(server, domain_name, user, SAM_LOOKUP_INFORMATION, &samr_handle); @@ -250,7 +253,9 @@ DWORD access_mask; DWORD status; int rc; - char *user = smbrdr_ipc_get_user(); + char user[SMB_USERNAME_MAXLEN]; + + smb_ipc_get_user(user, SMB_USERNAME_MAXLEN); rc = samr_open(server, domain_name, user, SAM_LOOKUP_INFORMATION, &samr_handle); @@ -306,7 +311,9 @@ struct samr_sid *domain_sid; int rc; DWORD status; - char *user = smbrdr_ipc_get_user(); + char user[SMB_USERNAME_MAXLEN]; + + smb_ipc_get_user(user, SMB_USERNAME_MAXLEN); *rid_ret = 0; @@ -352,7 +359,9 @@ mlsvc_handle_t samr_handle; DWORD status; int rc; - char *user = smbrdr_ipc_get_user(); + char user[SMB_USERNAME_MAXLEN]; + + smb_ipc_get_user(user, SMB_USERNAME_MAXLEN); rc = samr_open(server, domain_name, user, SAM_ENUM_LOCAL_DOMAIN, &samr_handle); @@ -399,21 +408,20 @@ static struct samr_sid * sam_get_domain_sid(mlsvc_handle_t *samr_handle, char *server, char *domain_name) { - struct samr_sid *sid = NULL; - smb_domain_t domain; + smb_sid_t *sid = NULL; + smb_domainex_t domain; if (ndr_rpc_server_os(samr_handle) == NATIVE_OS_WIN2000) { if (!smb_domain_getinfo(&domain)) { if (lsa_query_account_domain_info(server, domain_name, - &domain.d_info) != NT_STATUS_SUCCESS) + &domain.d_primary) != NT_STATUS_SUCCESS) return (NULL); } - sid = (struct samr_sid *)smb_sid_fromstr(domain.d_info.di_sid); + sid = smb_sid_fromstr(domain.d_primary.di_sid); } else { - sid = (struct samr_sid *)samr_lookup_domain(samr_handle, - domain_name); + sid = samr_lookup_domain(samr_handle, domain_name); } - return (sid); + return ((struct samr_sid *)sid); }