Changeset 740 for vendor/current/source3/libads/util.c
- Timestamp:
- Nov 14, 2012, 12:59:34 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
vendor/current/source3/libads/util.c
r414 r740 19 19 20 20 #include "includes.h" 21 #include "ads.h" 22 #include "secrets.h" 21 23 22 24 #ifdef HAVE_KRB5 … … 52 54 return ret; 53 55 } 54 55 ADS_STATUS ads_guess_service_principal(ADS_STRUCT *ads,56 char **returned_principal)57 {58 char *princ = NULL;59 60 if (ads->server.realm && ads->server.ldap_server) {61 char *server, *server_realm;62 63 server = SMB_STRDUP(ads->server.ldap_server);64 server_realm = SMB_STRDUP(ads->server.realm);65 66 if (!server || !server_realm) {67 SAFE_FREE(server);68 SAFE_FREE(server_realm);69 return ADS_ERROR(LDAP_NO_MEMORY);70 }71 72 strlower_m(server);73 strupper_m(server_realm);74 if (asprintf(&princ, "ldap/%s@%s", server, server_realm) == -1) {75 SAFE_FREE(server);76 SAFE_FREE(server_realm);77 return ADS_ERROR(LDAP_NO_MEMORY);78 }79 80 SAFE_FREE(server);81 SAFE_FREE(server_realm);82 83 if (!princ) {84 return ADS_ERROR(LDAP_NO_MEMORY);85 }86 } else if (ads->config.realm && ads->config.ldap_server_name) {87 char *server, *server_realm;88 89 server = SMB_STRDUP(ads->config.ldap_server_name);90 server_realm = SMB_STRDUP(ads->config.realm);91 92 if (!server || !server_realm) {93 SAFE_FREE(server);94 SAFE_FREE(server_realm);95 return ADS_ERROR(LDAP_NO_MEMORY);96 }97 98 strlower_m(server);99 strupper_m(server_realm);100 if (asprintf(&princ, "ldap/%s@%s", server, server_realm) == -1) {101 SAFE_FREE(server);102 SAFE_FREE(server_realm);103 return ADS_ERROR(LDAP_NO_MEMORY);104 }105 106 SAFE_FREE(server);107 SAFE_FREE(server_realm);108 109 if (!princ) {110 return ADS_ERROR(LDAP_NO_MEMORY);111 }112 }113 114 if (!princ) {115 return ADS_ERROR(LDAP_PARAM_ERROR);116 }117 118 *returned_principal = princ;119 120 return ADS_SUCCESS;121 }122 123 56 #endif
Note:
See TracChangeset
for help on using the changeset viewer.