commit f9c3f7236de15d503a3904d252696341d912ae16 Author: Jim McDonough Date: Thu Aug 12 17:51:02 2010 -0400 s3-libnet: fix bug #6364: Pull realm from supplied username on libnet join diff --git a/source3/libnet/libnet_join.c b/source3/libnet/libnet_join.c index 736a919..f14bffd 100644 --- a/source3/libnet/libnet_join.c +++ b/source3/libnet/libnet_join.c @@ -103,6 +103,7 @@ static ADS_STATUS libnet_connect_ads(const char *dns_domain_name, { ADS_STATUS status; ADS_STRUCT *my_ads = NULL; + char *cp; my_ads = ads_init(dns_domain_name, netbios_domain_name, @@ -114,6 +115,12 @@ static ADS_STATUS libnet_connect_ads(const char *dns_domain_name, if (user_name) { SAFE_FREE(my_ads->auth.user_name); my_ads->auth.user_name = SMB_STRDUP(user_name); + if ((cp = strchr_m(my_ads->auth.user_name, '@'))!=0) { + *cp++ = '\0'; + SAFE_FREE(my_ads->auth.realm); + my_ads->auth.realm = smb_xstrdup(cp); + strupper_m(my_ads->auth.realm); + } } if (password) {