I added a function 'warn_Admin' and defined it just before another function 'process_log'. 'process_log' calls this warn_Admin' function. However, when it gets called i get the following error every time: --- Traceback (most recent call last): File "/usr/bin/denyhosts.py", line 202, in ? first_time, noemail, daemon) File "/usr/lib/python2.3/site-packages/DenyHosts/deny_hosts.py", line 86, in __init__ last_offset) File "/usr/lib/python2.3/site-packages/DenyHosts/daemon.py", line 74, in createDaemon apply(func, args) File "/usr/lib/python2.3/site-packages/DenyHosts/deny_hosts.py", line 137, in runDaemon purge_time, purge_sleep_ratio) File "/usr/lib/python2.3/site-packages/DenyHosts/deny_hosts.py", line 178, in daemonLoop last_offset = self.process_log(logfile, last_offset) File "/usr/lib/python2.3/site-packages/DenyHosts/deny_hosts.py", line 380, in process_log [warn_Admin(ip) for ip in new_denied_hosts] NameError: global name 'warn_Admin' is not defined -- If I take the two functions out of their current environment and store them in test file and run it, it doesn't complain. I'm new to python so I'm guessing there is some weird scope rule I am missing. I did try 'self.warn_Admin(ip)' just to be safe but then I got a 'too many arguments' error?
I'm lost :) -kevin -- http://mail.python.org/mailman/listinfo/python-list