X-Git-Url: https://git.distorted.org.uk/~mdw/qmail/blobdiff_plain/ca51b51d75ecbf78f6c5786b6d3379d296e89d85..7651970eea68ae68f696c4f965d8d533d57ae254:/qmail-valid-addresses diff --git a/qmail-valid-addresses b/qmail-valid-addresses index b77be52..9821394 100644 --- a/qmail-valid-addresses +++ b/qmail-valid-addresses @@ -2,6 +2,7 @@ import os import cdb +from errno import * def sort(l): l = [] + l @@ -66,16 +67,27 @@ for k in sort(umap.keys()): else: addlocal(os.path.join(u.home, qm), u.name, u.dash == '') -for dom in open('control/locals'): - if len(dom) and dom[-1] == '\n': - dom = dom[:-1] - map['@' + dom] = '' +me = open('control/me').readline() -for v in open('control/virtualdomains'): - if len(v) and v[-1] == '\n': - v = v[:-1] - (addr, pre) = v.split(':', 2) - map['V' + addr] = pre +try: + for dom in open('control/locals'): + if len(dom) and dom[-1] == '\n': + dom = dom[:-1] + map['@' + dom] = '' +except IOError, exc: + if exc.errno != ENOENT: + raise + map['@' + me] = '' + +try: + for v in open('control/virtualdomains'): + if len(v) and v[-1] == '\n': + v = v[:-1] + (addr, pre) = v.split(':', 2) + map['V' + addr] = pre +except IOError, exc: + if exc.errno != ENOENT: + raise for l in sort(map.keys()): print '%s:%s' % (l, map[l])