From 50726e77804360f6cf8aeba02bb8bb4088965032 Mon Sep 17 00:00:00 2001 From: Adam Holmberg Date: Wed, 21 Sep 2016 15:46:11 +0800 Subject: [PATCH] Fix authentication problem when invoking clqsh copy from a SOURCE command Patch by Adam Holmberg; reviewed by Stefania Alborghetti for CASSANDRA-12642 --- CHANGES.txt | 1 + bin/cqlsh.py | 18 ++++++++++++------ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index 96f97f43c7..ee4015e662 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.2.8 + * Fix authentication problem when invoking clqsh copy from a SOURCE command (CASSANDRA-12642) * Decrement pending range calculator jobs counter in finally block (CASSANDRA-12554) * Add local address entry in PropertyFileSnitch (CASSANDRA-11332) diff --git a/bin/cqlsh.py b/bin/cqlsh.py index b631450be2..514fadab16 100644 --- a/bin/cqlsh.py +++ b/bin/cqlsh.py @@ -1903,15 +1903,21 @@ class Shell(cmd.Cmd): except IOError, e: self.printerr('Could not open %r: %s' % (fname, e)) return - subshell = Shell(self.hostname, self.port, - color=self.color, encoding=self.encoding, stdin=f, - tty=False, use_conn=self.conn, cqlver=self.cql_version, - keyspace=self.current_keyspace, + username = self.auth_provider.username if self.auth_provider else None + password = self.auth_provider.password if self.auth_provider else None + subshell = Shell(self.hostname, self.port, color=self.color, + username=username, password=password, + encoding=self.encoding, stdin=f, tty=False, use_conn=self.conn, + cqlver=self.cql_version, keyspace=self.current_keyspace, + tracing_enabled=self.tracing_enabled, + display_nanotime_format=self.display_nanotime_format, display_timestamp_format=self.display_timestamp_format, display_date_format=self.display_date_format, - display_nanotime_format=self.display_nanotime_format, display_float_precision=self.display_float_precision, - max_trace_wait=self.max_trace_wait) + display_timezone=self.display_timezone, + max_trace_wait=self.max_trace_wait, ssl=self.ssl, + request_timeout=self.session.default_timeout, + connect_timeout=self.conn.connect_timeout) subshell.cmdloop() f.close()