randomize_fd.h revision 181410
1193323Sed/* 2193323Sed * Copyright (C) 2003 Sean Chittenden <seanc@FreeBSD.org> 3193323Sed * All rights reserved. 4193323Sed * 5193323Sed * Redistribution and use in source and binary forms, with or without 6193323Sed * modification, are permitted provided that the following conditions 7193323Sed * are met: 8193323Sed * 1. Redistributions of source code must retain the above copyright 9193323Sed * notice, this list of conditions and the following disclaimer. 10193323Sed * 2. Redistributions in binary form must reproduce the above copyright 11193323Sed * notice, this list of conditions and the following disclaimer in the 12193323Sed * documentation and/or other materials provided with the distribution. 13193323Sed * 14193323Sed * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND 15193323Sed * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16193323Sed * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17193323Sed * ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE 18193323Sed * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19193323Sed * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20193323Sed * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21193323Sed * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22193323Sed * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23193323Sed * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24193323Sed * SUCH DAMAGE. 25193323Sed * 26193323Sed * $FreeBSD: head/games/random/randomize_fd.h 181410 2008-08-08 01:42:17Z ache $ 27193323Sed */ 28193323Sed 29193323Sed#ifndef __RANDOMIZE_FD__ 30193323Sed#define __RANDOMIZE_FD__ 31193323Sed 32193323Sed/* 33203954Srdivacky * The random() function is defined to return values between 0 and 34193323Sed * 2^31 - 1 inclusive in random(3). 35193323Sed */ 36193323Sed#define RANDOM_MAX 0x80000000UL 37193323Sed 38193323Sed#define RANDOM_TYPE_UNSET 0 39193323Sed#define RANDOM_TYPE_LINES 1 40193323Sed#define RANDOM_TYPE_WORDS 2 41193323Sed 42198090Srdivacky/* The multiple instance single integer key */ 43193323Sedstruct rand_node { 44193323Sed u_char *cp; 45193323Sed u_int len; 46193323Sed struct rand_node *next; 47193323Sed}; 48193323Sed 49193323Sedint randomize_fd(int fd, int type, int unique, double denom); 50193323Sed 51193323Sed#endif 52193323Sed