Postfix3.3.1
総合概要
データ構造
ファイル
ファイル一覧
大域各種
postfix-3.3.1
src
util
myrand.c
[詳解]
1
/*++
2
/* NAME
3
/* myrand 3
4
/* SUMMARY
5
/* rand wrapper
6
/* SYNOPSIS
7
/* #include <myrand.h>
8
/*
9
/* void mysrand(seed)
10
/* int seed;
11
/*
12
/* int myrand()
13
/* DESCRIPTION
14
/* This module implements a wrapper for the portable, pseudo-random
15
/* number generator. The wrapper adds automatic initialization.
16
/*
17
/* mysrand() performs initialization. This call may be skipped.
18
/*
19
/* myrand() returns a pseudo-random number in the range [0, RAND_MAX].
20
/* If mysrand() was not called, it is invoked with the process ID
21
/* ex-or-ed with the time of day in seconds.
22
/* LICENSE
23
/* .ad
24
/* .fi
25
/* The Secure Mailer license must be distributed with this software.
26
/* WARNING
27
/* Do not use this code for generating unpredictable numbers.
28
/* AUTHOR(S)
29
/* Wietse Venema
30
/* IBM T.J. Watson Research
31
/* P.O. Box 704
32
/* Yorktown Heights, NY 10598, USA
33
/*--*/
34
35
/* System library. */
36
37
#include <
sys_defs.h
>
38
#include <stdlib.h>
39
#include <unistd.h>
40
#include <time.h>
41
42
/* Utility library. */
43
44
#include <
myrand.h
>
45
46
static
int
myrand_initdone = 0;
47
48
/* mysrand - initialize */
49
50
void
mysrand
(
int
seed)
51
{
52
srand(seed);
53
myrand_initdone = 1;
54
}
55
56
/* myrand - pseudo-random number */
57
58
int
myrand
(
void
)
59
{
60
if
(myrand_initdone == 0)
61
mysrand
(getpid() ^ time((time_t *) 0));
62
return
(rand());
63
}
myrand.h
mysrand
void mysrand(int seed)
Definition:
myrand.c:50
sys_defs.h
myrand
int myrand(void)
Definition:
myrand.c:58
2018年11月10日(土) 18時59分58秒作成 - Postfix3.3.1 / 構成:
1.8.9.1