Lines Matching refs:pRes

197 static int memcache_free_entry(LDAPMemCache *cache, ldapmemcacheRes *pRes);
198 static int memcache_expired(LDAPMemCache *cache, ldapmemcacheRes *pRes,
200 static int memcache_add_to_list(LDAPMemCache *cache, ldapmemcacheRes *pRes,
202 static int memcache_add_res_to_list(ldapmemcacheRes *pRes, LDAPMessage *pMsg,
204 static int memcache_free_from_list(LDAPMemCache *cache, ldapmemcacheRes *pRes,
209 static int memcache_append(LDAP *ld, int msgid, LDAPMessage *pRes);
210 static int memcache_append_last(LDAP *ld, int msgid, LDAPMessage *pRes);
999 ldapmemcacheRes *pRes;
1007 (void*)&key, (void*)(&pRes), NULL);
1012 *ppRes = pRes->ldmemcr_resHead;
1013 assert((pRes->ldmemcr_req_id).ldmemcrid_msgid == -1);
1038 memcache_append(LDAP *ld, int msgid, LDAPMessage *pRes)
1049 (void*)&reqid, (void*)pRes, NULL);
1057 memcache_append_last(LDAP *ld, int msgid, LDAPMessage *pRes)
1068 (void*)&reqid, (void*)pRes, NULL);
1277 memcache_free_entry(LDAPMemCache *cache, ldapmemcacheRes *pRes)
1279 if (pRes) {
1283 if (pRes->ldmemcr_basedn) {
1284 size += strlen(pRes->ldmemcr_basedn) + 1;
1285 NSLDAPI_FREE(pRes->ldmemcr_basedn);
1288 if (pRes->ldmemcr_resHead) {
1289 size += pRes->ldmemcr_resSize;
1290 ldap_msgfree(pRes->ldmemcr_resHead);
1293 NSLDAPI_FREE(pRes);
1304 memcache_free_from_list(LDAPMemCache *cache, ldapmemcacheRes *pRes, int index)
1306 if (pRes->ldmemcr_prev[index])
1307 pRes->ldmemcr_prev[index]->ldmemcr_next[index] =
1308 pRes->ldmemcr_next[index];
1310 if (pRes->ldmemcr_next[index])
1311 pRes->ldmemcr_next[index]->ldmemcr_prev[index] =
1312 pRes->ldmemcr_prev[index];
1314 if (cache->ldmemc_resHead[index] == pRes)
1315 cache->ldmemc_resHead[index] = pRes->ldmemcr_next[index];
1317 if (cache->ldmemc_resTail[index] == pRes)
1318 cache->ldmemc_resTail[index] = pRes->ldmemcr_prev[index];
1320 pRes->ldmemcr_prev[index] = NULL;
1321 pRes->ldmemcr_next[index] = NULL;
1328 memcache_add_to_list(LDAPMemCache *cache, ldapmemcacheRes *pRes, int index)
1331 cache->ldmemc_resHead[index]->ldmemcr_prev[index] = pRes;
1333 cache->ldmemc_resTail[index] = pRes;
1335 pRes->ldmemcr_prev[index] = NULL;
1336 pRes->ldmemcr_next[index] = cache->ldmemc_resHead[index];
1337 cache->ldmemc_resHead[index] = pRes;
1344 memcache_add_res_to_list(ldapmemcacheRes *pRes, LDAPMessage *pMsg,
1347 if (pRes->ldmemcr_resTail)
1348 pRes->ldmemcr_resTail->lm_chain = pMsg;
1350 pRes->ldmemcr_resHead = pMsg;
1352 for (pRes->ldmemcr_resTail = pMsg;
1353 pRes->ldmemcr_resTail->lm_chain;
1354 pRes->ldmemcr_resTail = pRes->ldmemcr_resTail->lm_chain) {
1358 pRes->ldmemcr_resSize += size;
1405 memcache_expired(LDAPMemCache *cache, ldapmemcacheRes *pRes,
1413 (time_t)(pRes->ldmemcr_timestamp)) >=
1429 ldapmemcacheRes *pRes = NULL;
1431 nRes = htable_get(cache->ldmemc_resTmp, pData2, (void**)&pRes);
1435 pRes = (ldapmemcacheRes*)NSLDAPI_CALLOC(1, sizeof(ldapmemcacheRes));
1436 if (pRes == NULL)
1439 pRes->ldmemcr_crc_key = key;
1440 pRes->ldmemcr_req_id = *((ldapmemcacheReqId*)pData2);
1441 pRes->ldmemcr_basedn = (basedn ? nsldapi_strdup(basedn) : NULL);
1447 nRes = htable_put(cache->ldmemc_resTmp, pData2, (void*)pRes);
1449 memcache_add_to_list(cache, pRes, LIST_TMP);
1451 memcache_free_entry(cache, pRes);
1459 ldapmemcacheRes *pRes = NULL;
1461 nRes = htable_get(cache->ldmemc_resTmp, pData1, (void**)&pRes);
1469 memcache_free_from_list(cache, pRes, LIST_TMP);
1470 memcache_free_entry(cache, pRes);
1480 memcache_free_from_list(cache, pRes, LIST_TMP);
1481 memcache_free_entry(cache, pRes);
1485 memcache_add_res_to_list(pRes, pCopy, size);
1492 memcache_free_from_list(cache, pRes, LIST_TMP);
1493 (pRes->ldmemcr_req_id).ldmemcrid_ld = NULL;
1494 (pRes->ldmemcr_req_id).ldmemcrid_msgid = -1;
1495 pRes->ldmemcr_timestamp = (unsigned long)time(NULL);
1498 (void*)&(pRes->ldmemcr_crc_key),
1499 (void*)pRes)) == LDAP_SUCCESS) {
1500 memcache_add_to_list(cache, pRes, LIST_TTL);
1501 memcache_add_to_list(cache, pRes, LIST_LRU);
1503 memcache_free_entry(cache, pRes);
1588 ldapmemcacheRes *pRes;
1606 for (pRes = cache->ldmemc_resHead[list_id]; pRes != NULL;
1607 pRes = pRes->ldmemcr_next[list_id]) {
1609 if ((memcache_compare_dn(pRes->ldmemcr_basedn, dn,
1611 (memcache_compare_dn(dn, pRes->ldmemcr_basedn,
1615 for (pMsg = pRes->ldmemcr_resHead, bDone = 0;
1634 (void*)&(pRes->ldmemcr_crc_key), NULL);
1636 memcache_free_from_list(cache, pRes, LIST_TTL);
1637 memcache_free_from_list(cache, pRes, LIST_LRU);
1640 (void*)&(pRes->ldmemcr_req_id), NULL);
1642 memcache_free_from_list(cache, pRes, LIST_TMP);
1644 memcache_free_entry(cache, pRes);
1651 ldapmemcacheRes *pRes = cache->ldmemc_resTail[LIST_LRU];
1653 if (pRes == NULL)
1658 pRes->ldmemcr_crc_key, 0, 0 );
1660 (void*)&(pRes->ldmemcr_crc_key), NULL);
1662 memcache_free_from_list(cache, pRes, LIST_TTL);
1663 memcache_free_from_list(cache, pRes, LIST_LRU);
1664 memcache_free_entry(cache, pRes);
1857 ldapmemcacheRes *pRes = (ldapmemcacheRes*)pData;
1875 pPrev->ldmemcr_next[LIST_TTL] = pRes;
1876 pRes->ldmemcr_prev[LIST_TTL] = pPrev;
1877 pRes->ldmemcr_next[LIST_TTL] = NULL;
1880 pPrev->ldmemcr_htable_next = pRes;
1882 *ppHead = pRes;
1883 pRes->ldmemcr_htable_next = NULL;
2053 ldapmemcacheRes *pRes = *ppHead;
2055 for (; pRes; pRes = pRes->ldmemcr_htable_next) {
2056 if (pRes->ldmemcr_crc_key == attrkey)
2060 pRes = (ldapmemcacheRes*)pData;
2061 pRes->ldmemcr_htable_next = *ppHead;
2062 *ppHead = pRes;
2072 ldapmemcacheRes *pRes = (ldapmemcacheRes*)pTableData;
2074 for (; pRes; pRes = pRes->ldmemcr_htable_next) {
2075 if (pRes->ldmemcr_crc_key == attrkey) {
2076 *ppData = (void*)pRes;
2092 ldapmemcacheRes *pRes = *ppHead;
2095 for (; pRes; pRes = pRes->ldmemcr_htable_next) {
2096 if (pRes->ldmemcr_crc_key == attrkey) {
2098 *ppData = (void*)pRes;
2100 pPrev->ldmemcr_htable_next = pRes->ldmemcr_htable_next;
2102 *ppHead = pRes->ldmemcr_htable_next;
2103 pRes->ldmemcr_htable_next = NULL;
2106 pPrev = pRes;
2120 ldapmemcacheRes *pRes = *ppHead;
2124 for (; *ppHead; pRes = *ppHead) {
2126 pRes->ldmemcr_htable_next = NULL;