package: nagios-plugins version: 1.4-6 severity: normal Unfortunately, check_smtp can't handle being asked for a client certificate, it immediately segfaults:
$ ./check_smtp -H foobar -S Segmentation fault Postfix logs (munged): May 12 23:21:06 bahamut postfix/smtpd[8488]: > evenstar.silverdream.org[82.133.58.132]: 220 smtp.pinklemon.net ESMTP pinklemon.net (Debian/GNU) May 12 23:21:06 bahamut postfix/smtpd[8488]: < evenstar.silverdream.org[82.133.58.132]: STARTTLS May 12 23:21:06 bahamut postfix/smtpd[8488]: > evenstar.silverdream.org[82.133.58.132]: 220 Ready to start TLS May 12 23:21:06 bahamut postfix/smtpd[8488]: setting up TLS connection from evenstar.silverdream.org[82.133.58.132] May 12 23:21:06 bahamut postfix/smtpd[8488]: send attr request = seed May 12 23:21:06 bahamut postfix/smtpd[8488]: send attr size = 32 May 12 23:21:07 bahamut postfix/smtpd[8488]: private/tlsmgr: wanted attribute: status May 12 23:21:07 bahamut postfix/smtpd[8488]: input attribute name: status May 12 23:21:07 bahamut postfix/smtpd[8488]: input attribute value: 0 May 12 23:21:07 bahamut postfix/smtpd[8488]: private/tlsmgr: wanted attribute: seed May 12 23:21:07 bahamut postfix/smtpd[8488]: input attribute name: seed May 12 23:21:07 bahamut postfix/smtpd[8488]: input attribute value: Om480LBs0x8w4101Vtq6OWhsCyCGAN/rl76Tl2fKePg= May 12 23:21:07 bahamut postfix/smtpd[8488]: private/tlsmgr: wanted attribute: (list terminator) May 12 23:21:07 bahamut postfix/smtpd[8488]: input attribute name: (end) May 12 23:21:07 bahamut postfix/smtpd[8488]: SSL_accept error from evenstar.silverdream.org[127.0.0.1]: 0 May 12 23:21:07 bahamut postfix/smtpd[8488]: warning: TLS library problem: 8488:error:140710CA:SSL routines:REQUEST_CERTIFICATE:peer The output of strace is attached. Thanks, -- -Jamie L. Penman-Smithson <[EMAIL PROTECTED]> t: +44 1273 424795; f: +44 1273 424795 PGP: C0A7 955E EED6 A309 23D7 863B C76A 26A3 F0DC FCA8 never send mail to: [EMAIL PROTECTED]
execve("./check_smtp", ["./check_smtp", "-H", "smtp.pinklemon.net", "-S", "-f", "[EMAIL PROTECTED]", "-C", "RCPT TO:<[EMAIL PROTECTED]>", "-R", "250"], [/* 16 vars */]) = 0 uname({sys="Linux", node="evenstar.silverdream.org", ...}) = 0 brk(0) = 0x8050000 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40017000 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=25623, ...}) = 0 old_mmap(NULL, 25623, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40018000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/tls/libnsl.so.1", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 <\0\000"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0644, st_size=73304, ...}) = 0 old_mmap(NULL, 80544, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4001f000 old_mmap(0x40030000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x11000) = 0x40030000 old_mmap(0x40031000, 6816, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40031000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/tls/libresolv.so.2", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220)\0"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0644, st_size=64924, ...}) = 0 old_mmap(NULL, 73640, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40033000 old_mmap(0x40042000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xf000) = 0x40042000 old_mmap(0x40043000, 8104, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40043000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/usr/lib/i686/cmov/libssl.so.0.9.7", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\205\0"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0644, st_size=198576, ...}) = 0 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40045000 old_mmap(NULL, 199344, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40046000 old_mmap(0x40074000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x2e000) = 0x40074000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/usr/lib/i686/cmov/libcrypto.so.0.9.7", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0p\300\2"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0644, st_size=1029672, ...}) = 0 old_mmap(NULL, 1043608, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40077000 old_mmap(0x40161000, 73728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xea000) = 0x40161000 old_mmap(0x40173000, 11416, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40173000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/tls/libc.so.6", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`Z\1\000"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0644, st_size=1254468, ...}) = 0 old_mmap(NULL, 1264780, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40176000 old_mmap(0x402a0000, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x129000) = 0x402a0000 old_mmap(0x402a9000, 7308, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x402a9000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/tls/libdl.so.2", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320\32"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0644, st_size=9872, ...}) = 0 old_mmap(NULL, 8632, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x402ab000 old_mmap(0x402ad000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x2000) = 0x402ad000 close(3) = 0 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x402ae000 set_thread_area({entry_number:-1 -> 6, base_addr:0x402ae300, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0 munmap(0x40018000, 25623) = 0 brk(0) = 0x8050000 brk(0x8071000) = 0x8071000 brk(0) = 0x8071000 gettimeofday({1115936315, 322346}, NULL) = 0 getpid() = 24807 open("/etc/resolv.conf", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=172, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40018000 read(3, "# Dynamic resolv.conf(5) file fo"..., 4096) = 172 read(3, "", 4096) = 0 close(3) = 0 munmap(0x40018000, 4096) = 0 uname({sys="Linux", node="evenstar.silverdream.org", ...}) = 0 socket(PF_FILE, SOCK_STREAM, 0) = 3 connect(3, {sa_family=AF_FILE, path="/var/run/.nscd_socket"}, 110) = -1 ENOENT (No such file or directory) close(3) = 0 open("/etc/nsswitch.conf", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=465, ...}) = 0 mmap2(NULL, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x402af000 read(3, "# /etc/nsswitch.conf\n#\n# Example"..., 131072) = 465 read(3, "", 131072) = 0 close(3) = 0 munmap(0x402af000, 131072) = 0 open("/etc/ld.so.cache", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=25623, ...}) = 0 old_mmap(NULL, 25623, PROT_READ, MAP_PRIVATE, 3, 0) = 0x402af000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/tls/libnss_files.so.2", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\35"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0644, st_size=34748, ...}) = 0 old_mmap(NULL, 38044, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x402b6000 old_mmap(0x402bf000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x8000) = 0x402bf000 close(3) = 0 munmap(0x402af000, 25623) = 0 open("/etc/host.conf", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=26, ...}) = 0 mmap2(NULL, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x402c0000 read(3, "order hosts,bind\nmulti on\n", 131072) = 26 read(3, "", 131072) = 0 close(3) = 0 munmap(0x402c0000, 131072) = 0 open("/etc/hosts", O_RDONLY) = 3 fcntl64(3, F_GETFD) = 0 fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=357, ...}) = 0 mmap2(NULL, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x402c0000 read(3, "127.0.0.1\tlocalhost\n82.133.58.13"..., 131072) = 357 read(3, "", 131072) = 0 close(3) = 0 munmap(0x402c0000, 131072) = 0 open("/etc/ld.so.cache", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=25623, ...}) = 0 old_mmap(NULL, 25623, PROT_READ, MAP_PRIVATE, 3, 0) = 0x402c0000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/tls/libnss_dns.so.2", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240\16"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0644, st_size=13976, ...}) = 0 old_mmap(NULL, 12704, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x402c7000 old_mmap(0x402ca000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x3000) = 0x402ca000 close(3) = 0 munmap(0x402c0000, 25623) = 0 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 3 connect(3, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("127.0.0.1")}, 28) = 0 send(3, "]\367\1\0\0\1\0\0\0\0\0\0\4smtp\tpinklemon\3net\0"..., 36, 0) = 36 gettimeofday({1115936315, 333931}, NULL) = 0 poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, 5000) = 1 ioctl(3, FIONREAD, [170]) = 0 recvfrom(3, "]\367\205\200\0\1\0\1\0\4\0\2\4smtp\tpinklemon\3net\0"..., 1024, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("127.0.0.1")}, [16]) = 170 close(3) = 0 uname({sys="Linux", node="evenstar.silverdream.org", ...}) = 0 rt_sigaction(SIGALRM, {0x804a890, [ALRM], SA_RESTART}, {SIG_DFL}, 8) = 0 alarm(10) = 0 gettimeofday({1115936315, 335591}, NULL) = 0 open("/etc/hosts", O_RDONLY) = 3 fcntl64(3, F_GETFD) = 0 fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=357, ...}) = 0 mmap2(NULL, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x402cb000 read(3, "127.0.0.1\tlocalhost\n82.133.58.13"..., 131072) = 357 read(3, "", 131072) = 0 close(3) = 0 munmap(0x402cb000, 131072) = 0 open("/etc/hosts", O_RDONLY) = 3 fcntl64(3, F_GETFD) = 0 fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=357, ...}) = 0 mmap2(NULL, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x402cb000 read(3, "127.0.0.1\tlocalhost\n82.133.58.13"..., 131072) = 357 read(3, "", 131072) = 0 close(3) = 0 munmap(0x402cb000, 131072) = 0 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 3 connect(3, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("127.0.0.1")}, 28) = 0 send(3, "]\370\1\0\0\1\0\0\0\0\0\0\4smtp\tpinklemon\3net\0"..., 36, 0) = 36 gettimeofday({1115936315, 339311}, NULL) = 0 poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, 5000) = 1 ioctl(3, FIONREAD, [87]) = 0 recvfrom(3, "]\370\205\200\0\1\0\0\0\1\0\0\4smtp\tpinklemon\3net\0"..., 1024, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("127.0.0.1")}, [16]) = 87 close(3) = 0 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 3 connect(3, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("127.0.0.1")}, 28) = 0 send(3, "]\371\1\0\0\1\0\0\0\0\0\0\4smtp\tpinklemon\3net\v"..., 52, 0) = 52 gettimeofday({1115936315, 341333}, NULL) = 0 poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, 5000) = 1 ioctl(3, FIONREAD, [116]) = 0 recvfrom(3, "]\371\205\203\0\1\0\0\0\1\0\0\4smtp\tpinklemon\3net\v"..., 1024, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("127.0.0.1")}, [16]) = 116 close(3) = 0 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 3 connect(3, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("127.0.0.1")}, 28) = 0 send(3, "]\372\1\0\0\1\0\0\0\0\0\0\4smtp\tpinklemon\3net\0"..., 36, 0) = 36 gettimeofday({1115936315, 343330}, NULL) = 0 poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, 5000) = 1 ioctl(3, FIONREAD, [170]) = 0 recvfrom(3, "]\372\205\200\0\1\0\1\0\4\0\2\4smtp\tpinklemon\3net\0"..., 1024, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("127.0.0.1")}, [16]) = 170 close(3) = 0 socket(PF_INET, SOCK_STREAM, IPPROTO_TCP) = 3 connect(3, {sa_family=AF_INET, sin_port=htons(25), sin_addr=inet_addr("82.133.58.135")}, 16) = 0 recv(3, "220 smtp.pinklemon.net ESMTP pin"..., 1023, 0) = 57 send(3, "STARTTLS\r\n", 10, 0) = 10 recv(3, "220 Ready to start TLS\r\n", 1023, 0) = 24 time(NULL) = 1115936315 getpid() = 24807 time(NULL) = 1115936315 getpid() = 24807 getpid() = 24807 getpid() = 24807 open("/dev/urandom", O_RDONLY|O_NONBLOCK|O_NOCTTY) = 4 select(5, [4], NULL, NULL, {0, 10000}) = 1 (in [4], left {0, 10000}) read(4, "8_\304\257\6\203<n\1\2156\315r\262\277\363\276\242\370"..., 32) = 32 close(4) = 0 getpid() = 24807 getpid() = 24807 getuid32() = 0 getpid() = 24807 time(NULL) = 1115936315 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 write(3, "\200.\1\0\2\0\25\0\0\0\20\7\0\300\3\0\200\1\0\200\10\0"..., 48) = 48 read(3, "\204Q", 2) = 2 read(3, "\4\0\1\0\2\4!\0\25\0\0200\202\4\0350\202\3\206\240\3\2"..., 1105) = 1105 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 getpid() = 24807 write(3, "\200\222\2\7\0\300\0\0\0\200\0\10>-G\211%\230\365y\205"..., 148) = 148 write(3, "\0(\7\340DN&\230oa\327+\201\203\310\312\30\247\326\341"..., 43) = 43 read(3, "\0(", 2) = 2 read(3, "\7A\\0]\327\210F\320\5\220\206\267\304\361\220&\23X\336"..., 41) = 41 read(3, "\0(", 2) = 2 read(3, "\6\240)\276\215\265\\\245\217>\223\f\210p\306b,\305\271"..., 41) = 41 write(3, "\0\30\5\225Y\37\'PQ \243\314\353W(\242i\t\364h\3613\027"..., 27) = 27 read(3, "", 2) = 0 getpid() = 24807 getpid() = 24807 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++
signature.asc
Description: This is a digitally signed message part