2016-05-20 22:46:29 +08:00
|
|
|
/*
|
2022-05-03 18:52:38 +08:00
|
|
|
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
2016-05-20 22:46:29 +08:00
|
|
|
*
|
2018-12-06 20:44:07 +08:00
|
|
|
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
2016-05-20 22:46:29 +08:00
|
|
|
* this file except in compliance with the License. You can obtain a copy
|
|
|
|
* in the file LICENSE in the source distribution or at
|
|
|
|
* https://www.openssl.org/source/license.html
|
|
|
|
*/
|
2017-06-07 23:23:37 +08:00
|
|
|
#include <openssl/crypto.h>
|
2016-05-20 22:46:29 +08:00
|
|
|
|
2018-07-29 20:11:49 +08:00
|
|
|
#include "internal/tsan_assist.h"
|
|
|
|
|
2016-05-20 22:46:29 +08:00
|
|
|
struct lhash_node_st {
|
|
|
|
void *data;
|
|
|
|
struct lhash_node_st *next;
|
|
|
|
unsigned long hash;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct lhash_st {
|
2016-05-22 16:57:18 +08:00
|
|
|
OPENSSL_LH_NODE **b;
|
2016-05-20 22:46:29 +08:00
|
|
|
OPENSSL_LH_COMPFUNC comp;
|
|
|
|
OPENSSL_LH_HASHFUNC hash;
|
|
|
|
unsigned int num_nodes;
|
|
|
|
unsigned int num_alloc_nodes;
|
|
|
|
unsigned int p;
|
|
|
|
unsigned int pmax;
|
|
|
|
unsigned long up_load; /* load times 256 */
|
|
|
|
unsigned long down_load; /* load times 256 */
|
|
|
|
unsigned long num_items;
|
|
|
|
int error;
|
|
|
|
};
|