aboutsummaryrefslogtreecommitdiff
path: root/src/lib9/nrand.c
blob: cf9c17c33fbe023951892a063117438ff409b9b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <lib9.h>

#define	MASK	0x7fffffffL

int
nrand(int n)
{
	long slop, v;

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