Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
OPENSSL_FORK_PREPARE(3)		    OpenSSL	       OPENSSL_FORK_PREPARE(3)

NAME
       OPENSSL_fork_prepare, OPENSSL_fork_parent, OPENSSL_fork_child - OpenSSL
       fork handlers

SYNOPSIS
	#include <openssl/crypto.h>

	void OPENSSL_fork_prepare(void);
	void OPENSSL_fork_parent(void);
	void OPENSSL_fork_child(void);

DESCRIPTION
       OpenSSL has state that should be	reset when a process forks. For
       example,	the entropy pool used to generate random numbers (and
       therefore encryption keys) should not be	shared across multiple
       programs.  The OPENSSL_fork_prepare(), OPENSSL_fork_parent(), and
       OPENSSL_fork_child() functions are used to reset	this internal state.

       Platforms without fork(2) will probably not need	to use these
       functions.  Platforms with fork(2) but without pthreads_atfork(3) will
       probably	need to	call them manually, as described in the	following
       paragraph.  Platforms such as Linux that	have both functions will
       normally	not need to call these functions as the	OpenSSL	library	will
       do so automatically.

       OPENSSL_init_crypto(3) will register these functions with the
       appropriate handler, when the OPENSSL_INIT_ATFORK flag is used. For
       other applications, these functions can be called directly. They	should
       be used according to the	calling	sequence described by the
       pthreads_atfork(3) documentation, which is summarized here.
       OPENSSL_fork_prepare() should be	called before a	fork() is done.	 After
       the fork() returns, the parent process should call
       OPENSSL_fork_parent() and the child process should call
       OPENSSL_fork_child().

RETURN VALUES
       OPENSSL_fork_prepare(), OPENSSL_fork_parent() and OPENSSL_fork_child()
       do not return values.

SEE ALSO
       OPENSSL_init_crypto(3)

HISTORY
       These functions were added in OpenSSL 1.1.1.

COPYRIGHT
       Copyright 2017-2018 The OpenSSL Project Authors.	All Rights Reserved.

       Licensed	under the OpenSSL license (the "License").  You	may not	use
       this file except	in compliance with the License.	 You can obtain	a copy
       in the file LICENSE in the source distribution or at
       <https://www.openssl.org/source/license.html>.

1.1.1a				  2018-11-20	       OPENSSL_FORK_PREPARE(3)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUES | SEE ALSO | HISTORY | COPYRIGHT

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=OPENSSL_fork_prepare&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help