Lines Matching defs:rpool
278 utils->rand(utils->rpool, (char *)&randnum, sizeof (randnum));
407 int sasl_randcreate(sasl_rand_t **rpool)
410 (*rpool)=sasl_sun_ALLOC(sizeof(sasl_rand_t));
412 (*rpool)=sasl_ALLOC(sizeof(sasl_rand_t));
414 if ((*rpool) == NULL) return SASL_NOMEM;
417 (*rpool)->initialized = 0;
422 void sasl_randfree(sasl_rand_t **rpool)
425 sasl_sun_FREE(*rpool);
427 sasl_FREE(*rpool);
431 void sasl_randseed (sasl_rand_t *rpool, const char *seed, unsigned len)
438 if (rpool == NULL) return;
440 rpool->initialized = 1;
446 rpool->pool[lup/2] = (seed[lup] << 8) + seed[lup + 1];
449 static void randinit(sasl_rand_t *rpool)
451 assert(rpool);
453 if (!rpool->initialized) {
454 getranddata(rpool->pool);
455 rpool->initialized = 1;
460 unsigned int *foo = (unsigned int *)rpool->pool;
469 void sasl_rand (sasl_rand_t *rpool, char *buf, unsigned len)
473 if (!rpool || !buf) return;
476 randinit(rpool);
484 buf[lup] = (char) (jrand48(rpool->pool) >> 8);
494 void sasl_churn (sasl_rand_t *rpool, const char *data, unsigned len)
499 if (!rpool || !data) return;
502 randinit(rpool);
505 rpool->pool[lup % RPOOL_SIZE] ^= data[lup];