diff options
Diffstat (limited to 'usr/src/lib/nsswitch/files/common/files_common.c')
-rw-r--r-- | usr/src/lib/nsswitch/files/common/files_common.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/usr/src/lib/nsswitch/files/common/files_common.c b/usr/src/lib/nsswitch/files/common/files_common.c index 4755aec86b..5892ed1430 100644 --- a/usr/src/lib/nsswitch/files/common/files_common.c +++ b/usr/src/lib/nsswitch/files/common/files_common.c @@ -24,6 +24,7 @@ */ /* * Copyright 2014 Nexenta Systems, Inc. All rights reserved. + * Copyright (c) 2017, Joyent, Inc. */ /* @@ -738,3 +739,15 @@ _nss_files_check_name_aliases(nss_XbyY_args_t *argp, const char *line, } return (0); } + +/* + * A few NSS modules hold onto data for the duration of their module. In this + * case, when that module goes away, we must free that data. This is a place + * that allows for modules to register items to take care of. + */ +#pragma fini(_nss_files_fini) +static void +_nss_files_fini(void) +{ + getexecattr_fini(); +} |