aboutsummaryrefslogtreecommitdiffstats
path: root/meta-python/recipes-extended/python-pykickstart/files/0002-pykickstart-parser.py-add-lock-for-readKickstart-and.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-python/recipes-extended/python-pykickstart/files/0002-pykickstart-parser.py-add-lock-for-readKickstart-and.patch')
-rw-r--r--meta-python/recipes-extended/python-pykickstart/files/0002-pykickstart-parser.py-add-lock-for-readKickstart-and.patch36
1 files changed, 14 insertions, 22 deletions
diff --git a/meta-python/recipes-extended/python-pykickstart/files/0002-pykickstart-parser.py-add-lock-for-readKickstart-and.patch b/meta-python/recipes-extended/python-pykickstart/files/0002-pykickstart-parser.py-add-lock-for-readKickstart-and.patch
index cb21235460..4a001f3386 100644
--- a/meta-python/recipes-extended/python-pykickstart/files/0002-pykickstart-parser.py-add-lock-for-readKickstart-and.patch
+++ b/meta-python/recipes-extended/python-pykickstart/files/0002-pykickstart-parser.py-add-lock-for-readKickstart-and.patch
@@ -1,28 +1,26 @@
-From e6e747b883114bfad51ad93f823e65f5a4d6438a Mon Sep 17 00:00:00 2001
+From 62fdead139edb0f29b2f222efcb8f39be15b057e Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Thu, 1 Jun 2017 15:12:29 +0800
-Subject: [PATCH 2/4] pykickstart/parser.py: add lock for readKickstart and
+Date: Mon, 30 Jul 2018 15:47:13 +0800
+Subject: [PATCH 2/4] pykickstart/parser.py: add lock for readKickstart and
support https without certification
- Add lock for readKickstart to fix race issue
- Support to download kickstart file through https without certification
-Upstream-Status: Inappropriate[oe specific]
-
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
pykickstart/load.py | 2 +-
- pykickstart/parser.py | 24 ++++++++++++++++++++++++
- 2 files changed, 25 insertions(+), 1 deletion(-)
+ pykickstart/parser.py | 18 ++++++++++++++++++
+ 2 files changed, 19 insertions(+), 1 deletion(-)
diff --git a/pykickstart/load.py b/pykickstart/load.py
-index 0f5741b..48c8276 100644
+index c6f013f..7adb751 100644
--- a/pykickstart/load.py
+++ b/pykickstart/load.py
@@ -30,7 +30,7 @@ from requests.exceptions import SSLError, RequestException
- _is_url = lambda location: '://' in location # RFC 3986
+ _is_url = lambda location: '://' in location # RFC 3986
-SSL_VERIFY = True
+SSL_VERIFY = False
@@ -30,38 +28,32 @@ index 0f5741b..48c8276 100644
def load_to_str(location, user=None, passwd=None):
'''Load a destination URL or file into a string.
diff --git a/pykickstart/parser.py b/pykickstart/parser.py
-index 26b5de9..264ba05 100644
+index e44099b..e68174d 100644
--- a/pykickstart/parser.py
+++ b/pykickstart/parser.py
-@@ -57,6 +57,26 @@ STATE_COMMANDS = "commands"
-
- ver = version.DEVEL
+@@ -55,6 +55,20 @@ from pykickstart.i18n import _
+ STATE_END = "end"
+ STATE_COMMANDS = "commands"
-+import logging
-+log = logging.getLogger("anaconda")
-+
-+import inspect
+import threading
+_private_ks_lock = threading.RLock()
+
+class KsLock(object):
+ def __enter__(self):
-+ log.info("%s %s" % (self.__class__.__name__, inspect.stack()[0][3]))
+ _private_ks_lock.acquire()
+ return _private_ks_lock
+
+ def __exit__(self, exc_type, exc_val, exc_tb):
-+ log.info("%s %s" % (self.__class__.__name__, inspect.stack()[0][3]))
+ _private_ks_lock.release()
+
+
+_ks_lock = KsLock()
+
- def _preprocessStateMachine (lineIter):
+ def _preprocessStateMachine(lineIter):
l = None
lineno = 0
-@@ -774,6 +794,10 @@ class KickstartParser(object):
- self._stateMachine (i)
+@@ -788,6 +802,10 @@ class KickstartParser(object):
+ self._stateMachine(i)
def readKickstart(self, f, reset=True, username=None, password=None):
+ with _ks_lock: