summaryrefslogtreecommitdiffstats
path: root/src/responder/nss/nsssrv_mmap_cache.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/responder/nss/nsssrv_mmap_cache.c')
-rw-r--r--src/responder/nss/nsssrv_mmap_cache.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/responder/nss/nsssrv_mmap_cache.c b/src/responder/nss/nsssrv_mmap_cache.c
index 542c837c3..e312be19a 100644
--- a/src/responder/nss/nsssrv_mmap_cache.c
+++ b/src/responder/nss/nsssrv_mmap_cache.c
@@ -376,6 +376,11 @@ static errno_t sss_mmap_cache_invalidate(struct sss_mc_ctx *mcc,
{
struct sss_mc_rec *rec;
+ if (mcc == NULL) {
+ /* cache not initialized ? */
+ return EINVAL;
+ }
+
rec = sss_mc_find_record(mcc, key);
if (rec == NULL) {
/* nothing to invalidate */
@@ -408,6 +413,11 @@ errno_t sss_mmap_cache_pw_store(struct sss_mc_ctx *mcc,
size_t pos;
int ret;
+ if (mcc == NULL) {
+ /* cache not initialized ? */
+ return EINVAL;
+ }
+
ret = snprintf(uidstr, 11, "%ld", (long)uid);
if (ret > 10) {
return EINVAL;
@@ -472,6 +482,11 @@ errno_t sss_mmap_cache_pw_invalidate_uid(struct sss_mc_ctx *mcc, uid_t uid)
char *uidstr;
errno_t ret;
+ if (mcc == NULL) {
+ /* cache not initialized ? */
+ return EINVAL;
+ }
+
uidstr = talloc_asprintf(NULL, "%ld", (long)uid);
if (!uidstr) {
return ENOMEM;
@@ -529,6 +544,11 @@ int sss_mmap_cache_gr_store(struct sss_mc_ctx *mcc,
size_t pos;
int ret;
+ if (mcc == NULL) {
+ /* cache not initialized ? */
+ return EINVAL;
+ }
+
ret = snprintf(gidstr, 11, "%ld", (long)gid);
if (ret > 10) {
return EINVAL;
@@ -589,6 +609,11 @@ errno_t sss_mmap_cache_gr_invalidate_gid(struct sss_mc_ctx *mcc, gid_t gid)
char *gidstr;
errno_t ret;
+ if (mcc == NULL) {
+ /* cache not initialized ? */
+ return EINVAL;
+ }
+
gidstr = talloc_asprintf(NULL, "%ld", (long)gid);
if (!gidstr) {
return ENOMEM;