2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								OpenSSL-APIs 
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								------------
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-09-21 13:51:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								..  note ::  The OpenSSL-API will be discontinued in ESP-IDF from v5.0. Please use ESP-TLS <esp_tls> instead.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								The code of this API (located in :component: `openssl`  directory), does not contain OpenSSL itself but is intended as a wrapper for applications using the OpenSSL API.
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-31 14:13:00 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								It uses mbedTLS to do the actual work, so anyone compiling openssl code needs the mbedtls library and header file.
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-31 14:06:29 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								OpenSSL APIs not mentioned in this article are not open to public for the time,
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								also do not have the corresponding function.
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-31 14:06:29 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								If user calls it directly, it will always return an error or may show cannot link at compiling time.
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Chapter Introduction
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								====================
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								-  Chapter 1. SSL Context Method Create
  
						 
					
						
							
								
									
										
										
										
											2020-06-05 14:20:04 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								-  Chapter 2. SSL Context Function
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								-  Chapter 3. SSL Function
  
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								-  Chapter 4. SSL X509 Certification and Private Key Function
  
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Chapter 1. SSL Context Method Create 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								====================================
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								..  highlight ::  none
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								1.1 const SSL_METHOD* `` SSLv3_client_method ``  (void)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        none
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SSLV3.0 version SSL context client method point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        create the target SSL context method
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            const SSL_METHOD *method = SSLv3_client_method();
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:46:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								1.2 const SSL_METHOD* `` TLSv1_client_method ``  (void)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        none
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        TLSV1.0 version SSL context client method point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        create the target SSL context method
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const SSL_METHOD *method = TLSv1_client_method();
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								1.3 const SSL_METHOD* `` TLSv1_1_client_method ``  (void)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        none
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        TLSV1.1 version SSL context client method point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        create the target SSL context method
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            const SSL_METHOD *method = TLSv1_1_client_method();
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								1.4 const SSL_METHOD* `` TLSv1_2_client_method ``  (void)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								       none
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								       TLSV1.2 version SSL context client method point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								       create the target SSL context method
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            const SSL_METHOD *method = TLSv1_2_client_method();
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								1.5 const SSL_METHOD* `` TLS_client_method ``  (void)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								       none
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								       TLSV1.2 version SSL context client method point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								       create the default SSL context method, it's always to be TLSV1.2
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const SSL_METHOD *method = TLSv1_2_client_method();
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... 
  
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        }        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								1.6 const SSL_METHOD* `` SSLv3_server_method ``  (void)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        none
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SSLV3.0 version SSL context server method point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        create the target SSL context method
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            const SSL_METHOD *method = SSLv3_server_method();
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								1.7 const SSL_METHOD* `` TLSv1_server_method ``  (void)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        none
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        TLSV1.0 version SSL context server method point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        create the target SSL context method
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            const SSL_METHOD *method = TLSv1_server_method();
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								1.8 const SSL_METHOD* `` TLSv1_1_server_method ``  (void)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        none
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        TLSV1.1 version SSL context server method point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        create the target SSL context method
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            const SSL_METHOD *method = TLSv1_1_server_method();
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								1.9 const SSL_METHOD* `` TLSv1_2_server_method ``  (void)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        none
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        TLSV1.2 version SSL context server method point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        create the target SSL context method
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            const SSL_METHOD *method = TLSv1_2_server_method();
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								1.10 const SSL_METHOD* `` TLS_server_method ``  (void)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        none
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        TLSV1.2 version SSL context server method point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        create the default SSL context method, it's always to be TLSV1.2
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-10 11:18:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            const SSL_METHOD *method = TLSv1_2_server_method();
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Chapter 2. SSL Context Function
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								===============================
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								2.1 SSL_CTX* ``SSL_CTX_new`` (const SSL_METHOD *  method)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        method - the SSL context method point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        context point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        create a SSL context
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX *ctx = SSL_CTX_new(SSLv3_server_method());
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								2.2 `` void SSL_CTX_free ``  (SSL_CTX * ctx)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ctx - the SSL context point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        none
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        free a SSL context
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX *ctx;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX_free(ctx);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								2.3 `` int SSL_CTX_set_ssl_version ``  (SSL_CTX * ctx, const SSL_METHOD *  meth)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ctx  - SSL context point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        meth - SSL method point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        set the SSL context version
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX *ctx;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const SSL_METHOD *meth;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX_set_ssl_version(ctx, meth);    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								2.4 const SSL_METHOD* ``SSL_CTX_get_ssl_method`` (SSL_CTX *  ctx)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ctx - SSL context point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SSL context method
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        get the SSL context method
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const SSL_METHOD *method;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX *ctx;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            method = SSL_CTX_get_ssl_method(ctx);    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Chapter 3. SSL Function
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								=======================
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.1 SSL* ``SSL_new`` (SSL_CTX *  ctx)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ctx - SSL context point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SSL method
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        create a SSL
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX *ctx;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								   
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ssl = SSL_new(ctx);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.2 void `` SSL_free ``  (SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        none
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        free SSL
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_free(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.3 int `` SSL_do_handshake ``  (SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed, connect is close by remote
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								       -1 : a error catch
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        perform the SSL handshake
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_do_handshake(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.4 int `` SSL_connect ``  (SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed, connect is close by remote
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								       -1 : a error catch
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        connect to the remote SSL server
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_connect(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.5 int `` SSL_accept ``  (SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed, connect is close by remote
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								       -1 : a error catch
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        accept the remote connection
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_accept(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.6 int `` SSL_shutdown ``  (SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed, connect is close by remote
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								       -1 : a error catch
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        shutdown the connection
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_shutdown(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.7 int `` SSL_clear ``  (SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        shutdown the connection
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_clear(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.8 int `` SSL_read ``  (SSL * ssl, void *  buffer, int len)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl    - point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        buffer - data buffer point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        len    - data length
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        > 0 : OK, and return received data bytes
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        = 0 : no data received or connection is closed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        < 0 : an error catch
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        read data from remote
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            char *buf;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int len;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_read(ssl, buf, len);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.9 int `` SSL_write ``  (SSL * ssl, const void *  buffer, int len)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl    - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        buffer - data buffer point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        len    - data length
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        > 0 : OK, and return received data bytes
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        = 0 : no data sent or connection is closed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        < 0 : an error catch
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        send the data to remote
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            char *buf;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int len;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_write(ssl, buf, len);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.10 `` SSL_CTX *SSL_get_SSL_CTX ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SSL context
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get SSL context of the SSL
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX *ctx;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ctx = SSL_get_SSL_CTX(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.11 int `` SSL_get_shutdown ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        shutdown mode
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get SSL shutdown mode
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int mode;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            mode = SSL_get_SSL_CTX(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.12 void `` SSL_set_shutdown ``  (SSL * ssl, int mode)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        shutdown mode
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        set SSL shutdown mode
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int mode = 0;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_set_shutdown(ssl, mode);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.13 const SSL_METHOD* ``SSL_get_ssl_method`` (SSL *  ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SSL method
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        set SSL shutdown mode
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const SSL_METHOD *method;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            method = SSL_get_ssl_method(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.14 int `` SSL_set_ssl_method ``  (SSL * ssl, const SSL_METHOD *  method)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl  - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        meth - SSL method point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        set the SSL method
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const SSL_METHOD *method;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_set_ssl_method(ssl, method);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.15 int `` SSL_pending ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        data bytes
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get received data bytes
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_pending(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.16 int `` SSL_has_pending ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : Yes
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : No
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        check if data is received
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_has_pending(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.17 int `` SSL_get_fd ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        >= 0 : socket id
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         < 0 : a error catch
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get the socket of the SSL
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_get_fd(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.18 int `` SSL_get_rfd ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        >= 0 : socket id
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         < 0 : a error catch
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get the read only socket of the SSL
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_get_rfd(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.19 int `` SSL_get_wfd ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        >= 0 : socket id
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         < 0 : a error catch
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get the write only socket of the SSL
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_get_wfd(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.20 int `` SSL_set_fd ``  (SSL * ssl, int fd)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        fd  - socket id
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        set socket to SSL
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int socket;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_set_fd(ssl, socket);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.21 int `` SSL_set_rfd ``  (SSL * ssl, int fd)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        fd  - socket id
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        set read only socket to SSL
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int socket;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_set_rfd(ssl, socket);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.22 int `` SSL_set_wfd ``  (SSL * ssl, int fd)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        fd  - socket id
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        set write only socket to SSL
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int socket;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_set_wfd(ssl, socket);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.23 int `` SSL_version ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SSL version
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get SSL version
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int version;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            version = SSL_version(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.24 const char* ``SSL_get_version`` (const SSL *  ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SSL version string
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get the SSL current version string
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            char *version;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            version = SSL_get_version(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.25 OSSL_HANDSHAKE_STATE `` SSL_get_state ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SSL state
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get the SSL state
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            OSSL_HANDSHAKE_STATE state;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state = SSL_get_state(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:46:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.26 const char* `` SSL_alert_desc_string ``  (int value)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        value - SSL description
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        alert value string
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get alert description string
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int val;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            char *str;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            str = SSL_alert_desc_string(val);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:46:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.27 const char* `` SSL_alert_desc_string_long ``  (int value)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        value - SSL description
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        alert value long string
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get alert description long string
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int val;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            char *str;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            str = SSL_alert_desc_string_long(val);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:46:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.28 const char* `` SSL_alert_type_string ``  (int value)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        value - SSL type description
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        alert type string
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get alert type string
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int val;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            char *str;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            str = SSL_alert_type_string(val);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:46:45 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.29 const char* `` SSL_alert_type_string_long ``  (int value)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        value - SSL type description
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        alert type long string
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get alert type long string
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int val;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            char *str;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            str = SSL_alert_type_string_long(val);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.30 const char* ``SSL_rstate_string`` (SSL *  ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        state string
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get the state string where SSL is reading
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            char *str;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            str = SSL_rstate_string(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.31 const char* ``SSL_rstate_string_long`` (SSL *  ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        state long string
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get the state long string where SSL is reading
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            char *str;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            str = SSL_rstate_string_long(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.32 const char* ``SSL_state_string`` (const SSL *  ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        state string
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get the state string
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            const char *str;
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            str = SSL_state_string(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.33 char* ``SSL_state_string_long`` (const SSL *  ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        state long string
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get the state long string
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            char *str;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            str = SSL_state_string(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.34 int `` SSL_get_error ``  (const SSL * ssl, int ret_code)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl      - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ret_code - SSL return code
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SSL error number
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get SSL error code
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int err;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            err = SSL_get_error(ssl, ret);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.35 int `` SSL_want ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        specifical statement
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get the SSL specifical statement
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int state;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            state = SSL_want(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.36 int `` SSL_want_nothing ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : false
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : true
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        check if SSL want nothing
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_want(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.37 int `` SSL_want_read ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : false
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : true
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        check if SSL want to read
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_want_read(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								3.38 int `` SSL_want_write ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : false
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : true
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        check if SSL want to write
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_want_write(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Chapter 4. SSL X509 Certification and Private Key Function
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								==========================================================
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								4.1 X509 * ``d2i_X509`` (X509 * * cert, const unsigned char *  buffer, long len)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cert   - a point pointed to X509 certification
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        buffer - a point pointed to the certification context memory point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        length - certification bytes
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        X509 certification object point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        load a character certification context into system context. If '*cert' is pointed to the
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        certification, then load certification into it. Or create a new X509 certification object
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            X509 *new;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            X509 *cert;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            unsigned char *buffer;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            long len;            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            new = d2i_X509(&cert, buffer, len);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								4.2 int `` SSL_add_client_CA ``  (SSL * ssl, X509 *  x)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        x   - CA certification point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        add CA client certification into the SSL
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            X509 *new;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_add_client_CA(ssl, new);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								4.3 int `` SSL_CTX_add_client_CA ``  (SSL_CTX * ctx, X509 *  x)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ctx - SSL context point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         x   - CA certification point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        add CA client certification into the SSL context
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX *ctx;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            X509 *new;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_add_clSSL_CTX_add_client_CAient_CA(ctx, new);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								4.4 X509* ``SSL_get_certificate`` (const SSL *  ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SSL certification point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get the SSL certification point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            X509 *cert;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            cert = SSL_get_certificate(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								4.5 long `` SSL_get_verify_result ``  (const SSL * ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        the result of verifying
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get the verifying result of the SSL certification
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            long ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_get_verify_result(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								4.6 int `` SSL_CTX_use_certificate ``  (SSL_CTX * ctx, X509 *  x)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ctx  - the SSL context point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        pkey - certification object point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        load the certification into the SSL_CTX or SSL object
 
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX *ctx
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            X509 *new;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_CTX_use_certificate(ctx, new);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								4.7 int `` SSL_CTX_use_certificate_ASN1 ``  (SSL_CTX * ctx, int len, const unsigned char *  d)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ctx - SSL context point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        len - certification length
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d   - data point
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        load the ASN1 certification into SSL context
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX *ctx;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const unsigned char *buf;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int len;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_CTX_use_certificate_ASN1(ctx, len, buf);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								4.8 int `` SSL_CTX_use_PrivateKey ``  (SSL_CTX * ctx, EVP_PKEY *  pkey)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ctx - SSL context point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        pkey - private key object point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        load the private key into the context object
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX *ctx;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            EVP_PKEY *pkey;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_CTX_use_PrivateKey(ctx, pkey);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								4.9 int `` SSL_CTX_use_PrivateKey_ASN1 ``  (int pk, SSL_CTX * ctx, const unsigned char *  d,  long len)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ctx - SSL context point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d   - data point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        len - private key length
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        load the ASN1 private key into SSL context
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int pk;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX *ctx;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const unsigned char *buf;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            long len;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_CTX_use_PrivateKey_ASN1(pk, ctx, buf, len);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								4.10 int `` SSL_CTX_use_RSAPrivateKey_ASN1 ``  (SSL_CTX * ctx, const unsigned char *  d, long len)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ctx - SSL context point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d   - data point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        len - private key length
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        load the RSA ASN1 private key into SSL context
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL_CTX *ctx;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const unsigned char *buf;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            long len;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_CTX_use_RSAPrivateKey_ASN1(ctx, buf, len);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								4.11 int `` SSL_use_certificate_ASN1 ``  (SSL * ssl, int len, const unsigned char *  d)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        len - data bytes
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d   - data point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        1 : OK
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        0 : failed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        load certification into the SSL
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int ret;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            const unsigned char *buf;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            long len;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ret = SSL_use_certificate_ASN1(ssl, len, buf);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-02-25 16:22:40 +04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								4.12 X509* ``SSL_get_peer_certificate`` (const SSL *  ssl)
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Arguments::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ssl - SSL point
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Return::
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        peer certification
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Description::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 20:41:11 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        get peer certification
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Example::
 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-28 19:40:05 +08:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void example(void)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            SSL *ssl;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            X509 *peer;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                        
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ... ... 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            peer = SSL_get_peer_certificate(ssl);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }