env: validate installer_ip from environment 59/53359/2
authorRoss Brattain <ross.b.brattain@intel.com>
Thu, 8 Mar 2018 22:45:06 +0000 (14:45 -0800)
committerRoss Brattain <ross.b.brattain@intel.com>
Tue, 20 Mar 2018 20:00:43 +0000 (13:00 -0700)
validate installer_ip is proper IPv4 address in case of user error

Change-Id: Ib01916bc85ec411c159af1564f5142177f464047
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
api/resources/v1/env.py

index 75c981a..6c9eb83 100644 (file)
@@ -10,12 +10,16 @@ from __future__ import absolute_import
 
 import errno
 import logging
+
+import ipaddress
 import os
 import subprocess
 import threading
 import time
 import uuid
 import glob
+
+import six
 import yaml
 import collections
 
@@ -269,6 +273,8 @@ class V1Env(ApiResource):
                     LOG.info('Openrc file not found')
                     installer_ip = os.environ.get('INSTALLER_IP',
                                                   '192.168.200.2')
+                    # validate installer_ip is a valid ipaddress
+                    installer_ip = str(ipaddress.IPv4Address(six.u(installer_ip)))
                     installer_type = os.environ.get('INSTALLER_TYPE', 'compass')
                     LOG.info('Getting openrc file from %s', installer_type)
                     self._get_remote_rc_file(rc_file,