82 if(newls == NULL) { |
82 if(newls == NULL) { |
83 // TODO: error |
83 // TODO: error |
84 } |
84 } |
85 |
85 |
86 newls->cfg = conf->cfg; |
86 newls->cfg = conf->cfg; |
87 newls->default_vs.vs_name = conf->vs.ptr; |
87 newls->default_vs.vs_name = conf->vs.ptr; |
88 newls->port = fl->port; |
88 newls->port = fl->port; |
89 newls->server_socket = fl->server_socket; |
89 newls->server_socket = fl->server_socket; |
|
90 newls->ref = 2; // 1 reference is fl->next |
|
91 |
90 newls->session_handler = fl->session_handler; // TODO |
92 newls->session_handler = fl->session_handler; // TODO |
91 newls->ref = 2; // 1 reference is fl->next |
93 |
|
94 // the listener threadpool might be changed |
|
95 if(conf->threadpool.ptr != NULL) { |
|
96 newls->threadpool = get_threadpool(conf->threadpool); |
|
97 } |
|
98 if(newls->threadpool == NULL) { |
|
99 newls->threadpool = get_default_threadpool(); |
|
100 } |
92 |
101 |
93 // create acceptor threads |
102 // create acceptor threads |
94 newls->acceptors = calloc(newls->nacceptors, sizeof(void*)); |
103 newls->acceptors = calloc(newls->nacceptors, sizeof(void*)); |
95 for (int i=0;i<newls->nacceptors;i++) { |
104 for (int i=0;i<newls->nacceptors;i++) { |
96 newls->acceptors[i] = acceptor_new(newls); |
105 newls->acceptors[i] = acceptor_new(newls); |
127 } |
136 } |
128 // end remove |
137 // end remove |
129 |
138 |
130 HttpListener *listener = malloc(sizeof(HttpListener)); |
139 HttpListener *listener = malloc(sizeof(HttpListener)); |
131 listener->name = conf->name; |
140 listener->name = conf->name; |
|
141 listener->default_vs.vs_name = conf->vs.ptr; |
|
142 if(conf->threadpool.ptr != NULL) { |
|
143 listener->threadpool = get_threadpool(conf->threadpool); |
|
144 } |
|
145 if(listener->threadpool == NULL) { |
|
146 listener->threadpool = get_default_threadpool(); |
|
147 } |
132 //listener->session_handler = create_basic_session_handler(); |
148 //listener->session_handler = create_basic_session_handler(); |
133 listener->session_handler = create_event_session_handler(); |
149 listener->session_handler = create_event_session_handler(); |
134 listener->nacceptors = conf->nacceptors; |
150 listener->nacceptors = conf->nacceptors; |
135 listener->port = conf->port; |
151 listener->port = conf->port; |
136 listener->ref = 1; |
152 listener->ref = 1; |