 d6c6e05727
			
		
	
	d6c6e05727
	
	
	
		
			
			Co-authored-by: zhjc1124 <zhjc1124@gmail.com> Co-authored-by: BinChenn <binchenn.bc@gmail.com> Co-authored-by: oceanoverflow <oceanoverflow@gmail.com>
		
			
				
	
	
		
			54 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| static clientfd_sk_t *clientfd_sk_new(ussl_sf_t *sf)
 | |
| {
 | |
|   clientfd_sk_t *s = NULL;
 | |
|   if (NULL == (s = (typeof(s))malloc(sizeof(clientfd_sk_t)))) {
 | |
|     ussl_log_error("malloc for clientfd_sk_t failed, errno:%d", errno);
 | |
|   } else {
 | |
|     s->fty = sf;
 | |
|     s->handle_event = (ussl_handle_event_t)clientfd_sk_handle_event;
 | |
|     s->type = CLIENT_SOCK;
 | |
|     ussl_dlink_init(&s->timeout_link);
 | |
|   }
 | |
|   return s;
 | |
| }
 | |
| 
 | |
| static void clientfd_sk_delete(ussl_sf_t *sf, clientfd_sk_t *s)
 | |
| {
 | |
|   if (NULL != s) {
 | |
|     free(s);
 | |
|   }
 | |
| }
 | |
| 
 | |
| int clientfd_sf_init(ussl_sf_t *sf)
 | |
| {
 | |
|   ussl_sf_init(sf, (void *)clientfd_sk_new, (void *)clientfd_sk_delete);
 | |
|   return 0;
 | |
| }
 | |
| 
 | |
| static acceptfd_sk_t *acceptfd_sk_new(ussl_sf_t *sf)
 | |
| {
 | |
|   acceptfd_sk_t *s = NULL;
 | |
|   if (NULL == (s = (typeof(s))malloc(sizeof(acceptfd_sk_t)))) {
 | |
|     ussl_log_error("malloc for acceptfd_sk_t failed, errno:%d", errno);
 | |
|   } else {
 | |
|     s->fty = sf;
 | |
|     s->handle_event = (ussl_handle_event_t)acceptfd_sk_handle_event;
 | |
|     s->type = SERVER_SOCK;
 | |
|     s->start_time = time(NULL);
 | |
|     ussl_dlink_init(&s->timeout_link);
 | |
|   }
 | |
|   return s;
 | |
| }
 | |
| 
 | |
| static void acceptfd_sk_delete(ussl_sf_t *sf, acceptfd_sk_t *s)
 | |
| {
 | |
|   if (NULL != s) {
 | |
|     free(s);
 | |
|   }
 | |
| }
 | |
| 
 | |
| int acceptfd_sf_init(ussl_sf_t *sf)
 | |
| {
 | |
|   ussl_sf_init(sf, (void *)acceptfd_sk_new, (void *)acceptfd_sk_delete);
 | |
|   return 0;
 | |
| } |