107 #define UP_LOAD (2*LH_LOAD_MULT)
108 #define DOWN_LOAD (LH_LOAD_MULT)
110 static void expand(
_LHASH *lh);
111 static void contract(
_LHASH *lh);
130 ret->
pmax=MIN_NODES/2;
189 rn=getrn(lh,data,&hash);
200 #ifndef OPENSSL_NO_HASH_COMP
224 rn=getrn(lh,data,&hash);
255 rn=getrn(lh,data,&hash);
292 func_arg(a->
data,arg);
310 static void expand(
_LHASH *lh)
314 unsigned long hash,nni;
320 n2= &(lh->
b[p+(int)lh->
pmax]);
324 for (np= *n1; np != NULL; )
326 #ifndef OPENSSL_NO_HASH_COMP
343 if ((lh->
p) >= lh->
pmax)
366 static void contract(
_LHASH *lh)
370 np=lh->
b[lh->
p+lh->
pmax-1];
371 lh->
b[lh->
p+lh->
pmax-1]=NULL;
394 n1=lh->
b[(int)lh->
p];
396 lh->
b[(int)lh->
p]=np;
399 while (n1->
next != NULL)
408 unsigned long hash,nn;
420 ret= &(lh->
b[(int)nn]);
421 for (n1= *ret; n1 != NULL; n1=n1->
next)
423 #ifndef OPENSSL_NO_HASH_COMP
425 if (n1->
hash != hash)
432 if(cf(n1->
data,data) == 0)
450 if ((c == NULL) || (*c ==
'\0'))
463 r= (int)((v>>2)^v)&0x0f;
464 ret=(ret<<r)|(ret>>(32-r));
469 return((ret>>16)^ret);