CRYPTO_w_unlock(CRYPTO_LOCK_ERR);
return(toret);
}
+
static void int_err_del(void)
{
CRYPTO_w_lock(CRYPTO_LOCK_ERR);
}
CRYPTO_w_unlock(CRYPTO_LOCK_ERR);
}
+
static ERR_STRING_DATA *int_err_get_item(const ERR_STRING_DATA *d)
{
ERR_STRING_DATA *p;
CRYPTO_r_unlock(CRYPTO_LOCK_ERR);
return p;
}
+
static ERR_STRING_DATA *int_err_set_item(ERR_STRING_DATA *d)
{
ERR_STRING_DATA *p;
hash = ERRFN(err_get)();
if(!hash)
return NULL;
- CRYPTO_r_lock(CRYPTO_LOCK_ERR);
+ CRYPTO_w_lock(CRYPTO_LOCK_ERR);
p = (ERR_STRING_DATA *)lh_insert(hash, d);
- CRYPTO_r_unlock(CRYPTO_LOCK_ERR);
+ CRYPTO_w_unlock(CRYPTO_LOCK_ERR);
return p;
}
+
static ERR_STRING_DATA *int_err_del_item(ERR_STRING_DATA *d)
{
ERR_STRING_DATA *p;
hash = ERRFN(err_get)();
if(!hash)
return NULL;
- CRYPTO_r_lock(CRYPTO_LOCK_ERR);
+ CRYPTO_w_lock(CRYPTO_LOCK_ERR);
p = (ERR_STRING_DATA *)lh_delete(hash, d);
- CRYPTO_r_unlock(CRYPTO_LOCK_ERR);
+ CRYPTO_w_unlock(CRYPTO_LOCK_ERR);
return p;
}
+
static LHASH *int_thread_get(void)
{
LHASH *toret = NULL;
CRYPTO_w_unlock(CRYPTO_LOCK_ERR);
return(toret);
}
+
static ERR_STATE *int_thread_get_item(const ERR_STATE *d)
{
ERR_STATE *p;
CRYPTO_r_unlock(CRYPTO_LOCK_ERR);
return p;
}
+
static ERR_STATE *int_thread_set_item(ERR_STATE *d)
{
ERR_STATE *p;
hash = ERRFN(thread_get)();
if(!hash)
return NULL;
- CRYPTO_r_lock(CRYPTO_LOCK_ERR);
+ CRYPTO_w_lock(CRYPTO_LOCK_ERR);
p = (ERR_STATE *)lh_insert(hash, d);
- CRYPTO_r_unlock(CRYPTO_LOCK_ERR);
+ CRYPTO_w_unlock(CRYPTO_LOCK_ERR);
return p;
}
+
static void int_thread_del_item(const ERR_STATE *d)
{
ERR_STATE *p;
if(p)
ERR_STATE_free(p);
}
+
static int int_err_get_next_lib(void)
{
int toret;
va_end(args);
}
-