| 
									
										
										
										
											2000-02-01 09:37:00 +08:00
										 |  |  | =pod | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | =head1 NAME | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2000-02-24 19:55:57 +08:00
										 |  |  | ERR_load_strings, ERR_PACK, ERR_get_next_error_library - load | 
					
						
							| 
									
										
										
										
											2000-02-01 09:37:00 +08:00
										 |  |  | arbitrary error strings | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | =head1 SYNOPSIS | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |  #include <openssl/err.h> | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-10-09 15:21:00 +08:00
										 |  |  |  int ERR_load_strings(int lib, ERR_STRING_DATA *str); | 
					
						
							| 
									
										
										
										
											2000-02-01 09:37:00 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |  int ERR_get_next_error_library(void); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |  unsigned long ERR_PACK(int lib, int func, int reason); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | =head1 DESCRIPTION | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ERR_load_strings() registers error strings for library number B<lib>. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | B<str> is an array of error string data: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |  typedef struct ERR_string_data_st | 
					
						
							|  |  |  |  { | 
					
						
							| 
									
										
										
										
											2016-11-19 07:10:05 +08:00
										 |  |  |      unsigned long error; | 
					
						
							|  |  |  |      char *string; | 
					
						
							| 
									
										
										
										
											2000-02-01 09:37:00 +08:00
										 |  |  |  } ERR_STRING_DATA; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The error code is generated from the library number and a function and | 
					
						
							|  |  |  | reason code: B<error> = ERR_PACK(B<lib>, B<func>, B<reason>). | 
					
						
							|  |  |  | ERR_PACK() is a macro. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The last entry in the array is {0,0}. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ERR_get_next_error_library() can be used to assign library numbers | 
					
						
							| 
									
										
										
										
											2019-09-28 01:17:09 +08:00
										 |  |  | to user libraries at run time. | 
					
						
							| 
									
										
										
										
											2000-02-01 09:37:00 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-12-25 17:50:39 +08:00
										 |  |  | =head1 RETURN VALUES | 
					
						
							| 
									
										
										
										
											2000-02-01 09:37:00 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-10-09 15:21:00 +08:00
										 |  |  | ERR_load_strings() returns 1 for success and 0 for failure. ERR_PACK() returns the error code. | 
					
						
							| 
									
										
										
										
											2016-07-20 03:33:02 +08:00
										 |  |  | ERR_get_next_error_library() returns zero on failure, otherwise a new | 
					
						
							|  |  |  | library number. | 
					
						
							| 
									
										
										
										
											2000-02-01 09:37:00 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | =head1 SEE ALSO | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-03-02 23:07:21 +08:00
										 |  |  | L<ERR_load_strings(3)> | 
					
						
							| 
									
										
										
										
											2000-02-01 09:37:00 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-05-18 23:44:05 +08:00
										 |  |  | =head1 COPYRIGHT | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-12-14 22:41:27 +08:00
										 |  |  | Copyright 2000-2021 The OpenSSL Project Authors. All Rights Reserved. | 
					
						
							| 
									
										
										
										
											2016-05-18 23:44:05 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-12-06 21:04:44 +08:00
										 |  |  | Licensed under the Apache License 2.0 (the "License").  You may not use | 
					
						
							| 
									
										
										
										
											2016-05-18 23:44:05 +08:00
										 |  |  | this file except in compliance with the License.  You can obtain a copy | 
					
						
							|  |  |  | in the file LICENSE in the source distribution or at | 
					
						
							|  |  |  | L<https://www.openssl.org/source/license.html>. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | =cut |