shithub: tlsclient

ref: f6e1c9f713929b2585edc6fca46c3ea46f872f72
dir: tlsclient/libc/lnrand.c

View raw version
#include	<u.h>
#include	<libc.h>

#define	MASK	0x7fffffffL

long
lnrand(long n)
{
	long slop, v;

	if(n < 0)
		return n;
	slop = MASK % n;
	do
		v = lrand();
	while(v <= slop);
	return v % n;
}