aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2016-05-08 17:01:09 +0200
committerRichard Levitte <levitte@openssl.org>2016-05-10 11:31:05 +0200
commit21e001747d4a246827ad432fc508d67ac404ecdb (patch)
tree512105b818918f601165eb8105c725f46d1f3ba4 /doc
parent06aa885d0ccbb018ff7044258e9a8b6e7a56681d (diff)
downloadopenssl-21e001747d4a246827ad432fc508d67ac404ecdb.zip
openssl-21e001747d4a246827ad432fc508d67ac404ecdb.tar.gz
openssl-21e001747d4a246827ad432fc508d67ac404ecdb.tar.bz2
Restore the ERR_remove_thread_state() API and make it a no-op
The ERR_remove_thread_state() API is restored to take a pointer argument, but does nothing more. ERR_remove_state() is also made into a no-op. Both functions are deprecated and users are recommended to use OPENSSL_thread_stop() instead. Documentation is changed to reflect this. Reviewed-by: Matt Caswell <matt@openssl.org>
Diffstat (limited to 'doc')
-rw-r--r--doc/crypto/ERR_remove_state.pod34
-rw-r--r--doc/crypto/err.pod9
2 files changed, 20 insertions, 23 deletions
diff --git a/doc/crypto/ERR_remove_state.pod b/doc/crypto/ERR_remove_state.pod
index b011182..944365d 100644
--- a/doc/crypto/ERR_remove_state.pod
+++ b/doc/crypto/ERR_remove_state.pod
@@ -2,44 +2,42 @@
=head1 NAME
-ERR_remove_thread_state, ERR_remove_state - free a thread's error queue
+ERR_remove_thread_state, ERR_remove_state - DEPRECATED
=head1 SYNOPSIS
- #include <openssl/err.h>
-
- void ERR_remove_thread_state(void);
-
Deprecated:
#if OPENSSL_API_COMPAT < 0x10000000L
void ERR_remove_state(unsigned long pid);
#endif
-=head1 DESCRIPTION
+ #if OPENSSL_API_COMPAT < 0x10100000L
+ void ERR_remove_thread_state(void *);
+ #endif
-ERR_remove_thread_state() frees the error queue associated with the current
-thread.
+=head1 DESCRIPTION
-Since error queue data structures are allocated automatically for new
-threads, they must be freed when threads are terminated in order to
-avoid memory leaks.
+The functions described here were used to free the error queue
+associated with the current or specificed thread.
-ERR_remove_state is deprecated and has been replaced by
-ERR_remove_thread_state. Any argument to this function is ignored and
-calling ERR_remove_state is equivalent to B<ERR_remove_thread_state()>.
+They are now deprecated and do nothing, please use
+OPENSSL_thread_stop() instead.
=head1 RETURN VALUE
-ERR_remove_thread_state and ERR_remove_state() return no value.
+The functions described here return no value.
=head1 SEE ALSO
-L<err(3)>
+L<err(3)>, L<OPENSSL_thread_stop(3)>
=head1 HISTORY
-ERR_remove_state()
-was deprecated in OpenSSL 1.0.0 when ERR_remove_thread_state() was introduced.
+ERR_remove_state() was deprecated in OpenSSL 1.0.0 when
+ERR_remove_thread_state() was introduced.
+
+ERR_remove_thread_state() was deprecated in OpenSSL 1.1.0 when the
+thread handling functionality was entirely rewritten.
=cut
diff --git a/doc/crypto/err.pod b/doc/crypto/err.pod
index 33cb19d..a590cd7 100644
--- a/doc/crypto/err.pod
+++ b/doc/crypto/err.pod
@@ -22,7 +22,6 @@ err - error codes
int ERR_GET_REASON(unsigned long e);
void ERR_clear_error(void);
- void ERR_remove_thread_state(void);
char *ERR_error_string(unsigned long e, char *buf);
const char *ERR_lib_error_string(unsigned long e);
@@ -49,6 +48,10 @@ Deprecated:
#endif
#if OPENSSL_API_COMPAT < 0x10100000L
+ void ERR_remove_thread_state(void *);
+ #endif
+
+ #if OPENSSL_API_COMPAT < 0x10100000L
void ERR_free_strings(void)
#endif
@@ -71,9 +74,6 @@ messages is described in L<ERR_error_string(3)>.
L<ERR_clear_error(3)> can be used to clear the
error queue.
-Note that L<ERR_remove_thread_state(3)> should be used to
-avoid memory leaks when threads are terminated.
-
=head1 ADDING NEW ERROR CODES TO OPENSSL
See L<ERR_put_error(3)> if you want to record error codes in the
@@ -186,7 +186,6 @@ L<ERR_clear_error(3)>,
L<ERR_error_string(3)>,
L<ERR_print_errors(3)>,
L<ERR_load_crypto_strings(3)>,
-L<ERR_remove_thread_state(3)>,
L<ERR_put_error(3)>,
L<ERR_load_strings(3)>,
L<SSL_get_error(3)>