| 83 |
|
/* Set to zero because it should be initialized later using |
| 84 |
|
* initialize_server_capabs |
| 85 |
|
*/ |
| 86 |
< |
int default_server_capabs = 0; |
| 86 |
> |
unsigned int default_server_capabs; |
| 87 |
|
unsigned int splitmode; |
| 88 |
|
unsigned int splitchecking; |
| 89 |
|
unsigned int split_users; |
| 90 |
|
unsigned int split_servers; |
| 91 |
|
|
| 92 |
– |
/* Do klines the same way hybrid-6 did them, i.e. at the |
| 93 |
– |
* top of the next io_loop instead of in the same loop as |
| 94 |
– |
* the klines are being applied. |
| 95 |
– |
* |
| 96 |
– |
* This should fix strange CPU starvation as very indirectly reported. |
| 97 |
– |
* (Why do you people not email bug reports? WHY? WHY?) |
| 98 |
– |
* |
| 99 |
– |
* - Dianora |
| 100 |
– |
*/ |
| 101 |
– |
|
| 102 |
– |
int rehashed_klines = 0; |
| 103 |
– |
|
| 104 |
– |
|
| 92 |
|
/* |
| 93 |
|
* print_startup - print startup information |
| 94 |
|
*/ |
| 183 |
|
{ |
| 184 |
|
while (1) |
| 185 |
|
{ |
| 199 |
– |
/* |
| 200 |
– |
* Maybe we want a flags word? |
| 201 |
– |
* ie. if (REHASHED_KLINES(global_flags)) |
| 202 |
– |
* SET_REHASHED_KLINES(global_flags) |
| 203 |
– |
* CLEAR_REHASHED_KLINES(global_flags) |
| 204 |
– |
* |
| 205 |
– |
* - Dianora |
| 206 |
– |
*/ |
| 207 |
– |
if (rehashed_klines) |
| 208 |
– |
{ |
| 209 |
– |
check_conf_klines(); |
| 210 |
– |
rehashed_klines = 0; |
| 211 |
– |
} |
| 212 |
– |
|
| 186 |
|
if (listing_client_list.head) |
| 187 |
|
{ |
| 188 |
|
dlink_node *ptr = NULL, *ptr_next = NULL; |
| 269 |
|
add_capability("CLUSTER", CAP_CLUSTER, 1); |
| 270 |
|
add_capability("SVS", CAP_SVS, 1); |
| 271 |
|
add_capability("CHW", CAP_CHW, 1); |
| 299 |
– |
#ifdef HALFOPS |
| 272 |
|
add_capability("HOPS", CAP_HOPS, 1); |
| 301 |
– |
#endif |
| 273 |
|
} |
| 274 |
|
|
| 275 |
|
/* write_pidfile() |
| 406 |
|
always_accept_verify_cb); |
| 407 |
|
SSL_CTX_set_session_id_context(ServerInfo.server_ctx, session_id, sizeof(session_id) - 1); |
| 408 |
|
|
| 409 |
+ |
#if OPENSSL_VERSION_NUMBER >= 0x1000005FL && !defined(OPENSSL_NO_ECDH) |
| 410 |
+ |
{ |
| 411 |
+ |
EC_KEY *key = EC_KEY_new_by_curve_name(NID_X9_62_prime256v1); |
| 412 |
+ |
|
| 413 |
+ |
if (key) |
| 414 |
+ |
{ |
| 415 |
+ |
SSL_CTX_set_tmp_ecdh(ServerInfo.server_ctx, key); |
| 416 |
+ |
EC_KEY_free(key); |
| 417 |
+ |
} |
| 418 |
+ |
} |
| 419 |
+ |
|
| 420 |
+ |
SSL_CTX_set_options(ServerInfo.server_ctx, SSL_OP_SINGLE_ECDH_USE); |
| 421 |
+ |
#endif |
| 422 |
+ |
|
| 423 |
|
if ((ServerInfo.client_ctx = SSL_CTX_new(SSLv23_client_method())) == NULL) |
| 424 |
|
{ |
| 425 |
|
const char *s; |