summaryrefslogtreecommitdiffstats
path: root/ipaserver
diff options
context:
space:
mode:
authorTomas Krizek <tkrizek@redhat.com>2017-02-10 11:16:56 +0100
committerMartin Basti <mbasti@redhat.com>2017-02-10 12:46:03 +0100
commit2f4442fff52090bad95a9b1f4f078e4d9acc8069 (patch)
tree82a2ab1ef94c3f8f61170b2e28f9b03dba2585af /ipaserver
parent52582ae9284b80c22a272f0793f0cddfb761f6dc (diff)
downloadfreeipa-2f4442fff52090bad95a9b1f4f078e4d9acc8069.tar.gz
freeipa-2f4442fff52090bad95a9b1f4f078e4d9acc8069.tar.xz
freeipa-2f4442fff52090bad95a9b1f4f078e4d9acc8069.zip
bindinstance: fix named.conf parsing regexs
Since named.conf API for bind-dyndb-ldap was updated, our parsing regexes have to change. https://fedorahosted.org/freeipa/ticket/6565 Reviewed-By: Martin Basti <mbasti@redhat.com>
Diffstat (limited to 'ipaserver')
-rw-r--r--ipaserver/install/bindinstance.py13
1 files changed, 6 insertions, 7 deletions
diff --git a/ipaserver/install/bindinstance.py b/ipaserver/install/bindinstance.py
index cccab8753..b1024aa9c 100644
--- a/ipaserver/install/bindinstance.py
+++ b/ipaserver/install/bindinstance.py
@@ -65,14 +65,14 @@ if six.PY3:
NAMED_CONF = paths.NAMED_CONF
RESOLV_CONF = paths.RESOLV_CONF
-named_conf_section_ipa_start_re = re.compile('\s*dynamic-db\s+"ipa"\s+{')
+named_conf_section_ipa_start_re = re.compile('\s*dyndb\s+"ipa"\s+"[^"]+"\s+{')
named_conf_section_options_start_re = re.compile('\s*options\s+{')
named_conf_section_end_re = re.compile('};')
named_conf_arg_ipa_re = re.compile(
- r'(?P<indent>\s*)arg\s+"(?P<name>\S+)\s(?P<value>[^"]+)";')
+ r'(?P<indent>\s*)(?P<name>\S+)\s"(?P<value>[^"]+)";')
named_conf_arg_options_re = re.compile(
r'(?P<indent>\s*)(?P<name>\S+)\s+"(?P<value>[^"]+)"\s*;')
-named_conf_arg_ipa_template = "%(indent)sarg \"%(name)s %(value)s\";\n"
+named_conf_arg_ipa_template = "%(indent)s%(name)s \"%(value)s\";\n"
named_conf_arg_options_template = "%(indent)s%(name)s \"%(value)s\";\n"
# non string args for options section
named_conf_arg_options_re_nonstr = re.compile(
@@ -91,13 +91,12 @@ def create_reverse():
def named_conf_exists():
try:
- named_fd = open(NAMED_CONF, 'r')
+ with open(NAMED_CONF, 'r') as named_fd:
+ lines = named_fd.readlines()
except IOError:
return False
- lines = named_fd.readlines()
- named_fd.close()
for line in lines:
- if line.startswith('dynamic-db "ipa"'):
+ if named_conf_section_ipa_start_re.match(line):
return True
return False