src/server/daemon/httplistener.c

changeset 29
e8619defde14
parent 25
5dee29c7c530
child 35
4417619a9bbd
equal deleted inserted replaced
28:f387669912e8 29:e8619defde14
49 #include "../ucx/map.h" 49 #include "../ucx/map.h"
50 #include "httplistener.h" 50 #include "httplistener.h"
51 51
52 #include "session.h" 52 #include "session.h"
53 #include "configmanager.h" 53 #include "configmanager.h"
54 #include "log.h"
54 55
55 UcxMap *listener_map = NULL; 56 UcxMap *listener_map = NULL;
56 57
57 int start_all_listener() { 58 int start_all_listener() {
58 ServerConfiguration *conf = cfgmgr_get_server_config(); 59 ServerConfiguration *conf = cfgmgr_get_server_config();
79 80
80 HttpListener *listener = malloc(sizeof(HttpListener)); 81 HttpListener *listener = malloc(sizeof(HttpListener));
81 listener->name = conf->name; 82 listener->name = conf->name;
82 listener->session_handler = create_basic_session_handler(); 83 listener->session_handler = create_basic_session_handler();
83 listener->nacceptors = conf->nacceptors; 84 listener->nacceptors = conf->nacceptors;
85 listener->port = conf->port;
84 ucx_map_sstr_put(listener_map, listener->name, listener); 86 ucx_map_sstr_put(listener_map, listener->name, listener);
85 87
86 struct sockaddr_in servaddr; /* server address */ 88 struct sockaddr_in servaddr; /* server address */
87 89
88 /* init address structure */ 90 /* init address structure */
120 return listener; 122 return listener;
121 } 123 }
122 124
123 int http_listener_start(HttpListener *listener) { 125 int http_listener_start(HttpListener *listener) {
124 printf("INFO: start listener\n"); 126 printf("INFO: start listener\n");
127 log_ereport(LOG_LEVEL_INFO, "start listener on port %d", listener->port);
125 128
126 if (listen(listener->server_socket, 256) == -1) { 129 if (listen(listener->server_socket, 256) == -1) {
127 perror("Error: http_listener_start: listen"); 130 perror("Error: http_listener_start: listen");
128 return -1; 131 return -1;
129 } 132 }

mercurial