On Wed, 2010-10-06 at 13:37 -0400, Victor Duchovni wrote: > On Wed, Oct 06, 2010 at 12:28:45PM -0500, Vernon A. Fort wrote: > > > > We don't yet need the whole core file, just run: > > > > > > gdb /usr/sbin/postscreen /path/to/core > > > ... copious output ... > > > gdb) bt > > > > > > The "bt" command generates a back-trace (stack trace), that should show > > > where the segfault occurred. Ideally, your postscreen is compiled with > > > "-g" or "-g -O", i.e. with symbols and line numbers, ... > > > > > > > attached. This is a gentoo install so added the "ggdb" flag to the > > make.conf file and re-compiled postfix. I also removed the > > -fomit-frame-pointer per the backtrace doc's. > > Sadly, the binary still has no symbols. It should be compiled with > "-g" or "-g -O" and installed without being stripped, although that > is not too hard to fix, by running gdb on the unstripped binary > in the build-tree instead. > > > This is my first time working with core and backtrace files - bear with > > me. > > Thanks. This is closer, but the "postscreen" binary does not yet have > the necessary symbol table. >
as luck would have it - postscreen just segfaulted....attached is the backtrace. Vernon
ns coredumps # gdb /usr/lib/postfix/postscreen --core core-11-207-207-21731-1286387805 --batch --quiet -ex "thread apply all bt full" -ex "quit" warning: Can't read pathname for load map: Input/output error. Core was generated by `postscreen -l -n smtp -t inet -u -s 2 -v'. Program terminated with signal 11, Segmentation fault. #0 0x08067213 in vbuf_print (bp=0x8944318, format=0x8944cb0 "%s: notify %s:%s", ap=0xbff68aa8 "\377\377\377\377\377\377\377\377\300R\225\b\300R\225\b\030\213\366\277I\300\004\b") at vbuf_print.c:218 218 vbuf_print.c: No such file or directory. in vbuf_print.c Thread 1 (Thread 21731): #0 0x08067213 in vbuf_print (bp=0x8944318, format=0x8944cb0 "%s: notify %s:%s", ap=0xbff68aa8 "\377\377\377\377\377\377\377\377\300R\225\b\300R\225\b\030\213\366\277I\300\004\b") at vbuf_print.c:218 _cp = 0xffffffff <Address 0xffffffff out of bounds> _ch = <value optimized out> fmt = 0x8944268 cp = 0x8944cbc "s:%s" width = 0 prec = 0 long_flag = <value optimized out> ch = <value optimized out> s = <value optimized out> #1 0x0806362a in vstring_vsprintf (vp=0x8944318, format=0x8944cb0 "%s: notify %s:%s", ap=0xbff68aa4 "\246\203\006\b\377\377\377\377\377\377\377\377\300R\225\b\300R\225\b\030\213\366\277I\300\004\b") at vstring.c:586 No locals. #2 0x0805fa65 in msg_vprintf (level=0, format=0x80683bb "%s: notify %s:%s", ap=0xbff68aa4 "\246\203\006\b\377\377\377\377\377\377\377\377\300R\225\b\300R\225\b\030\213\366\277I\300\004\b") at msg_output.c:157 No locals. #3 0x0805f827 in msg_info (fmt=0x80683bb "%s: notify %s:%s") at msg.c:179 No locals. #4 0x0804c39a in ps_early_dnsbl_event (unused_event=0, context=0x8944348 "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377p") at postscreen_early.c:228 No locals. #5 0x0804c049 in ps_dnsbl_receive (event=1, context=0x89552c0 "") at postscreen_dnsbl.c:371 _cb_ = 0x8955388 score = 0x8955370 head = 0x89542e0 site = <value optimized out> reply_argv = <value optimized out> #6 0x0805c31f in event_loop (delay=-1) at events.c:1180 nested = 1 event_buf = {{events = 1, data = {ptr = 0xf, fd = 15, u32 = 15, u64 = 577980792769085455}}, {events = 1, data = {ptr = 0x81, fd = 129, u32 = 129, u64 = 578210977246347393}}, {events = 1, data = {ptr = 0xe, fd = 14, u32 = 14, u64 = 577980792769085454}}, {events = 1, data = {ptr = 0x80, fd = 128, u32 = 128, u64 = 618474156752633984}}, {events = 17, data = {ptr = 0x10, fd = 16, u32 = 16, u64 = 4294967312}}, {events = 1, data = { ptr = 0x81, fd = 129, u32 = 129, u64 = 578210977246347393}}, {events = 17, data = {ptr = 0x11, fd = 17, u32 = 17, u64 = 4294967313}}, {events = 2, data = {ptr = 0xb73c5ba3, fd = -1220781149, u32 = 3074186147, u64 = 3074186147}}, {events = 0, data = {ptr = 0xb73c548c, fd = -1220782964, u32 = 3074184332, u64 = 13203494610812032140}}, {events = 3074178165, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 256, data = { ptr = 0xb7705be8, fd = -1217373208, u32 = 3077594088, u64 = 7372561384}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 13218664913263656960}}, {events = 8181, data = {ptr = 0xb7724fc4, fd = -1217245244, u32 = 3077722052, u64 = 13218167851186278340}}, {events = 4217622598, data = {ptr = 0xbff68cb4, fd = -1074361164, u32 = 3220606132, u64 = 13218362533606755508}}, {events = 3220606116, data = {ptr = 0x306cf393, fd = 812446611, u32 = 812446611, u64 = 9402381203}}, {events = 25388956, data = {ptr = 0x4, fd = 4, u32 = 4, u64 = 47244640260}}, {events = 3074348084, data = {ptr = 0xb73efba4, fd = -1220609116, u32 = 3074358180, u64 = 13204026070065413028}}, {events = 1, data = {ptr = 0x89442d8, fd = 143934168, u32 = 143934168, u64 = 34503672536}}, {events = 3074178147, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 2, data = { ptr = 0x0, fd = 0, u32 = 0, u64 = 578347174954270720}}, {events = 4294967295, data = {ptr = 0x2, fd = 2, u32 = 2, u64 = 2}}, {events = 0, data = {ptr = 0xbff689d0, fd = -1074361904, u32 = 3220605392, u64 = 13200271723334109648}}, {events = 3074373652, data = {ptr = 0x1, fd = 1, u32 = 1, u64 = 8589934593}}, {events = 4294967295, data = {ptr = 0xb7705da0, fd = -1217372768, u32 = 3077594528, u64 = 7164368923002953120}}, {events = 3074311752, data = {ptr = 0xb73c5099, fd = -1220783975, u32 = 3074183321, u64 = 13204065618124099737}}, {events = 144016603, data = {ptr = 0xbff68d18, fd = -1074361064, u32 = 3220606232, u64 = 76235050264}}, {events = 3220606140, data = {ptr = 0xbff68cbc, fd = -1074361156, u32 = 3220606140, u64 = 16105508028}}, {events = 144002216, data = {ptr = 0x14, fd = 20, u32 = 20, u64 = 8589934612}}, {events = 3073423238, data = {ptr = 0xb730c931, fd = -1221539535, u32 = 3073427761, u64 = 7368395057}}, {events = 3077594088, data = {ptr = 0xb730b786, fd = -1221544058, u32 = 3073423238, u64 = 13203516828677093254}}, {events = 3074311096, data = {ptr = 0xb730f7fa, fd = -1221527558, u32 = 3073439738, u64 = 13204065377605187578}}, {events = 17, data = {ptr = 0x35340002, fd = 892600322, u32 = 892600322, u64 = 13204043883407998978}}, {events = 144016595, data = {ptr = 0xbff68e27, fd = -1074360793, u32 = 3220606503, u64 = 13832399490926415399}}, {events = 3073572061, data = {ptr = 0xb73c3c5b, fd = -1220789157, u32 = 3074178139, u64 = 13832399800017632347}}, {events = 3220606503, data = {ptr = 0xb73e2400, fd = -1220664320, u32 = 3074302976, u64 = 618483368236819456}}, {events = 3074311084, data = {ptr = 0xb73c548c, fd = -1220782964, u32 = 3074184332, u64 = 13203494610812032140}}, {events = 3074178165, data = {ptr = 0x200, fd = 512, u32 = 512, u64 = 1580547965440}}, {events = 144001880, data = {ptr = 0x8954ac8, fd = 144001736, u32 = 144001736, u64 = 618486560762186440}}, {events = 3074306036, data = {ptr = 0xb730b786, fd = -1221544058, u32 = 3073423238, u64 = 35187445512070}}, {events = 8188, data = {ptr = 0xb730cab6, fd = -1221539146, u32 = 3073428150, u64 = 11663362742}}, {events = 3, data = {ptr = 0x1, fd = 1, u32 = 1, u64 = 34359738369}}, {events = 3077637667, data = {ptr = 0xb76b743a, fd = -1217694662, u32 = 3077272634, u64 = 577754893451490362}}, {events = 144024776, data = {ptr = 0xab38, fd = 43832, u32 = 43832, u64 = 13216748584755571512}}, {events = 2, data = {ptr = 0xb7716cb0, fd = -1217303376, u32 = 3077663920, u64 = 577748919152372912}}, {events = 3077592640, data = {ptr = 0xb7724fc4, fd = -1217245244, u32 = 3077722052, u64 = 13832399336164708292}}, {events = 3074326152, data = {ptr = 0xbff68e20, fd = -1074360800, u32 = 3220606496, u64 = 13218361258001468960}}, {events = 3074306036, data = {ptr = 0x1f88, fd = 8072, u32 = 8072, u64 = 35218731835272}}, {events = 3220606384, data = {ptr = 0xb730fa1b, fd = -1221527013, u32 = 3073440283, u64 = 13218160017161648667}}, {events = 3073423238, data = {ptr = 0xbff68de0, fd = -1074360864, u32 = 3220606432, u64 = 618546487222504928}}, {events = 3077710260, data = {ptr = 0x89442d8, fd = 143934168, u32 = 143934168, u64 = 13200218131950486232}}, {events = 3220606408, data = {ptr = 0xb7710623, fd = -1217329629, u32 = 3077637667, u64 = 13198652262822512163}}, {events = 134519083, data = { ptr = 0xb730b786, fd = -1221544058, u32 = 3073423238, u64 = 1096442095032383366}}, {events = 3073017292, data = {ptr = 0x79bac2, fd = 7977666, u32 = 7977666, u64 = 13218465884487137986}}, {events = 11, data = { ptr = 0xb76b4d60, fd = -1217704608, u32 = 3077262688, u64 = 13216748587832790368}}, {events = 3077261712, data = {ptr = 0xb73e7e94, fd = -1220641132, u32 = 3074326164, u64 = 13832400057715818132}}, { events = 3077639559, data = {ptr = 0xcac0, fd = 51904, u32 = 51904, u64 = 13204043882515450560}}, {events = 3074311040, data = {ptr = 0x8954cd0, fd = 144002256, u32 = 144002256, u64 = 13218725575525747920}}, { events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 4294967296}}, {events = 3220606768, data = {ptr = 0xbff68e0c, fd = -1074360820, u32 = 3220606476, u64 = 13832400092221836812}}, {events = 3077318829, data = { ptr = 0x10000000, fd = 268435456, u32 = 268435456, u64 = 268435456}}, {events = 0, data = {ptr = 0x10, fd = 16, u32 = 16, u64 = 16}}, {events = 0, data = {ptr = 0xbff68ef4, fd = -1074360588, u32 = 3220606708, u64 = 13218362533606756084}}, {events = 3220606692, data = {ptr = 0x8048cc4, fd = 134515908, u32 = 134515908, u64 = 13832400364013653188}}, {events = 3077724732, data = {ptr = 0x2, fd = 2, u32 = 2, u64 = 13204130658034647042}}, {events = 1, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 4294967296}}, {events = 3077724384, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 13200271720113504256}}, {events = 3077724384, data = { ---Type <return> to continue, or q <return> to quit--- ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 1, data = {ptr = 0xbff68ee4, fd = -1074360604, u32 = 3220606692, u64 = 13832400367099743972}}, {events = 3074322432, data = {ptr = 0xb73c5099, fd = -1220783975, u32 = 3074183321, u64 = 13832400676190965913}}, {events = 3077724384, data = {ptr = 0x80493a4, fd = 134517668, u32 = 134517668, u64 = 738868892580}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 94489280512}}, {events = 3074311256, data = {ptr = 0x806455c, fd = 134628700, u32 = 134628700, u64 = 1152921504741475676}}, {events = 3220606792, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = { ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 3077349364, data = {ptr = 0xa, fd = 10, u32 = 10, u64 = 13832400965174558730}}, {events = 3220606792, data = {ptr = 0xb76c2993, fd = -1217648237, u32 = 3077319059, u64 = 63206861203}}, {events = 3220606820, data = {ptr = 0x8954b14, fd = 144001812, u32 = 144001812, u64 = 618482987349396244}}, {events = 3220606984, data = {ptr = 0x80644f4, fd = 134628596, u32 = 134628596, u64 = 60264170740}}, {events = 3220606820, data = {ptr = 0x8954b14, fd = 144001812, u32 = 144001812, u64 = 13218725575525747476}}, {events = 134516260, data = {ptr = 0x806455c, fd = 134628700, u32 = 134628700, u64 = 134628700}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, { events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0xbff69008, fd = -1074360312, u32 = 3220606984, u64 = 618482990426001416}}, {events = 112, data = {ptr = 0xb7338a02, fd = -1221359102, u32 = 3073608194, u64 = 578223912466483714}}} bp = 0xbff68b40 event_count = <value optimized out> timer = <value optimized out> fd = <value optimized out> fdp = 0x895d628 select_delay = <value optimized out> #7 0x0804f345 in event_server_main (argc=10, argv=0xbff691c4, service=0x804b191 <ps_service>) at event_server.c:882 stream = 0x0 root_dir = 0x0 user_name = 0x8944f20 "postfix" debug_me = 0 daemon_mode = 1 service_name = 0xbff6af86 "smtp" delay = 0 c = <value optimized out> fd = <value optimized out> ap = <value optimized out> pre_init = 0x804b00b <pre_jail_init> post_init = 0x804abcf <post_jail_init> loop = 0 key = <value optimized out> transport = 0xbff6af8e "inet" alone = 1 zerolimit = 0 watchdog = 0x8954b00 oname_val = 0x1a <Address 0x1a out of bounds> oname = 0xb730efe8 "\211\307\351\315\376\377\377\220U\211\345\203\354\b\211\034$\350\361Y\372\377\201\303\366?\r" oval = 0xbff69098 "8\221\366\277&\253\004\b\n" err = <value optimized out> generation = <value optimized out> msg_vstream_needed = 134523855 redo_syslog_init = 134524939 #8 0x0804ab26 in main (argc=10, argv=0xbff691c4) at postscreen.c:888 str_table = {{name = 0x806776e "smtpd_service", defval = 0x806777c "smtpd", target = 0x8073758, min = 1, max = 0}, {name = 0x80677de "smtpd_banner", defval = 0x8067782 "$myhostname ESMTP $mail_name", target = 0x8073834, min = 1, max = 0}, {name = 0x8067878 "smtpd_forbidden_commands", defval = 0x806779f "CONNECT GET POST", target = 0x8073804, min = 0, max = 0}, {name = 0x80677b0 "postscreen_cache_map", defval = 0x8067c2c "btree:$data_directory/ps_cache", target = 0x8073844, min = 0, max = 0}, {name = 0x80677c5 "postscreen_greet_banner", defval = 0x80677dd "$smtpd_banner", target = 0x80737f4, min = 0, max = 0}, { name = 0x8067498 "postscreen_greet_action", defval = 0x80677eb "ignore", target = 0x8073764, min = 1, max = 0}, {name = 0x80677f2 "postscreen_dnsbl_sites", defval = 0x80680b8 "", target = 0x807378c, min = 0, max = 0}, { name = 0x8067480 "postscreen_dnsbl_action", defval = 0x80677eb "ignore", target = 0x80737e8, min = 1, max = 0}, {name = 0x80674b0 "postscreen_pipelining_action", defval = 0x8067809 "enforce", target = 0x80737d0, min = 1, max = 0}, {name = 0x80678b8 "postscreen_non_smtp_command_action", defval = 0x8069c97 "drop", target = 0x807381c, min = 1, max = 0}, {name = 0x80678dc "postscreen_bare_newline_action", defval = 0x80677eb "ignore", target = 0x80737c0, min = 1, max = 0}, {name = 0x8067811 "postscreen_whitelist_networks", defval = 0x806782f "$mynetworks", target = 0x80737ac, min = 0, max = 0}, { name = 0x806783b "postscreen_blacklist_networks", defval = 0x80680b8 "", target = 0x80737a0, min = 0, max = 0}, {name = 0x8067453 "postscreen_blacklist_action", defval = 0x80677eb "ignore", target = 0x8073828, min = 1, max = 0}, {name = 0x8067859 "postscreen_forbidden_commands", defval = 0x8067877 "$smtpd_forbidden_commands", target = 0x8073784, min = 0, max = 0}, {name = 0x8067891 "postscreen_dnsbl_reply_map", defval = 0x80680b8 "", target = 0x8073770, min = 0, max = 0}, {name = 0x0, defval = 0x0, target = 0x0, min = 0, max = 0}} int_table = {{name = 0x8067722 "default_process_limit", defval = 100, target = 0x8073800, min = 1, max = 0}, {name = 0x8067753 "postscreen_dnsbl_threshold", defval = 1, target = 0x80737c4, min = 0, max = 0}, { name = 0x8067c0c "postscreen_command_count_limit", defval = 20, target = 0x8073774, min = 1, max = 0}, {name = 0x0, defval = 0, target = 0x0, min = 0, max = 0}} nint_table = {{name = 0x8067705 "postscreen_post_queue_limit", defval = 0x8067721 "$default_process_limit", target = 0x80737f0, min = 5, max = 0}, {name = 0x8067738 "postscreen_pre_queue_limit", defval = 0x8067721 "$default_process_limit", target = 0x80737e4, min = 10, max = 0}, {name = 0x0, defval = 0x0, target = 0x0, min = 0, max = 0}} time_table = {{name = 0x8067529 "postscreen_greet_wait", defval = 0x8067511 "${stress?2}${stress:6}s", target = 0x80737e0, min = 1, max = 0}, {name = 0x8067674 "postscreen_greet_ttl", defval = 0x8067689 "1d", target = 0x8073788, min = 1, max = 0}, {name = 0x806768c "postscreen_dnsbl_ttl", defval = 0x80676a1 "1h", target = 0x8073798, min = 1, max = 0}, {name = 0x80676a4 "postscreen_pipelining_ttl", defval = 0x80676be "30d", target = 0x807375c, min = 1, max = 0}, {name = 0x8067ba8 "postscreen_non_smtp_command_ttl", defval = 0x80676be "30d", target = 0x8073824, min = 1, max = 0}, {name = 0x80676c2 "postscreen_bare_newline_ttl", defval = 0x80676be "30d", target = 0x8073820, min = 1, max = 0}, {name = 0x8067bc8 "postscreen_cache_retention_time", defval = 0x80676de "7d", target = 0x80737d4, min = 1, max = 0}, { name = 0x8067be8 "postscreen_cache_cleanup_interval", defval = 0x80676e1 "12h", target = 0x80737bc, min = 1, max = 0}, {name = 0x80676e5 "postscreen_watchdog_timeout", defval = 0x8067701 "10s", target = 0x80737dc, ---Type <return> to continue, or q <return> to quit--- min = 10, max = 0}, {name = 0x0, defval = 0x0, target = 0x0, min = 0, max = 0}} bool_table = {{name = 0x806762d "smtpd_helo_required", defval = 0, target = 0x807383c}, {name = 0x8067642 "disable_vrfy_command", defval = 0, target = 0x8073760}, {name = 0x8067657 "postscreen_pipelining_enable", defval = 0, target = 0x8073818}, {name = 0x8067b64 "postscreen_non_smtp_command_enable", defval = 0, target = 0x8073778}, {name = 0x8067b88 "postscreen_bare_newline_enable", defval = 0, target = 0x80737d8}, { name = 0x0, defval = 0, target = 0x0}} raw_table = {{name = 0x80674f3 "postscreen_command_time_limit", defval = 0x80674d8 "${stress?10}${stress:300}s", target = 0x8073810, min = 1, max = 0}, {name = 0x0, defval = 0x0, target = 0x0, min = 0, max = 0}} nbool_table = {{name = 0x8067613 "postscreen_helo_required", defval = 0x806762c "$smtpd_helo_required", target = 0x8073840}, {name = 0x8067b44 "postscreen_disable_vrfy_command", defval = 0x8067641 "$disable_vrfy_command", target = 0x807382c}, {name = 0x0, defval = 0x0, target = 0x0}}