diff options
Diffstat (limited to 'debian/patches/000_resolv-conf.patch')
-rw-r--r-- | debian/patches/000_resolv-conf.patch | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/debian/patches/000_resolv-conf.patch b/debian/patches/000_resolv-conf.patch new file mode 100644 index 0000000..23404da --- /dev/null +++ b/debian/patches/000_resolv-conf.patch @@ -0,0 +1,32 @@ +Index: wa-new/waagent +=================================================================== +--- wa-new.orig/waagent 2012-11-14 11:06:12.227371000 -0700 ++++ wa-new/waagent 2012-11-14 11:07:53.093401274 -0700 +@@ -2262,7 +2262,26 @@ + Run("rm -f " + a + "/*") + + # Clear LibDir, remove nameserver and root bash history +- for f in os.listdir(LibDir) + ["/etc/resolv.conf", "/root/.bash_history", "/var/log/waagent.log"]: ++ fileBlackList = [ "/root/.bash_history", "/var/log/waagent.log" ] ++ ++ if IsUbuntu(): ++ # Ubuntu uses resolv.conf by default, so removing /etc/resolv.conf will ++ # break resolvconf. Therefore, we check to see if resolvconf is in use, ++ # and if so, we remove the resolvconf artifacts. ++ ++ if os.path.realpath('/etc/resolv.conf') != '/run/resolvconf/resolv.conf': ++ Log("resolvconf is not configured. Removing /etc/resolv.conf") ++ fileBlackList.append('/etc/resolv.conf') ++ else: ++ Log("resolvconf is enabled; leaving /etc/resolv.conf intact") ++ resolvConfD = '/etc/resolvconf/resolv.conf.d/' ++ fileBlackList.extend([resolvConfD + 'tail', resolvConfD + 'originial' ]) ++ else: ++ fileBlackList.append(os.listdir(LibDir) + '/etc/resolv.conf') ++ ++ ++ # Clear LibDir, remove nameserver and root bash history ++ for f in os.listdir(LibDir) + fileBlackList: + try: + os.remove(f) + except: |