[SCM] Samba Shared Repository - branch v3-3-test updated - release-3-2-0pre2-4353-g6e8daac

Michael Adam obnox at samba.org
Mon Nov 10 23:33:07 GMT 2008


The branch, v3-3-test has been updated
       via  6e8daac76fd3df05f9ab81ced95748b46ea01a62 (commit)
      from  a0e471fc3be0f8c9c66a6c0f242515e61d1301a5 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test


- Log -----------------------------------------------------------------
commit 6e8daac76fd3df05f9ab81ced95748b46ea01a62
Author: Michael Adam <obnox at samba.org>
Date:   Mon Nov 10 09:51:39 2008 +0100

    make keytab filename argument mandatory to "net rpc vampire keytab"
    
    This prevents unintended overwriting of the default path /etc/krb5.keytab (e.g.).
    
    Michael

-----------------------------------------------------------------------

Summary of changes:
 source/utils/net_rpc_samsync.c |   15 +++++++++++----
 1 files changed, 11 insertions(+), 4 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/utils/net_rpc_samsync.c b/source/utils/net_rpc_samsync.c
index c0922ef..73e6dd0 100644
--- a/source/utils/net_rpc_samsync.c
+++ b/source/utils/net_rpc_samsync.c
@@ -249,7 +249,10 @@ NTSTATUS rpc_vampire_keytab_internals(struct net_context *c,
 		return status;
 	}
 
-	if (argc >= 1) {
+	if (argc < 1) {
+		/* the caller should ensure that a filename is provided */
+		return NT_STATUS_INVALID_PARAMETER;
+	} else {
 		ctx->output_filename = argv[0];
 	}
 
@@ -299,9 +302,13 @@ static NTSTATUS rpc_vampire_keytab_ds_internals(struct net_context *c,
 	ctx->force_full_replication = c->opt_force_full_repl ? true : false;
 	ctx->clean_old_entries = c->opt_clean_old_entries ? true : false;
 
-	if (argc >= 1) {
+	if (argc < 1) {
+		/* the caller should ensure that a filename is provided */
+		return NT_STATUS_INVALID_PARAMETER;
+	} else {
 		ctx->output_filename = argv[0];
 	}
+
 	if (argc >= 2) {
 		ctx->object_dns = &argv[1];
 		ctx->object_count = argc - 1;
@@ -342,9 +349,9 @@ int rpc_vampire_keytab(struct net_context *c, int argc, const char **argv)
 {
 	int ret = 0;
 
-	if (c->display_usage) {
+	if (c->display_usage || (argc < 1)) {
 		d_printf("Usage:\n"
-			 "net rpc vampire keytab\n"
+			 "net rpc vampire keytab <keytabfile>\n"
 			 "    Dump remote SAM database to Kerberos keytab file\n");
 		return 0;
 	}


-- 
Samba Shared Repository


More information about the samba-cvs mailing list