diff options
author | Andrew Bartlett <abartlet@samba.org> | 2004-07-14 12:14:07 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 12:57:35 -0500 |
commit | f607197054436a8195e3d0a695fe31574b418059 (patch) | |
tree | 90efd6698cf4cf7a499d7b3307c513b8c85d3690 /source4/rpc_server/netlogon | |
parent | 71d28b8265726a50b6f077115e7dacdb8c4b06f8 (diff) | |
download | samba-f607197054436a8195e3d0a695fe31574b418059.tar.gz samba-f607197054436a8195e3d0a695fe31574b418059.tar.bz2 samba-f607197054436a8195e3d0a695fe31574b418059.zip |
r1498: (merge from 3.0)
Rework our random number generation system.
On systems with /dev/urandom, this avoids a change to secrets.tdb for every fork().
For other systems, we now only re-seed after a fork, and on startup.
No need to do it per-operation. This removes the 'need_reseed'
parameter from generate_random_buffer().
This also requires that we start the secrets subsystem, as that is
where the reseed value is stored, for systems without /dev/urandom.
In order to aviod identical streams in forked children, the random
state is re-initialised after the fork(), at the same point were we do
that to the tdbs.
Andrew Bartlett
(This used to be commit b97d3cb2efd68310b1aea8a3ac40a64979c8cdae)
Diffstat (limited to 'source4/rpc_server/netlogon')
-rw-r--r-- | source4/rpc_server/netlogon/dcerpc_netlogon.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/source4/rpc_server/netlogon/dcerpc_netlogon.c b/source4/rpc_server/netlogon/dcerpc_netlogon.c index 9f0ca5443a..a4ef06128c 100644 --- a/source4/rpc_server/netlogon/dcerpc_netlogon.c +++ b/source4/rpc_server/netlogon/dcerpc_netlogon.c @@ -150,8 +150,7 @@ static NTSTATUS netr_ServerReqChallenge(struct dcesrv_call_state *dce_call, TALL pipe_state->client_challenge = *r->in.credentials; generate_random_buffer(pipe_state->server_challenge.data, - sizeof(pipe_state->server_challenge.data), - False); + sizeof(pipe_state->server_challenge.data)); *r->out.credentials = pipe_state->server_challenge; |