Arthur de Jong

Open Source / Free Software developer

summaryrefslogtreecommitdiffstats
path: root/pynslcd
diff options
context:
space:
mode:
authorArthur de Jong <arthur@arthurdejong.org>2013-07-26 14:59:43 +0200
committerArthur de Jong <arthur@arthurdejong.org>2013-07-26 14:59:43 +0200
commite1b0399ee018d217cd50267cef03c28dfdb32fbf (patch)
tree56229ff26cd878176707d9672fe65148b6073c5a /pynslcd
parent6054499f9a9952593ccadc83182e01d39ff62f12 (diff)
Rename nscd_invalidate option to reconnect_invalidate
This also renames the internal nscd module to invalidator for both nslcd and pynslcd. The new invalidator module is now no longer nscd-specific.
Diffstat (limited to 'pynslcd')
-rw-r--r--pynslcd/Makefile.am2
-rw-r--r--pynslcd/cfg.py8
-rw-r--r--pynslcd/invalidator.py (renamed from pynslcd/nscd.py)16
-rwxr-xr-xpynslcd/pynslcd.py8
-rw-r--r--pynslcd/search.py4
5 files changed, 19 insertions, 19 deletions
diff --git a/pynslcd/Makefile.am b/pynslcd/Makefile.am
index d0604f4..f96654b 100644
--- a/pynslcd/Makefile.am
+++ b/pynslcd/Makefile.am
@@ -20,7 +20,7 @@
pynslcddir = $(datadir)/pynslcd
pynslcd_PYTHON = pynslcd.py attmap.py cache.py cfg.py common.py expr.py \
- mypidfile.py nscd.py search.py tio.py \
+ mypidfile.py invalidator.py search.py tio.py \
alias.py ether.py group.py host.py netgroup.py network.py \
passwd.py protocol.py rpc.py service.py shadow.py pam.py \
usermod.py
diff --git a/pynslcd/cfg.py b/pynslcd/cfg.py
index 516eeb7..cf9c872 100644
--- a/pynslcd/cfg.py
+++ b/pynslcd/cfg.py
@@ -85,7 +85,7 @@ nss_nested_groups = False
validnames = re.compile(r'^[a-z0-9._@$][a-z0-9._@$ \\~-]{0,98}[a-z0-9._@$~-]$', re.IGNORECASE)
pam_authz_searches = []
pam_password_prohibit_message = None # FIXME: add support
-nscd_invalidate = set()
+reconnect_invalidate = set()
# allowed boolean values
@@ -311,15 +311,15 @@ def read(filename):
flags = 0 | re.IGNORECASE if m.group('flags') == 'i' else 0
validnames = re.compile(m.group('value'), flags=flags)
continue
- # nscd_invalidate <MAP>,<MAP>,...
- m = re.match('nscd_invalidate\s+(?P<value>\S.*)',
+ # reconnect_invalidate <MAP>,<MAP>,...
+ m = re.match('reconnect_invalidate\s+(?P<value>\S.*)',
line, re.IGNORECASE)
if m:
dbs = re.split('[ ,]+', m.group('value').lower())
for db in dbs:
if db not in maps.keys() + ['nfsidmap']:
raise ParseError(filename, lineno, 'map %s unknown' % db)
- nscd_invalidate.update(dbs)
+ reconnect_invalidate.update(dbs)
continue
# unrecognised line
raise ParseError(filename, lineno, 'error parsing line %r' % line)
diff --git a/pynslcd/nscd.py b/pynslcd/invalidator.py
index 1cc05cf..98c0783 100644
--- a/pynslcd/nscd.py
+++ b/pynslcd/invalidator.py
@@ -1,5 +1,5 @@
-# nscd.py - functions for invalidating the nscd cache
+# invalidator.py - functions for invalidating external caches
#
# Copyright (C) 2013 Arthur de Jong
#
@@ -41,7 +41,7 @@ _char_to_db = dict((reversed(item) for item in _db_to_char.items()))
def exec_invalidate(*args):
cmd = ' '.join(args)
- logging.debug('nscd_invalidator: %s', cmd)
+ logging.debug('invalidator: %s', cmd)
try:
p = subprocess.Popen(args, bufsize=4096, close_fds=True,
stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
@@ -49,23 +49,23 @@ def exec_invalidate(*args):
if output:
output = ': %s' % output[:1024].strip()
if p.returncode == 0:
- logging.debug('nscd_invalidator: %s (pid %d) success%s',
+ logging.debug('invalidator: %s (pid %d) success%s',
cmd, p.pid, output)
elif p.returncode > 0:
- logging.debug('nscd_invalidator: %s (pid %d) failed (%d)%s',
+ logging.debug('invalidator: %s (pid %d) failed (%d)%s',
cmd, p.pid, p.returncode, output)
else: # p.returncode < 0
- logging.error('nscd_invalidator: %s (pid %d) killed by signal %d%s',
+ logging.error('invalidator: %s (pid %d) killed by signal %d%s',
cmd, p.pid, -p.returncode, output)
except:
- logging.warn('nscd_invalidator: %s failed', cmd, exc_info=True)
+ logging.warn('invalidator: %s failed', cmd, exc_info=True)
def loop(fd):
# set process title
try:
import setproctitle
- setproctitle.setproctitle('(nscd invalidator)')
+ setproctitle.setproctitle('(invalidator)')
except ImportError:
pass
# set up clean environment
@@ -105,7 +105,7 @@ def invalidate(db=None):
if db:
db = _db_to_char.get(db, '')
else:
- db = ''.join(_db_to_char[x] for x in cfg.nscd_invalidate)
+ db = ''.join(_db_to_char[x] for x in cfg.reconnect_invalidate)
try:
os.write(signalfd, db)
except:
diff --git a/pynslcd/pynslcd.py b/pynslcd/pynslcd.py
index df54bad..4a57155 100755
--- a/pynslcd/pynslcd.py
+++ b/pynslcd/pynslcd.py
@@ -35,7 +35,7 @@ import cfg
import common
import constants
import mypidfile
-import nscd
+import invalidator
import search
@@ -323,9 +323,9 @@ if __name__ == '__main__':
logging.getLogger().setLevel(min(level for method, level in cfg.logs))
logging.getLogger().removeHandler(stderrhandler)
logging.info('version %s starting', constants.VERSION)
- # start nscd sub-process if needed
- if cfg.nscd_invalidate:
- nscd.start_invalidator()
+ # start invalidator sub-process if needed
+ if cfg.invalidator_invalidate:
+ invalidator.start_invalidator()
# create socket
nslcd_serversocket = create_socket()
# load supplementary groups
diff --git a/pynslcd/search.py b/pynslcd/search.py
index 3db6e9d..f8c82fb 100644
--- a/pynslcd/search.py
+++ b/pynslcd/search.py
@@ -55,9 +55,9 @@ class Connection(ldap.ldapobject.ReconnectLDAPObject):
self.set_option(ldap.OPT_X_TLS, ldap.OPT_X_TLS_HARD)
def reconnect_after_fail(self):
- import nscd
+ import invalidator
logging.info('connected to LDAP server %s', cfg.uri)
- nscd.invalidate()
+ invalidator.invalidate()
def search_s(self, *args, **kwargs):
# wrapper function to keep the global server_error state