Michael Pasternak has uploaded a new change for review.

Change subject: cli: implement insecure flag #848046
......................................................................

cli: implement insecure flag #848046

by default if not specified key_file, cert_file, ca_file, SSL
connection initiation will fail, unless raised 'insecure' flag

https://bugzilla.redhat.com/show_bug.cgi?id=848046

Change-Id: I364b7ec3f060c5cd47b5642edf7a294dabf20d44
Signed-off-by: Michael Pasternak <[email protected]>
---
M src/ovirtcli/command/connect.py
M src/ovirtcli/context.py
M src/ovirtcli/options.py
M src/ovirtcli/settings.py
M src/ovirtcli/shell/connectcmdshell.py
5 files changed, 8 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine-cli refs/changes/52/7252/1

diff --git a/src/ovirtcli/command/connect.py b/src/ovirtcli/command/connect.py
index e063030..dffc213 100644
--- a/src/ovirtcli/command/connect.py
+++ b/src/ovirtcli/command/connect.py
@@ -51,6 +51,7 @@
          * [key-file]   - The client PEM key file to use.
          * [cert-file]  - The client PEM certificate file to use.
          * [ca-file]    - The server CA certificate file to use.
+         * [insecure]   - allow connecting to SSL sites without certificates.
          * [port]       - The port to use (if not specified in url).
          * [timeout]    - The timeout on request.
         """
@@ -69,6 +70,7 @@
         port = settings.get('ovirt-shell:port')
         timeout = settings.get('ovirt-shell:timeout')
         debug = settings.get('cli:debug')
+        insecure = settings.get('ovirt-shell:insecure')
 
         if self.context.connection is not None:
             stdout.write('already connected\n')
@@ -93,6 +95,7 @@
                                           key_file=key_file,
                                           cert_file=cert_file,
                                           ca_file=ca_file,
+                                          insecure=insecure,
                                           port=port if port != -1 else None,
                                           timeout=timeout if timeout != -1 
else None,
                                           debug=debug)
diff --git a/src/ovirtcli/context.py b/src/ovirtcli/context.py
index 6d2ad6e..e99bb6d 100644
--- a/src/ovirtcli/context.py
+++ b/src/ovirtcli/context.py
@@ -18,7 +18,6 @@
 from cli.command import *
 from cli.context import ExecutionContext
 
-
 from ovirtcli.settings import OvirtCliSettings
 from ovirtcli.command import *
 from ovirtcli.format import *
@@ -26,9 +25,6 @@
 from ovirtcli.object import create
 import pkg_resources
 from ovirtcli.command.info import InfoCommand
-import sys
-import inspect
-from ovirtcli.utils.versionhelper import VersionHelper
 
 
 class OvirtCliExecutionContext(ExecutionContext):
@@ -147,6 +143,7 @@
         self.settings['ovirt-shell:key_file'] = None
         self.settings['ovirt-shell:cert_file'] = None
         self.settings['ovirt-shell:ca_file'] = None
+        self.settings['ovirt-shell:insecure'] = False
         self.settings['ovirt-shell:port'] = -1
         self.settings['ovirt-shell:timeout'] = -1
         self.settings['cli:debug'] = False
diff --git a/src/ovirtcli/options.py b/src/ovirtcli/options.py
index 9f9eb9e..64b3361 100644
--- a/src/ovirtcli/options.py
+++ b/src/ovirtcli/options.py
@@ -41,6 +41,8 @@
         self.add_option('-K', '--key-file', help='specify client PEM key-file')
         self.add_option('-C', '--cert-file', help='specify client PEM 
cert-file')
         self.add_option('-A', '--ca-file', help='specify server CA cert-file')
+        self.add_option('-I', '--insecure', help='allow connecting to SSL 
sites without certificates',
+                        action='store_true')
         self.add_option('-P', '--port', help='specify port')
         self.add_option('-T', '--timeout', help='specify timeout')
         self.add_option('-c', '--connect', action='store_true',
diff --git a/src/ovirtcli/settings.py b/src/ovirtcli/settings.py
index 6671657..19421c2 100644
--- a/src/ovirtcli/settings.py
+++ b/src/ovirtcli/settings.py
@@ -53,6 +53,7 @@
         ('ovirt-shell:key_file', str, None),
         ('ovirt-shell:cert_file', str, None),
         ('ovirt-shell:ca_file', str, None),
+        ('ovirt-shell:insecure', boolean, False),
         ('ovirt-shell:port', int, -1),
         ('ovirt-shell:timeout', int, -1),
         ('ovirt-shell:input_format', enum('xml'), 'xml'),
diff --git a/src/ovirtcli/shell/connectcmdshell.py 
b/src/ovirtcli/shell/connectcmdshell.py
index e5cf25b..31f5a4b 100644
--- a/src/ovirtcli/shell/connectcmdshell.py
+++ b/src/ovirtcli/shell/connectcmdshell.py
@@ -24,7 +24,7 @@
 
 class ConnectCmdShell(CmdShell):
     NAME = 'connect'
-    OPTIONS = [ 'url', 'user', 'password', 'key-file', 'cert-file', 'ca-file', 
'port', 'timeout']
+    OPTIONS = [ 'url', 'user', 'password', 'key-file', 'cert-file', 'ca-file', 
'insecure', 'port', 'timeout']
 
     def __init__(self, context, parser):
         CmdShell.__init__(self, context, parser)


--
To view, visit http://gerrit.ovirt.org/7252
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I364b7ec3f060c5cd47b5642edf7a294dabf20d44
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine-cli
Gerrit-Branch: master
Gerrit-Owner: Michael Pasternak <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to