diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2012-12-15 16:50:31 +0100 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2012-12-18 20:03:27 +0100 |
commit | 18feed9532ec06d04af5a6523a4caa71dc1b2ea4 (patch) | |
tree | 43240d9433d3266112d475e7c010bec65a2e7075 /src/monitor | |
parent | eae21d66fbca2628593d6b3f18e5326f91ba6fe8 (diff) | |
download | sssd-18feed9532ec06d04af5a6523a4caa71dc1b2ea4.tar.gz sssd-18feed9532ec06d04af5a6523a4caa71dc1b2ea4.tar.xz sssd-18feed9532ec06d04af5a6523a4caa71dc1b2ea4.zip |
AUTOFS: Clear enum cache if a request comes in from the sss_cache
In order for sss_cache to work correctly, we must also signal the autofs
responder to invalidate the hash table requests.
Diffstat (limited to 'src/monitor')
-rw-r--r-- | src/monitor/monitor.c | 8 | ||||
-rw-r--r-- | src/monitor/monitor_interfaces.h | 1 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/monitor/monitor.c b/src/monitor/monitor.c index 19de7682b..86125241d 100644 --- a/src/monitor/monitor.c +++ b/src/monitor/monitor.c @@ -761,6 +761,10 @@ static int service_signal_clear_memcache(struct mt_svc *svc) { return service_signal(svc, MON_CLI_METHOD_CLEAR_MEMCACHE); } +static int service_signal_clear_enum_cache(struct mt_svc *svc) +{ + return service_signal(svc, MON_CLI_METHOD_CLEAR_ENUM_CACHE); +} static int check_domain_ranges(struct sss_domain_info *domains) { @@ -1346,6 +1350,10 @@ static void monitor_hup(struct tevent_context *ev, if (!strcmp(NSS_SBUS_SERVICE_NAME, cur_svc->name)) { service_signal_clear_memcache(cur_svc); } + + if (!strcmp(SSS_AUTOFS_SBUS_SERVICE_NAME, cur_svc->name)) { + service_signal_clear_enum_cache(cur_svc); + } } } diff --git a/src/monitor/monitor_interfaces.h b/src/monitor/monitor_interfaces.h index abe905035..f27c7d00c 100644 --- a/src/monitor/monitor_interfaces.h +++ b/src/monitor/monitor_interfaces.h @@ -46,6 +46,7 @@ #define MON_CLI_METHOD_RESET_OFFLINE "resetOffline" /* Applicable only to providers */ #define MON_CLI_METHOD_ROTATE "rotateLogs" #define MON_CLI_METHOD_CLEAR_MEMCACHE "clearMemcache" +#define MON_CLI_METHOD_CLEAR_ENUM_CACHE "clearEnumCache" #define SSSD_SERVICE_PIPE "private/sbus-monitor" |