31 |
#include "resv.h" |
#include "resv.h" |
32 |
#include "channel.h" |
#include "channel.h" |
33 |
#include "client.h" |
#include "client.h" |
|
#include "common.h" |
|
34 |
#include "event.h" |
#include "event.h" |
35 |
#include "hash.h" |
#include "hash.h" |
36 |
#include "hook.h" |
#include "hook.h" |
52 |
#include "userhost.h" |
#include "userhost.h" |
53 |
#include "s_user.h" |
#include "s_user.h" |
54 |
#include "channel_mode.h" |
#include "channel_mode.h" |
55 |
|
#include "parse.h" |
56 |
|
#include "s_misc.h" |
57 |
|
|
58 |
struct Callback *client_check_cb = NULL; |
struct Callback *client_check_cb = NULL; |
59 |
struct config_server_hide ConfigServerHide; |
struct config_server_hide ConfigServerHide; |
1860 |
ConfigLoggingEntry.ioerrlog[0] = '\0'; |
ConfigLoggingEntry.ioerrlog[0] = '\0'; |
1861 |
ConfigLoggingEntry.failed_operlog[0] = '\0'; |
ConfigLoggingEntry.failed_operlog[0] = '\0'; |
1862 |
|
|
1863 |
ConfigChannel.disable_fake_channels = NO; |
ConfigChannel.disable_fake_channels = 0; |
1864 |
ConfigChannel.restrict_channels = NO; |
ConfigChannel.restrict_channels = 0; |
1865 |
ConfigChannel.disable_local_channels = NO; |
ConfigChannel.disable_local_channels = 0; |
1866 |
ConfigChannel.use_invex = YES; |
ConfigChannel.use_invex = 1; |
1867 |
ConfigChannel.use_except = YES; |
ConfigChannel.use_except = 1; |
1868 |
ConfigChannel.use_knock = YES; |
ConfigChannel.use_knock = 1; |
1869 |
ConfigChannel.knock_delay = 300; |
ConfigChannel.knock_delay = 300; |
1870 |
ConfigChannel.knock_delay_channel = 60; |
ConfigChannel.knock_delay_channel = 60; |
1871 |
ConfigChannel.max_chans_per_user = 15; |
ConfigChannel.max_chans_per_user = 15; |
1872 |
ConfigChannel.quiet_on_ban = YES; |
ConfigChannel.quiet_on_ban = 1; |
1873 |
ConfigChannel.max_bans = 25; |
ConfigChannel.max_bans = 25; |
1874 |
ConfigChannel.default_split_user_count = 0; |
ConfigChannel.default_split_user_count = 0; |
1875 |
ConfigChannel.default_split_server_count = 0; |
ConfigChannel.default_split_server_count = 0; |
1876 |
ConfigChannel.no_join_on_split = NO; |
ConfigChannel.no_join_on_split = 0; |
1877 |
ConfigChannel.no_create_on_split = NO; |
ConfigChannel.no_create_on_split = 0; |
1878 |
ConfigChannel.burst_topicwho = YES; |
ConfigChannel.burst_topicwho = 1; |
1879 |
|
|
1880 |
ConfigServerHide.flatten_links = NO; |
ConfigServerHide.flatten_links = 0; |
1881 |
ConfigServerHide.links_delay = 300; |
ConfigServerHide.links_delay = 300; |
1882 |
ConfigServerHide.hidden = NO; |
ConfigServerHide.hidden = 0; |
1883 |
ConfigServerHide.disable_hidden = NO; |
ConfigServerHide.disable_hidden = 0; |
1884 |
ConfigServerHide.hide_servers = NO; |
ConfigServerHide.hide_servers = 0; |
1885 |
DupString(ConfigServerHide.hidden_name, NETWORK_NAME_DEFAULT); |
DupString(ConfigServerHide.hidden_name, NETWORK_NAME_DEFAULT); |
1886 |
ConfigServerHide.hide_server_ips = NO; |
ConfigServerHide.hide_server_ips = 0; |
1887 |
|
|
1888 |
|
|
1889 |
DupString(ConfigFileEntry.service_name, SERVICE_NAME_DEFAULT); |
DupString(ConfigFileEntry.service_name, SERVICE_NAME_DEFAULT); |
1890 |
ConfigFileEntry.max_watch = WATCHSIZE_DEFAULT; |
ConfigFileEntry.max_watch = WATCHSIZE_DEFAULT; |
1891 |
ConfigFileEntry.gline_min_cidr = 16; |
ConfigFileEntry.gline_min_cidr = 16; |
1892 |
ConfigFileEntry.gline_min_cidr6 = 48; |
ConfigFileEntry.gline_min_cidr6 = 48; |
1893 |
ConfigFileEntry.invisible_on_connect = YES; |
ConfigFileEntry.invisible_on_connect = 1; |
1894 |
ConfigFileEntry.burst_away = NO; |
ConfigFileEntry.burst_away = 0; |
1895 |
ConfigFileEntry.use_whois_actually = YES; |
ConfigFileEntry.use_whois_actually = 1; |
1896 |
ConfigFileEntry.tkline_expire_notices = YES; |
ConfigFileEntry.tkline_expire_notices = 1; |
1897 |
ConfigFileEntry.hide_spoof_ips = YES; |
ConfigFileEntry.hide_spoof_ips = 1; |
1898 |
ConfigFileEntry.ignore_bogus_ts = NO; |
ConfigFileEntry.ignore_bogus_ts = 0; |
1899 |
ConfigFileEntry.disable_auth = NO; |
ConfigFileEntry.disable_auth = 0; |
1900 |
ConfigFileEntry.disable_remote = NO; |
ConfigFileEntry.disable_remote = 0; |
1901 |
ConfigFileEntry.kill_chase_time_limit = 90; |
ConfigFileEntry.kill_chase_time_limit = 90; |
1902 |
ConfigFileEntry.default_floodcount = 8; |
ConfigFileEntry.default_floodcount = 8; |
1903 |
ConfigFileEntry.failed_oper_notice = YES; |
ConfigFileEntry.failed_oper_notice = 1; |
1904 |
ConfigFileEntry.dots_in_ident = 0; |
ConfigFileEntry.dots_in_ident = 0; |
1905 |
ConfigFileEntry.min_nonwildcard = 4; |
ConfigFileEntry.min_nonwildcard = 4; |
1906 |
ConfigFileEntry.min_nonwildcard_simple = 3; |
ConfigFileEntry.min_nonwildcard_simple = 3; |
1907 |
ConfigFileEntry.max_accept = 20; |
ConfigFileEntry.max_accept = 20; |
1908 |
ConfigFileEntry.anti_nick_flood = NO; |
ConfigFileEntry.anti_nick_flood = 0; |
1909 |
ConfigFileEntry.max_nick_time = 20; |
ConfigFileEntry.max_nick_time = 20; |
1910 |
ConfigFileEntry.max_nick_changes = 5; |
ConfigFileEntry.max_nick_changes = 5; |
1911 |
ConfigFileEntry.anti_spam_exit_message_time = 0; |
ConfigFileEntry.anti_spam_exit_message_time = 0; |
1912 |
ConfigFileEntry.ts_warn_delta = TS_WARN_DELTA_DEFAULT; |
ConfigFileEntry.ts_warn_delta = TS_WARN_DELTA_DEFAULT; |
1913 |
ConfigFileEntry.ts_max_delta = TS_MAX_DELTA_DEFAULT; |
ConfigFileEntry.ts_max_delta = TS_MAX_DELTA_DEFAULT; |
1914 |
ConfigFileEntry.kline_with_reason = YES; |
ConfigFileEntry.kline_with_reason = 1; |
1915 |
ConfigFileEntry.kline_reason = NULL; |
ConfigFileEntry.kline_reason = NULL; |
1916 |
ConfigFileEntry.warn_no_nline = YES; |
ConfigFileEntry.warn_no_nline = 1; |
1917 |
ConfigFileEntry.stats_o_oper_only = NO; |
ConfigFileEntry.stats_o_oper_only = 0; |
1918 |
ConfigFileEntry.stats_k_oper_only = 1; /* masked */ |
ConfigFileEntry.stats_k_oper_only = 1; /* masked */ |
1919 |
ConfigFileEntry.stats_i_oper_only = 1; /* masked */ |
ConfigFileEntry.stats_i_oper_only = 1; /* masked */ |
1920 |
ConfigFileEntry.stats_P_oper_only = NO; |
ConfigFileEntry.stats_P_oper_only = 0; |
1921 |
ConfigFileEntry.caller_id_wait = 60; |
ConfigFileEntry.caller_id_wait = 60; |
1922 |
ConfigFileEntry.opers_bypass_callerid = NO; |
ConfigFileEntry.opers_bypass_callerid = 0; |
1923 |
ConfigFileEntry.pace_wait = 10; |
ConfigFileEntry.pace_wait = 10; |
1924 |
ConfigFileEntry.pace_wait_simple = 1; |
ConfigFileEntry.pace_wait_simple = 1; |
1925 |
ConfigFileEntry.short_motd = NO; |
ConfigFileEntry.short_motd = 0; |
1926 |
ConfigFileEntry.ping_cookie = NO; |
ConfigFileEntry.ping_cookie = 0; |
1927 |
ConfigFileEntry.no_oper_flood = NO; |
ConfigFileEntry.no_oper_flood = 0; |
1928 |
ConfigFileEntry.true_no_oper_flood = NO; |
ConfigFileEntry.true_no_oper_flood = 0; |
1929 |
ConfigFileEntry.oper_pass_resv = YES; |
ConfigFileEntry.oper_pass_resv = 1; |
1930 |
ConfigFileEntry.glines = NO; |
ConfigFileEntry.glines = 0; |
1931 |
ConfigFileEntry.gline_time = 12 * 3600; |
ConfigFileEntry.gline_time = 12 * 3600; |
1932 |
ConfigFileEntry.max_targets = MAX_TARGETS_DEFAULT; |
ConfigFileEntry.max_targets = MAX_TARGETS_DEFAULT; |
1933 |
ConfigFileEntry.client_flood = CLIENT_FLOOD_DEFAULT; |
ConfigFileEntry.client_flood = CLIENT_FLOOD_DEFAULT; |
1946 |
*/ |
*/ |
1947 |
ConfigFileEntry.default_cipher_preference = &CipherTable[1]; |
ConfigFileEntry.default_cipher_preference = &CipherTable[1]; |
1948 |
#endif |
#endif |
1949 |
ConfigFileEntry.use_egd = NO; |
ConfigFileEntry.use_egd = 0; |
1950 |
ConfigFileEntry.egdpool_path = NULL; |
ConfigFileEntry.egdpool_path = NULL; |
1951 |
#ifdef HAVE_LIBZ |
#ifdef HAVE_LIBZ |
1952 |
ConfigFileEntry.compression_level = 0; |
ConfigFileEntry.compression_level = 0; |
3382 |
return -1; |
return -1; |
3383 |
} |
} |
3384 |
|
|
3385 |
if ((parse_flags & AWILD) && !valid_wild_card(source_p, YES, 2, *up_p, *h_p)) |
if ((parse_flags & AWILD) && !valid_wild_card(source_p, 1, 2, *up_p, *h_p)) |
3386 |
return -1; |
return -1; |
3387 |
} |
} |
3388 |
else |
else |
3389 |
if ((parse_flags & AWILD) && !valid_wild_card(source_p, YES, 1, *up_p)) |
if ((parse_flags & AWILD) && !valid_wild_card(source_p, 1, 1, *up_p)) |
3390 |
return -1; |
return -1; |
3391 |
|
|
3392 |
if (reason != NULL) |
if (reason != NULL) |
3394 |
if (parc != 0 && !EmptyString(*parv)) |
if (parc != 0 && !EmptyString(*parv)) |
3395 |
{ |
{ |
3396 |
*reason = *parv; |
*reason = *parv; |
3397 |
if (!valid_comment(source_p, *reason, YES)) |
if (!valid_comment(source_p, *reason, 1)) |
3398 |
return -1; |
return -1; |
3399 |
} |
} |
3400 |
else |
else |