diff options
Diffstat (limited to 'packaging/SuSE/samba-3.0.0-net_ads.diff')
-rw-r--r-- | packaging/SuSE/samba-3.0.0-net_ads.diff | 140 |
1 files changed, 140 insertions, 0 deletions
diff --git a/packaging/SuSE/samba-3.0.0-net_ads.diff b/packaging/SuSE/samba-3.0.0-net_ads.diff new file mode 100644 index 0000000000..b1224c0cef --- /dev/null +++ b/packaging/SuSE/samba-3.0.0-net_ads.diff @@ -0,0 +1,140 @@ +diff -Nur source/utils/net.c source/utils/net.c +--- source/utils/net.c Fri Sep 27 09:42:34 2002 ++++ source/utils/net.c Tue Oct 1 12:22:00 2002 +@@ -68,6 +68,7 @@ + int opt_port = 0; + int opt_maxusers = -1; + char *opt_comment = ""; ++char *opt_container = "cn=Users"; + int opt_flags = -1; + int opt_jobid = 0; + int opt_timeout = 0; +@@ -459,6 +460,7 @@ + {"myname", 'n', POPT_ARG_STRING, &opt_requester_name}, + {"conf", 's', POPT_ARG_STRING, &servicesf}, + {"server", 'S', POPT_ARG_STRING, &opt_host}, ++ {"container", 'c', POPT_ARG_STRING, &opt_container}, + {"comment", 'C', POPT_ARG_STRING, &opt_comment}, + {"maxusers", 'M', POPT_ARG_INT, &opt_maxusers}, + {"flags", 'F', POPT_ARG_INT, &opt_flags}, +diff -Nur source/utils/net.h source/utils/net.h +--- source/utils/net.h Tue Jun 25 04:29:09 2002 ++++ source/utils/net.h Tue Oct 1 12:19:51 2002 +@@ -38,10 +38,8 @@ + + extern int opt_maxusers; + extern char *opt_comment; ++extern char *opt_container; + extern int opt_flags; +- +-extern char *opt_comment; +- + extern char *opt_target_workgroup; + extern int opt_long_list_entries; + extern int opt_reboot; +diff -Nur source/utils/net_ads.c source/utils/net_ads.c +--- source/utils/net_ads.c Tue Sep 17 14:15:52 2002 ++++ source/utils/net_ads.c Tue Oct 1 12:33:44 2002 +@@ -255,7 +255,7 @@ + goto done; + } + +- status = ads_add_user_acct(ads, argv[0], opt_comment); ++ status = ads_add_user_acct(ads, argv[0], opt_container, opt_comment); + + if (!ADS_ERR_OK(status)) { + d_printf("Could not add user %s: %s\n", argv[0], +@@ -431,7 +431,7 @@ + goto done; + } + +- status = ads_add_group_acct(ads, argv[0], opt_comment); ++ status = ads_add_group_acct(ads, argv[0], opt_container, opt_comment); + + if (ADS_ERR_OK(status)) { + d_printf("Group %s added\n", argv[0]); +diff -Nur source/utils/net_help.c source/utils/net_help.c +--- source/utils/net_help.c Tue Sep 24 20:10:30 2002 ++++ source/utils/net_help.c Tue Oct 1 13:01:50 2002 +@@ -69,14 +69,14 @@ + "\n\tDelete specified user\n"); + d_printf("\nnet [<method>] user INFO <name> [misc. options] [targets]"\ + "\n\tList the domain groups of the specified user\n"); +- d_printf("\nnet [<method>] user ADD <name> [password] "\ ++ d_printf("\nnet [<method>] user ADD <name> [password] [-c container] "\ + "[-F user flags] [misc. options]"\ + " [targets]\n\tAdd specified user\n"); + + net_common_methods_usage(argc, argv); + net_common_flags_usage(argc, argv); +- d_printf( +- "\t-C or --comment=<comment>\tdescriptive comment (for add only)\n"); ++ d_printf("\t-C or --comment=<comment>\tdescriptive comment (for add only)\n"); ++ d_printf("\t-c or --container=<container>\tLDAP container, defaults to cn=Users (for add in ADS only)\n"); + return -1; + } + +@@ -85,12 +85,12 @@ + "\n\tList user groups\n\n"); + d_printf("net [<method>] group DELETE <name> [misc. options] [targets]"\ + "\n\tDelete specified group\n"); +- d_printf("\nnet [<method>] group ADD <name> [-C comment]"\ ++ d_printf("\nnet [<method>] group ADD <name> [-C comment] [-c container]"\ + " [misc. options] [targets]\n\tCreate specified group\n"); + net_common_methods_usage(argc, argv); + net_common_flags_usage(argc, argv); +- d_printf( +- "\t-C or --comment=<comment>\tdescriptive comment (for add only)\n"); ++ d_printf("\t-C or --comment=<comment>\tdescriptive comment (for add only)\n"); ++ d_printf("\t-c or --container=<container>\tLDAP container, defaults to cn=Users (for add in ADS only)\n"); + return -1; + } + +diff -Nur source/libads/ldap_user.c source/libads/ldap_user.c +--- source/libads/ldap_user.c Wed Aug 7 12:33:22 2002 ++++ source/libads/ldap_user.c Tue Oct 1 12:46:08 2002 +@@ -38,7 +38,7 @@ + } + + ADS_STATUS ads_add_user_acct(ADS_STRUCT *ads, const char *user, +- const char *fullname) ++ const char *container, const char *fullname) + { + TALLOC_CTX *ctx; + ADS_MODLIST mods; +@@ -57,7 +60,7 @@ + + if (!(upn = talloc_asprintf(ctx, "%s@%s", user, ads->config.realm))) + goto done; +- if (!(new_dn = talloc_asprintf(ctx, "cn=%s,cn=Users,%s", name, ++ if (!(new_dn = talloc_asprintf(ctx, "cn=%s,%s,%s", name, container, + ads->config.bind_path))) + goto done; + if (!(controlstr = talloc_asprintf(ctx, "%u", UF_NORMAL_ACCOUNT))) +@@ -80,7 +83,7 @@ + } + + ADS_STATUS ads_add_group_acct(ADS_STRUCT *ads, const char *group, +- const char *comment) ++ const char *container, const char *comment) + { + TALLOC_CTX *ctx; + ADS_MODLIST mods; +@@ -93,7 +96,7 @@ + + status = ADS_ERROR(LDAP_NO_MEMORY); + +- if (!(new_dn = talloc_asprintf(ctx, "cn=%s,cn=Users,%s", group, ++ if (!(new_dn = talloc_asprintf(ctx, "cn=%s,%s,%s", group, container, + ads->config.bind_path))) + goto done; + if (!(mods = ads_init_mods(ctx))) +@@ -102,7 +105,7 @@ + ads_mod_str(ctx, &mods, "cn", group); + ads_mod_strlist(ctx, &mods, "objectClass",objectClass); + ads_mod_str(ctx, &mods, "name", group); +- if (comment) ++ if (comment && *comment) + ads_mod_str(ctx, &mods, "description", comment); + ads_mod_str(ctx, &mods, "sAMAccountName", group); + status = ads_gen_add(ads, new_dn, mods); |