int FIPS_drbg_uninstantiate(DRBG_CTX *dctx)
	{
	int rv;
	if (!dctx->uninstantiate)
		rv = 1;
	else
		rv = dctx->uninstantiate(dctx);
	/* Although we'd like to cleanse here we can't because we have to
	 * test the uninstantiate really zeroes the data.
	 */
	memset(&dctx->d, 0, sizeof(dctx->d));
	dctx->status = DRBG_STATUS_UNINITIALISED;
	/* If method has problems uninstantiating, return error */
	return rv;
	}
int FIPS_drbg_uninstantiate(DRBG_CTX *dctx)
	{
	int rv;
	if (!dctx->uninstantiate)
		rv = 1;
	else
		rv = dctx->uninstantiate(dctx);
	 
	memset(&dctx->d, 0, sizeof(dctx->d));
	dctx->status = DRBG_STATUS_UNINITIALISED;
	 
	return rv;
	}