]> code.citadel.org Git - citadel.git/blobdiff - citadel/server/internet_addressing.c
cdb_fetch() and cdb_next_item() now return a struct cdbdata instead of a pointer...
[citadel.git] / citadel / server / internet_addressing.c
index 4b78eba24282422857bfad0a03411d9058c30272..2a4b0a56777d2a8fc170ea977a5b7ebdff5d0713 100644 (file)
@@ -1235,7 +1235,7 @@ int CtdlDirectoryDelUser(char *internet_addr, char *citadel_addr) {
  * On failure: returns nonzero
  */
 int CtdlDirectoryLookup(char *target, char *internet_addr, size_t targbuflen) {
-       struct cdbdata *cdbrec;
+       struct cdbdata cdbrec;
        char key[SIZ];
 
        /* Dump it in there unchanged, just for kicks */
@@ -1251,11 +1251,10 @@ int CtdlDirectoryLookup(char *target, char *internet_addr, size_t targbuflen) {
 
        directory_key(key, internet_addr);
        cdbrec = cdb_fetch(CDB_DIRECTORY, key, strlen(key) );
-       if (cdbrec != NULL) {
+       if (cdbrec.len == 0) {
                if (target != NULL) {
-                       safestrncpy(target, cdbrec->ptr, targbuflen);
+                       safestrncpy(target, cdbrec.ptr, targbuflen);
                }
-               cdb_free(cdbrec);
                return(0);
        }