diff options
Diffstat (limited to 'ldap/servers/plugins/cos/cos_cache.c')
-rw-r--r-- | ldap/servers/plugins/cos/cos_cache.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/ldap/servers/plugins/cos/cos_cache.c b/ldap/servers/plugins/cos/cos_cache.c index fe8f5346..e20fd0de 100644 --- a/ldap/servers/plugins/cos/cos_cache.c +++ b/ldap/servers/plugins/cos/cos_cache.c @@ -1383,7 +1383,7 @@ static int cos_cache_add_defn( int ret = 0; int tmplCount = 0; cosDefinitions *theDef = 0; - cosAttrValue *pTmpTmplDn = *tmpDn; + cosAttrValue *pTmpTmplDn = 0; cosAttrValue *pDummyAttrVal = 0; cosAttrValue *pAttrsIter = 0; cosAttributes *pDummyAttributes = 0; @@ -1396,9 +1396,15 @@ static int cos_cache_add_defn( ret = -1; goto out; } - pSpecsIter = *spec; + if (!tmpDn) { + LDAPDebug( LDAP_DEBUG_ANY, "missing tmpDn\n",0,0,0); + ret = -1; + goto out; + } + pTmpTmplDn = *tmpDn; + /* we don't want cosspecifiers that can be supplied by the same scheme */ while( pSpecsIter ) { |