Re: [Freeipa-devel] [PATCH] 2 Fix handling of /etc/hosts
Jan Cholasta wrote: D'oh! Fixed. Honza Dne 15.2.2011 18:14, Rob Crittenden napsal(a): Jan Cholasta wrote: Fixes handling of empty lines, erroneous lines and comments in /etc/hosts. https://fedorahosted.org/freeipa/ticket/971 nack. Would using line.rstrip() be better than the conditional checking explicitly for \n? I don't think we can use format this way, isn't it new to python 2.7? I think you have to use {0} and {1}. We need to support python 2.6 as well. rob ack, pushed to master ___ Freeipa-devel mailing list Freeipa-devel@redhat.com https://www.redhat.com/mailman/listinfo/freeipa-devel
Re: [Freeipa-devel] [PATCH] 2 Fix handling of /etc/hosts
D'oh! Fixed. Honza Dne 15.2.2011 18:14, Rob Crittenden napsal(a): Jan Cholasta wrote: Fixes handling of empty lines, erroneous lines and comments in /etc/hosts. https://fedorahosted.org/freeipa/ticket/971 nack. Would using line.rstrip() be better than the conditional checking explicitly for \n? I don't think we can use format this way, isn't it new to python 2.7? I think you have to use {0} and {1}. We need to support python 2.6 as well. rob >From 786079981d60c341de821ab9061eefa6b36333e4 Mon Sep 17 00:00:00 2001 From: Jan Cholasta Date: Tue, 15 Feb 2011 17:51:18 +0100 Subject: [PATCH] Fix handling of /etc/hosts ticket 971 --- ipaserver/install/installutils.py | 19 ++- 1 files changed, 14 insertions(+), 5 deletions(-) diff --git a/ipaserver/install/installutils.py b/ipaserver/install/installutils.py index 56b..21c0d78 100644 --- a/ipaserver/install/installutils.py +++ b/ipaserver/install/installutils.py @@ -159,13 +159,22 @@ def verify_ip_address(ip): def record_in_hosts(ip, host_name, file="/etc/hosts"): hosts = open(file, 'r').readlines() for line in hosts: -hosts_ip = line.split()[0] -if hosts_ip != ip: +line = line.rstrip('\n') +fields = line.partition('#')[0].split() +if len(fields) == 0: continue -names = line.split()[1:] -if host_name in names: -return True +try: +hosts_ip = fields[0] +names = fields[1:] + +if hosts_ip != ip: +continue +if host_name in names: +return True +except IndexError: +print "Warning: Erroneous line '%s' in %s" % (line, file) +continue return False -- 1.7.4 ___ Freeipa-devel mailing list Freeipa-devel@redhat.com https://www.redhat.com/mailman/listinfo/freeipa-devel
Re: [Freeipa-devel] [PATCH] 2 Fix handling of /etc/hosts
Jan Cholasta wrote: Fixes handling of empty lines, erroneous lines and comments in /etc/hosts. https://fedorahosted.org/freeipa/ticket/971 nack. Would using line.rstrip() be better than the conditional checking explicitly for \n? I don't think we can use format this way, isn't it new to python 2.7? I think you have to use {0} and {1}. We need to support python 2.6 as well. rob ___ Freeipa-devel mailing list Freeipa-devel@redhat.com https://www.redhat.com/mailman/listinfo/freeipa-devel
[Freeipa-devel] [PATCH] 2 Fix handling of /etc/hosts
Fixes handling of empty lines, erroneous lines and comments in /etc/hosts. https://fedorahosted.org/freeipa/ticket/971 Honza >From 1313015b03fb9174a0d911cf81bf4968cb3f693f Mon Sep 17 00:00:00 2001 From: Jan Cholasta Date: Tue, 15 Feb 2011 17:51:18 +0100 Subject: [PATCH] Fix handling of /etc/hosts ticket 971 --- ipaserver/install/installutils.py | 21 - 1 files changed, 16 insertions(+), 5 deletions(-) diff --git a/ipaserver/install/installutils.py b/ipaserver/install/installutils.py index 56b..63e6019 100644 --- a/ipaserver/install/installutils.py +++ b/ipaserver/install/installutils.py @@ -159,13 +159,24 @@ def verify_ip_address(ip): def record_in_hosts(ip, host_name, file="/etc/hosts"): hosts = open(file, 'r').readlines() for line in hosts: -hosts_ip = line.split()[0] -if hosts_ip != ip: +if line[-1] == '\n': +line = line[:-1] + +fields = line.partition('#')[0].split() +if len(fields) == 0: continue -names = line.split()[1:] -if host_name in names: -return True +try: +hosts_ip = fields[0] +names = fields[1:] + +if hosts_ip != ip: +continue +if host_name in names: +return True +except IndexError: +print "Warning: Erroneous line '{}' in {}".format(line, file) +continue return False -- 1.7.4 ___ Freeipa-devel mailing list Freeipa-devel@redhat.com https://www.redhat.com/mailman/listinfo/freeipa-devel