1
0
mirror of https://github.com/gryf/wicd.git synced 2025-12-24 23:22:27 +01:00

backup and restore user's resolv.conf on start/exit

This commit is contained in:
Adam Blackburn
2009-12-29 12:09:42 -10:00
parent faee9dd7b6
commit 78d67a7c9b

View File

@@ -1694,6 +1694,16 @@ def main(argv):
argv -- The arguments passed to the script.
"""
# back up resolv.conf before we do anything else
try:
backup_location = wpath.varlib + 'resolv.conf.orig'
# don't back up if .orig exists, probably there cause
# wicd exploded
if not os.path.exists(backup_location):
shutil.copy2('/etc/resolv.conf', backup_location)
except IOError:
print 'error backing up resolv.conf'
do_daemonize = True
redirect_stderr = True
redirect_stdout = True
@@ -1775,6 +1785,12 @@ def main(argv):
def on_exit(child_pid):
""" Called when a SIGTERM is caught, kills monitor.py before exiting. """
# restore resolv.conf on quit
try:
shutil.move(wpath.varlib + 'resolv.conf.orig', '/etc/resolv.conf')
except IOError:
print 'error restoring resolv.conf'
if child_pid:
print 'Daemon going down, killing wicd-monitor...'
try: