From 7baf3d842699f819522d4a960e82750aff596402 Mon Sep 17 00:00:00 2001 From: Narayan Desai Date: Thu, 11 Nov 2004 15:49:05 +0000 Subject: add syslog imports 2004/11/10 16:06:00-06:00 anl.gov!desai fix lookup error (Logical change 1.151) git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@670 ce84e21b-d406-0410-9b95-82705330c041 --- src/lib/Server/Generators/SSHbase.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/lib/Server/Generators/SSHbase.py b/src/lib/Server/Generators/SSHbase.py index eab268ec0..36c06b0fe 100644 --- a/src/lib/Server/Generators/SSHbase.py +++ b/src/lib/Server/Generators/SSHbase.py @@ -4,6 +4,7 @@ __revision__ = '$Revision$' from binascii import b2a_base64 from os import rename, system from socket import gethostbyname, gaierror +from syslog import syslog, LOG_ERR from Bcfg2.Server.Generator import Generator, DirectoryBacked @@ -50,11 +51,14 @@ class SSHbase(Generator): '''This function builds builds a host specific known_hosts file''' client = metadata.hostname filedata = self.repository.entries['ssh_known_hosts'].data - ipaddr = gethostbyname(client) - keylist = [keytmpl % client for keytmpl in self.pubkeys] - for hostkey in keylist: - filedata += "%s,%s,%s %s" % (client, "%s.mcs.anl.gov"%(client), - ipaddr, self.repository.entries[hostkey].data) + try: + ipaddr = gethostbyname(client) + # add client-specific key lines + for hostkey in [keytmpl % client for keytmpl in self.pubkeys]: + filedata += "%s,%s,%s %s" % (client, "%s.mcs.anl.gov"%(client), + ipaddr, self.repository.entries[hostkey].data) + except gaierror: + syslog(LOG_ERR, "SSHbase: DNS lookup failed for client %s" % client) entry.attrib.update({'owner':'root', 'group':'root', 'perms':'0644'}) entry.text = filedata -- cgit v1.2.3-1-g7c22