#
#
# patch "client/phonehome.py"
#  from [f1e1874a134a2877f66f21f014ac0d4b98883fc2]
#    to [840853bf50a490d9c338b9ed3a04dde04aad09c7]
# 
# patch "client/plugins/debiansecurity.py"
#  from [ed3e1309e95dcf8db05ec26f2ae3e26f368f5f7a]
#    to [60a4c625e6356d594234ba1973d9422a9edd166e]
# 
# patch "client/plugins/iptables.py"
#  from [3b9ba4f31ddf2daa7e23e12aeedcc8e9e7ae8869]
#    to [a69914410b707ad43f8014c15d2bb748ac48452d]
# 
# patch "client/plugins/opensshconfig.py"
#  from [fe78379a33792adfe928560408883b69b5a65e36]
#    to [a5b120d7afe504893b09b3d35b37ea6ee6820364]
#
============================================================
--- client/phonehome.py	f1e1874a134a2877f66f21f014ac0d4b98883fc2
+++ client/phonehome.py	840853bf50a490d9c338b9ed3a04dde04aad09c7
@@ -55,7 +55,9 @@ if __name__ == '__main__':
 	results += result
     
     if skip_network:
-        print >>sys.stderr, "Transmission to network server skipped. Results are:", results
+	print >>sys.stderr, "Transmission to network server skipped.\nResults follow:\n"
+	from pprint import pprint
+	pprint(results, sys.stderr)
     else:
         b.plugin_results(results)
 
============================================================
--- client/plugins/debiansecurity.py	ed3e1309e95dcf8db05ec26f2ae3e26f368f5f7a
+++ client/plugins/debiansecurity.py	60a4c625e6356d594234ba1973d9422a9edd166e
@@ -5,8 +5,6 @@ import StringIO
 #
 
 import StringIO
-import apt_listchanges
-import apt_pkg
 import urllib
 import pipes
 import rfc822
@@ -26,6 +24,13 @@ def run():
 def run():
     results = []
 
+    try:
+	import apt_listchanges
+	import apt_pkg
+    except ImportError:
+	results.append((urgency['info'], 'apt_listchanges not available.'))
+	return results
+
     config = apt_listchanges.Config()
     config.read('/etc/apt/listchanges.conf')
     apt_pkg.InitSystem()
============================================================
--- client/plugins/iptables.py	3b9ba4f31ddf2daa7e23e12aeedcc8e9e7ae8869
+++ client/plugins/iptables.py	a69914410b707ad43f8014c15d2bb748ac48452d
@@ -4,8 +4,12 @@ def run():
 from config import install_path
 
 def run():
+    iptables_prog = "/sbin/iptables"
+    if not os.access(iptables_prog, os.X_OK):
+	return [(urgency['info'], 'iptables not available (not installed?)')]
+
     # for now, just check that there are rules
-    iptables_command = '/sbin/iptables -L INPUT -n'
+    iptables_command = '%s -L INPUT -n' % iptables_prog
 
     if os.access(os.path.join(install_path, 'etc', 'no_iptables_ok'), os.R_OK):
         return [(urgency['info'], 'skipped iptables check, no_firewall_ok found.')]
============================================================
--- client/plugins/opensshconfig.py	fe78379a33792adfe928560408883b69b5a65e36
+++ client/plugins/opensshconfig.py	a5b120d7afe504893b09b3d35b37ea6ee6820364
@@ -1,9 +1,20 @@
 
+import os
 from phonehome import urgency
 
+sshd_config_locations = ('/etc/ssh/sshd_config', '/etc/sshd_config')
+
 def run():
     results = []
-    sshd_config_file = '/etc/ssh/sshd_config'
+    def find_sshd_config():
+	for loc in sshd_config_locations:
+	    if os.access(loc, os.R_OK):
+		return loc
+	return None
+    sshd_config_file = find_sshd_config()
+    if sshd_config_file is None:
+	results.append((urgency['info'], 'Could not find SSH daemon config, OpenSSH not installed?'))
+	return results
     for line in open(sshd_config_file):
 	line = line.strip().lower()
 	fields = [t for t in line.split(' ') if t]
