summaryrefslogtreecommitdiff
path: root/source3/utils/net_ads.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/utils/net_ads.c')
-rw-r--r--source3/utils/net_ads.c50
1 files changed, 11 insertions, 39 deletions
diff --git a/source3/utils/net_ads.c b/source3/utils/net_ads.c
index af290ce83c..ad405fe68c 100644
--- a/source3/utils/net_ads.c
+++ b/source3/utils/net_ads.c
@@ -56,31 +56,6 @@ int net_ads_usage(int argc, const char **argv)
}
-/*
- this implements the CLDAP based netlogon lookup requests
- for finding the domain controller of a ADS domain
-*/
-static int net_ads_lookup(int argc, const char **argv)
-{
- ADS_STRUCT *ads;
-
- ads = ads_init(NULL, NULL, opt_host);
- if (ads) {
- ads->auth.flags |= ADS_AUTH_NO_BIND;
- }
-
- ads_connect(ads);
-
- if (!ads || !ads->config.realm) {
- d_printf("Didn't find the cldap server!\n");
- return -1;
- }
-
- return ads_cldap_netlogon(ads);
-}
-
-
-
static int net_ads_info(int argc, const char **argv)
{
ADS_STRUCT *ads;
@@ -88,7 +63,7 @@ static int net_ads_info(int argc, const char **argv)
ads = ads_init(NULL, NULL, opt_host);
if (ads) {
- ads->auth.flags |= ADS_AUTH_NO_BIND;
+ ads->auth.no_bind = 1;
}
ads_connect(ads);
@@ -103,7 +78,6 @@ static int net_ads_info(int argc, const char **argv)
d_printf("Realm: %s\n", ads->config.realm);
d_printf("Bind Path: %s\n", ads->config.bind_path);
d_printf("LDAP port: %d\n", ads->ldap_port);
- d_printf("Server time: %s\n", http_timestring(ads->config.current_time));
return 0;
}
@@ -200,7 +174,7 @@ static int net_ads_workgroup(int argc, const char **argv)
-static BOOL usergrp_display(char *field, void **values, void *data_area)
+static void usergrp_display(char *field, void **values, void *data_area)
{
char **disp_fields = (char **) data_area;
@@ -214,16 +188,15 @@ static BOOL usergrp_display(char *field, void **values, void *data_area)
}
SAFE_FREE(disp_fields[0]);
SAFE_FREE(disp_fields[1]);
- return True;
+ return;
}
if (!values) /* must be new field, indicate string field */
- return True;
+ return;
if (StrCaseCmp(field, "sAMAccountName") == 0) {
disp_fields[0] = strdup((char *) values[0]);
}
if (StrCaseCmp(field, "description") == 0)
disp_fields[1] = strdup((char *) values[0]);
- return True;
}
static int net_ads_user_usage(int argc, const char **argv)
@@ -272,7 +245,7 @@ static int ads_user_add(int argc, const char **argv)
/* try setting the password */
asprintf(&upn, "%s@%s", argv[0], ads->config.realm);
- status = krb5_set_password(ads->auth.kdc_server, upn, argv[1], ads->auth.time_offset);
+ status = krb5_set_password(ads->auth.kdc_server, upn, argv[1]);
safe_free(upn);
if (ADS_ERR_OK(status)) {
d_printf("User %s added\n", argv[0]);
@@ -637,7 +610,7 @@ int net_ads_join(int argc, const char **argv)
rc = ads_search_dn(ads, &res, dn, NULL);
ads_msgfree(ads, res);
- if (rc.error_type == ADS_ERROR_LDAP && rc.err.rc == LDAP_NO_SUCH_OBJECT) {
+ if (rc.error_type == ADS_ERROR_LDAP && rc.rc == LDAP_NO_SUCH_OBJECT) {
d_printf("ads_join_realm: organizational unit %s does not exist (dn:%s)\n",
org_unit, dn);
return -1;
@@ -655,15 +628,15 @@ int net_ads_join(int argc, const char **argv)
return -1;
}
- rc = ads_domain_sid(ads, &dom_sid);
+ rc = ads_set_machine_password(ads, global_myname, password);
if (!ADS_ERR_OK(rc)) {
- d_printf("ads_domain_sid: %s\n", ads_errstr(rc));
+ d_printf("ads_set_machine_password: %s\n", ads_errstr(rc));
return -1;
}
- rc = ads_set_machine_password(ads, global_myname, password);
+ rc = ads_domain_sid(ads, &dom_sid);
if (!ADS_ERR_OK(rc)) {
- d_printf("ads_set_machine_password: %s\n", ads_errstr(rc));
+ d_printf("ads_domain_sid: %s\n", ads_errstr(rc));
return -1;
}
@@ -883,7 +856,7 @@ static int net_ads_password(int argc, const char **argv)
new_password = getpass(prompt);
ret = kerberos_set_password(ads->auth.kdc_server, auth_principal,
- auth_password, argv[0], new_password, ads->auth.time_offset);
+ auth_password, argv[0], new_password);
if (!ADS_ERR_OK(ret)) {
d_printf("Password change failed :-( ...\n");
ads_destroy(&ads);
@@ -1036,7 +1009,6 @@ int net_ads(int argc, const char **argv)
{"PRINTER", net_ads_printer},
{"SEARCH", net_ads_search},
{"WORKGROUP", net_ads_workgroup},
- {"LOOKUP", net_ads_lookup},
{"HELP", net_ads_help},
{NULL, NULL}
};