/*
- $Id: cache.c,v 1.5 2010-04-23 10:31:40 franklahm Exp $
+ $Id: cache.c,v 1.6 2010-04-23 11:37:05 franklahm Exp $
Copyright (c) 2008,2009 Frank Lahm <franklahm@gmail.com>
This program is free software; you can redistribute it and/or modify
/* remove item */
if (entry->prev) /* 2nd to last in queue */
entry->prev->next = entry->next;
- else /* queue head */
- namecache[hash] = entry->next;
+ else { /* queue head */
+ if ((namecache[hash] = entry->next) != NULL)
+ namecache[hash]->prev = NULL;
+ }
free(entry->name);
free(entry->uuid);
free(entry);
if (ret == 0) {
tim = time(NULL);
if ((tim - entry->creationtime) > CACHESECONDS) {
- LOG(log_info, logtype_default, "search_cachebyuuid: expired: name:\'%s\' in queue {%d}", entry->name, hash);
- if (entry->prev)
+ LOG(log_debug, logtype_default, "search_cachebyuuid: expired: name:\'%s\' in queue {%d}", entry->name, hash);
+ if (entry->prev) /* 2nd to last in queue */
entry->prev->next = entry->next;
- else
- uuidcache[hash] = entry->next;
+ else { /* queue head */
+ if ((uuidcache[hash] = entry->next) != NULL)
+ uuidcache[hash]->prev = NULL;
+ }
free(entry->name);
free(entry->uuid);
free(entry);
/*
- $Id: ldap.c,v 1.6 2010-04-22 12:08:14 franklahm Exp $
+ $Id: ldap.c,v 1.7 2010-04-23 11:37:06 franklahm Exp $
Copyright (c) 2008,2009 Frank Lahm <franklahm@gmail.com>
This program is free software; you can redistribute it and/or modify
int scope,
ldapcon_t conflags,
char **result) {
- int ret = 0;
+ int ret;
int ldaperr;
int retrycount = 0;
int desired_version = LDAP_VERSION3;
/* init LDAP if necessary */
retry:
+ ret = 0;
+
if (!ldapconnected) {
LOG(log_maxdebug, logtype_default, "ldap_getattr_fromfilter_withbase_scope: LDAP server: \"%s\"",
ldap_server);