doveconf -d
2.4.1-4 (7d8c0e5759): /etc/dovecot/dovecot.conf
Pigeonhole version 2.4.1-4 (0a86619f)
Segmentation fault (core dumped)
The same source works fine on other architectures.
The trace of gdb:
Core was generated by /usr/bin/doveconf -c /etc/dovecot/dovecot.conf -C -F /usr/sbin/dovecot -F'. Program terminated with signal SIGSEGV, Segmentation fault. #0 str_hash (p=0xf <error: Cannot access memory at address 0xf>) at ../lib/hash.c:529 --Type <RET> for more, q to quit, c to continue without paging-- 529 while (*s != '\0') { Function(s) ^std::(move|forward|as_const|(__)?addressof) will be skipped when stepping. Function(s) ^std::(shared|unique)_ptr<.*>::(get|operator) will be skipped when stepping. Function(s) ^std::(basic_string|vector|array|deque|(forward_)?list|(unordered_|flat_)?(multi)?(map|set)|span)<.*>::(c?r?(begin|end)|front|back|data|size|empty) will be skipped when stepping. Function(s) ^std::(basic_string|vector|array|deque|span)<.*>::operator.] will be skipped when stepping. (gdb) bt full #0 str_hash (p=0xf <error: Cannot access memory at address 0xf>) at ../lib/hash.c:529 s = 0xf <error: Cannot access memory at address 0xf> g = <optimized out> h = 0 #1 0x00007fff9ffa427c in hash_table_lookup_full (table=0x156052d80, lookup_key=<optimized out>, orig_key=<optimized out>, orig_key@entry=0x7fffc158a690, value=<optimized out>, value@entry=0x7fffc158a670) at ../lib/hash.c:204 node = <optimized out> #2 0x000000012b7145ec in config_parser_add_info (info_idx=3, ctx=0x7fffc158a6b0) at config-parser.c:2812 def = 0x12b73c148 <auth_lua_default_settings_keyvalue+40> i = 2 info = 0x12b73e168 <auth_oauth2_post_setting_parser_info> config_key = <optimized out> old_config_key = 0x0 name = 0x7fff9faa2790 <dlsym_doit> "\032" info = <optimized out> config_key = <optimized out> old_config_key = <optimized out> name = <optimized out> __func__ = <optimized out> i = <optimized out> def = <optimized out> valuep = <optimized out> old_info = <optimized out> old_def = <optimized out> #3 config_parse_file (path=0x156049550 "/etc/dovecot/dovecot.conf", flags=<optimized out>, dump_filter=0x0, config_r=0x12b741e18 <config>, error_r=0x7fffc158a9b8) at config-parser.c:2917 root = {prev = 0x7fffc158a6a0, input = 0x7fffa0180a08 <_rtld_local+2568>, path = 0x0, linenum = 1443176896} internal = {prev = 0x1560542b7, input = 0x156054280, path = 0x156054280 "undefined symbol: pigeonhole_settings_service_settings", linenum = 2685949488} ctx = {pool = 0x7fff9eaa0030, path = 0x156049550 "/etc/dovecot/dovecot.conf", all_keys = {_table = 0x156052d80, _key = 0x156052d80 "0", _keyp = 0x156052d80, _const_key = 0x156052d80 "0", _value = 0x156052d80, _valuep = 0x156052d80}, all_filter_parsers = {arr = {buffer = 0x0, element_size = 0}, v = 0x0, v_modifiable = 0x0}, all_filter_parsers_hash = {_table = 0x0, _key = 0x0, _keyp = 0x0, _const_key = 0x0, _value = 0x0, _valuep = 0x0}, root_module_parsers = 0x7fff9eaa0068, cur_section = 0x0, cur_input = 0x0, change_counter = 1 '\001', create_order_counter = 0, value = 0x0, error = 0x0, dovecot_config_version = 0x0, filter_name_prefixes = 0x0, filter_name_prefixes_count = 0, old = 0x0, seen_settings = {_table = 0x0, _key = 0x0, _keyp = 0x0, _const_key = 0x0, _value = 0x0, _valuep = 0x0}, filter = 0x0, dump_defaults = false, expand_values = false, hide_errors = false, delay_errors = false, hide_obsolete_warnings = false, ignore_unknown = false} i = 3 count = 143 full_line = 0x64656e696665646e line = <optimized out> fd = 7 ret = 0 dump_defaults = <optimized out> service_info_idx = 4294967295 root_filter = {parent = 0x1560691d0, protocol = 0x1 <error: Cannot access memory at address 0x1>, local_name = 0x156054200 "T
\025",
local_host = 0x7fffc158a8a0 "",
remote_host = 0x0, local_net = {family = 0, u = {ip6 = {__in6_u =
{__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0,
0, 0}, __u6_addr32 = {0, 0, 0, 0}}},
ip4 = {s_addr = 0}}, scope_id = 0}, remote_net = {family =
10384, u = {ip6 = {__in6_u = {__u6_addr8 =
"\001\000\000\000ШX\301\377\177\000\000\360\031r+", __u6_addr16 = {1,
0, 43216, 49496, 32767, 0, 6640, 11122}, __u6_addr32 =
{1, 3243813072, 32767, 728898032}}}, ip4 = {s_addr = 1}}, scope_id = 1},
local_bits = 0, remote_bits = 0,
filter_name = 0x0, filter_name_array = false, default_settings =
false}
root_filter_parser = <optimized out>
root_default_filter = {parent = 0x7fffc158a7f8, protocol =
0x156052430 "", local_name = 0x0, local_host = 0x12b7404c0
<config_all_services> "\340(\005V\001",
remote_host = 0x19 <error: Cannot access memory at address 0x19>,
local_net = {family = 42896, u = {ip6 = {__in6_u = {
__u6_addr8 =
"\377\177\000\000\000\000\000\000\000\000\000\000\300\004t+", __u6_addr16 =
{32767, 0, 0, 0, 0, 0, 1216, 11124}, __u6_addr32 = {32767, 0, 0,
729023680}}},
ip4 = {s_addr = 32767}}, scope_id = 1}, remote_net = {family
= 30208, u = {ip6 = {__in6_u = {__u6_addr8 =
"\377\177\000\000@\251X\301\377\177\000\000p\211\004V",
__u6_addr16 = {32767, 0, 43328, 49496, 32767, 0, 35184,
22020}, __u6_addr32 = {32767, 3243813184, 32767, 1443137904}}}, ip4 = {s_addr = 32767}}, scope_id = 1}, local_bits = 728816924, remote_bits = 1, filter_name = 0x12b747f00 "", filter_name_array = 128, default_settings = 168} prevfile = <optimized out> __func__ = "config_parse_file" #4 0x000000012b6f9690 in main (argc=<optimized out>, argv=<optimized out>) at doveconf.c:1238 _data_stack_cur_id = 2 master_service_flags = (MASTER_SERVICE_FLAG_STANDALONE | MASTER_SERVICE_FLAG_NO_INIT_DATASTACK_FRAME | MASTER_SERVICE_FLAG_DONT_SEND_STATS) scope = CONFIG_DUMP_SCOPE_ALL_WITHOUT_HIDDEN orig_config_path = <optimized out> config_path = 0x156049550 "/etc/dovecot/dovecot.conf" import_environment = 0x2 <error: Cannot access memory at address 0x2> error = 0x0 exec_args = <optimized out> setting_name_filters = <optimized out> i = <optimized out> c = <optimized out> ret = <optimized out> ret2 = <optimized out> dump_filter_parent = {parent = 0x0, protocol = 0x0, local_name = 0x0, local_host = 0x0, remote_host = 0x0, local_net = {family = 0, u = {ip6 = {__in6_u = { __u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}, scope_id = 0}, remote_net = {
--Type <RET> for more, q to quit, c to continue without paging-- family = 0, u = {ip6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}, scope_id = 0}, local_bits = 0, remote_bits = 0, filter_name = 0x0, filter_name_array = false, default_settings = false} dump_filter = {parent = 0x7fffc158aa50, protocol = 0x0, local_name = 0x0, local_host = 0x0, remote_host = 0x0, local_net = {family = 0, u = {ip6 = {__in6_u = { __u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}, scope_id = 0}, remote_net = { family = 0, u = {ip6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}, scope_id = 0}, local_bits = 0, remote_bits = 0, filter_name = 0x0, filter_name_array = false, default_settings = false} config_path_specified = false hide_key = <optimized out> have_dump_filter = <optimized out> simple_output = <optimized out> check_full_config = <optimized out> dump_defaults = <optimized out> host_verify = <optimized out> dump_full = <optimized out> print_banners = <optimized out> hide_passwords = <optimized out> flags = (CONFIG_PARSE_FLAG_EXPAND_VALUES | CONFIG_PARSE_FLAG_RETURN_BROKEN_CONFIG) dump_config_import = <optimized out>
-- Peter Varkoly SW Engineering(Systems)
SUSE Software Solutions Germany GmbH Frankenstraße 146 D-90461 Nürnberg T +49-(0)911-740 53 0 E <varkoly@suse.com>
(HRB 36809, AG Nürnberg) Geschäftsführer: Felix Imendörffer
doveconf -d
2.4.1-4 (7d8c0e5759): /etc/dovecot/dovecot.conf
Pigeonhole version 2.4.1-4 (0a86619f)
Segmentation fault (core dumped)
The same source works fine on other architectures.
The trace of gdb:
Core was generated by /usr/bin/doveconf -c /etc/dovecot/dovecot.conf -C -F / usr/sbin/dovecot -F'. Program terminated with signal SIGSEGV, Segmentation fault. #0 str_hash (p=0xf <error: Cannot access memory at address 0xf>) at ../lib/ hash.c:529 --Type <RET> for more, q to quit, c to continue without paging-- 529 while (*s != '\0') { Function(s) ^std::(move|forward|as_const|(__)?addressof) will be skipped when stepping. Function(s) ^std::(shared|unique)_ptr<.*>::(get|operator) will be skipped when stepping. Function(s) ^std::(basic_string|vector|array|deque|(forward_)?list| (unordered_|flat_)?(multi)?(map|set)|span)<.*>::(c?r? (begin|end)|front|back|data|size|empty) will be skipped when stepping. Function(s) ^std::(basic_string|vector|array|deque|span)<.*>::operator.] will be skipped when stepping. (gdb) bt full #0 str_hash (p=0xf <error: Cannot access memory at address 0xf>) at ../lib/ hash.c:529 s = 0xf <error: Cannot access memory at address 0xf> g = <optimized out> h = 0 #1 0x00007fff9ffa427c in hash_table_lookup_full (table=0x156052d80, lookup_key=<optimized out>, orig_key=<optimized out>, orig_key@entry=0x7fffc158a690, value=<optimized out>, value@entry=0x7fffc158a670) at ../lib/hash.c:204 node = <optimized out> #2 0x000000012b7145ec in config_parser_add_info (info_idx=3, ctx=0x7fffc158a6b0) at config-parser.c:2812 def = 0x12b73c148 <auth_lua_default_settings_keyvalue+40> i = 2 info = 0x12b73e168 <auth_oauth2_post_setting_parser_info> config_key = <optimized out> old_config_key = 0x0 name = 0x7fff9faa2790 <dlsym_doit> "\032" info = <optimized out> config_key = <optimized out> old_config_key = <optimized out> name = <optimized out> __func__ = <optimized out> i = <optimized out> def = <optimized out> valuep = <optimized out> old_info = <optimized out> old_def = <optimized out> #3 config_parse_file (path=0x156049550 "/etc/dovecot/dovecot.conf", flags=<optimized out>, dump_filter=0x0, config_r=0x12b741e18 <config>, error_r=0x7fffc158a9b8) at config-parser.c:2917 root = {prev = 0x7fffc158a6a0, input = 0x7fffa0180a08 <_rtld_local+2568>, path = 0x0, linenum = 1443176896} internal = {prev = 0x1560542b7, input = 0x156054280, path = 0x156054280 "undefined symbol: pigeonhole_settings_service_settings", linenum = 2685949488} ctx = {pool = 0x7fff9eaa0030, path = 0x156049550 "/etc/dovecot/ dovecot.conf", all_keys = {_table = 0x156052d80, _key = 0x156052d80 "0", _keyp = 0x156052d80, _const_key = 0x156052d80 "0", _value = 0x156052d80, _valuep = 0x156052d80}, all_filter_parsers = {arr = {buffer = 0x0, element_size = 0}, v = 0x0, v_modifiable = 0x0}, all_filter_parsers_hash = {_table = 0x0, _key = 0x0, _keyp = 0x0, _const_key = 0x0, _value = 0x0, _valuep = 0x0}, root_module_parsers = 0x7fff9eaa0068, cur_section = 0x0, cur_input = 0x0, change_counter = 1 '\001', create_order_counter = 0, value = 0x0, error = 0x0, dovecot_config_version = 0x0, filter_name_prefixes = 0x0, filter_name_prefixes_count = 0, old = 0x0, seen_settings = {_table = 0x0, _key = 0x0, _keyp = 0x0, _const_key = 0x0, _value = 0x0, _valuep = 0x0}, filter = 0x0, dump_defaults = false, expand_values = false, hide_errors = false, delay_errors = false, hide_obsolete_warnings = false, ignore_unknown = false} i = 3 count = 143 full_line = 0x64656e696665646e line = <optimized out> fd = 7 ret = 0 dump_defaults = <optimized out> service_info_idx = 4294967295 root_filter = {parent = 0x1560691d0, protocol = 0x1 <error: Cannot access memory at address 0x1>, local_name = 0x156054200 "T
\025", local_host =
0x7fffc158a8a0 "",
remote_host = 0x0, local_net = {family = 0, u = {ip6 = {__in6_u =
{__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0,
0}, __u6_addr32 = {0, 0, 0, 0}}},
ip4 = {s_addr = 0}}, scope_id = 0}, remote_net = {family = 10384,
u = {ip6 = {__in6_u = {__u6_addr8 =
"\001\000\000\000ШX\301\377\177\000\000\360\031r+", __u6_addr16 = {1,
0, 43216, 49496, 32767, 0, 6640, 11122}, __u6_addr32 = {1,
3243813072, 32767, 728898032}}}, ip4 = {s_addr = 1}}, scope_id = 1}, local_bits
= 0, remote_bits = 0,
filter_name = 0x0, filter_name_array = false, default_settings =
false}
root_filter_parser = <optimized out>
root_default_filter = {parent = 0x7fffc158a7f8, protocol = 0x156052430
"", local_name = 0x0, local_host = 0x12b7404c0 <config_all_services> "\340
(\005V\001",
remote_host = 0x19 <error: Cannot access memory at address 0x19>,
local_net = {family = 42896, u = {ip6 = {__in6_u = {
__u6_addr8 =
"\377\177\000\000\000\000\000\000\000\000\000\000\300\004t+", __u6_addr16 =
{32767, 0, 0, 0, 0, 0, 1216, 11124}, __u6_addr32 = {32767, 0, 0, 729023680}}},
ip4 = {s_addr = 32767}}, scope_id = 1}, remote_net = {family =
30208, u = {ip6 = {__in6_u = {__u6_addr8 =
"\377\177\000\000@\251X\301\377\177\000\000p\211\004V",
__u6_addr16 = {32767, 0, 43328, 49496, 32767, 0, 35184,
22020}, __u6_addr32 = {32767, 3243813184, 32767, 1443137904}}}, ip4 = {s_addr =
32767}}, scope_id = 1},
local_bits = 728816924, remote_bits = 1, filter_name = 0x12b747f00
"", filter_name_array = 128, default_settings = 168}
prevfile = <optimized out>
__func__ = "config_parse_file"
#4 0x000000012b6f9690 in main (argc=<optimized out>, argv=<optimized out>) at
doveconf.c:1238
_data_stack_cur_id = 2
master_service_flags = (MASTER_SERVICE_FLAG_STANDALONE |
MASTER_SERVICE_FLAG_NO_INIT_DATASTACK_FRAME |
MASTER_SERVICE_FLAG_DONT_SEND_STATS)
scope = CONFIG_DUMP_SCOPE_ALL_WITHOUT_HIDDEN
orig_config_path = <optimized out>
config_path = 0x156049550 "/etc/dovecot/dovecot.conf"
import_environment = 0x2 <error: Cannot access memory at address 0x2>
error = 0x0
exec_args = <optimized out>
setting_name_filters = <optimized out>
i = <optimized out>
c = <optimized out>
ret = <optimized out>
ret2 = <optimized out>
dump_filter_parent = {parent = 0x0, protocol = 0x0, local_name = 0x0,
local_host = 0x0, remote_host = 0x0, local_net = {family = 0, u = {ip6 =
{__in6_u = {
__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0,
0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}, scope_id
= 0}, remote_net = {
--Type <RET> for more, q to quit, c to continue without paging-- family = 0, u = {ip6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}, scope_id = 0}, local_bits = 0, remote_bits = 0, filter_name = 0x0, filter_name_array = false, default_settings = false} dump_filter = {parent = 0x7fffc158aa50, protocol = 0x0, local_name = 0x0, local_host = 0x0, remote_host = 0x0, local_net = {family = 0, u = {ip6 = {__in6_u = { __u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}, scope_id = 0}, remote_net = { family = 0, u = {ip6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}, scope_id = 0}, local_bits = 0, remote_bits = 0, filter_name = 0x0, filter_name_array = false, default_settings = false} config_path_specified = false hide_key = <optimized out> have_dump_filter = <optimized out> simple_output = <optimized out> check_full_config = <optimized out> dump_defaults = <optimized out> host_verify = <optimized out> dump_full = <optimized out> print_banners = <optimized out> hide_passwords = <optimized out> flags = (CONFIG_PARSE_FLAG_EXPAND_VALUES | CONFIG_PARSE_FLAG_RETURN_BROKEN_CONFIG) dump_config_import = <optimized out>
-- Peter Varkoly SW Engineering(Systems)
SUSE Software Solutions Germany GmbH Frankenstraße 146 D-90461 Nürnberg T +49-(0)911-740 53 0 E <varkoly@suse.com>
(HRB 36809, AG Nürnberg) Geschäftsführer: Felix Imendörffer