Re: Segfault when using doveadm batch -A : kick

2018-12-07 Thread Aki Tuomi


> On 07 December 2018 at 21:34 Apollon Oikonomopoulos  
> wrote:
> 
> 
> On 21:33 Fri 07 Dec , Apollon Oikonomopoulos wrote:
> > Hi,
> > 
> > Apparently the "kick" doveadm_cmd_ver2 struct lacks a .mail_cmd member 
> > pointing to an appropriate allocation function, causing a NULL pointer 
> > dereference when used via `doveadm batch`.
> > 
> > (gdb) bt
> > #0  0x in ?? ()
> > #1  0x55585882 in doveadm_mail_cmd_init 
> > (cmd=cmd@entry=0x7fffe680, set=0x555f2440) at doveadm-mail.c:596
> > #2  0x55586f68 in cmd_batch_add (argv=, 
> > argc=, batchctx=0x55606538) at doveadm-mail-batch.c:78
> > #3  cmd_batch_preinit () at doveadm-mail-batch.c:126
> > #4  0x555854ce in doveadm_mail_cmd_exec () at doveadm-mail.c:632
> > #5  0x55585e66 in doveadm_mail_cmd (argv=, argc=4, 
> > cmd=0x55602a00) at doveadm-mail.c:748
> > #6  doveadm_mail_try_run () at doveadm-mail.c:821
> > #7  0x55575e7f in main () at doveadm.c:404
> > #8  0x774acb17 in __libc_start_main (main=0x55575990 , 
> > argc=5, argv=0x7fffea18, init=, fini=, 
> > rtld_fini=, stack_end=0x7fffea08) at 
> > ../csu/libc-start.c:310
> > #9  0x55575fca in _start () at doveadm-mail.c:1127
> > 
> > (gdb) p *cmd
> > $5 = {alloc = 0x0, name = 0x555bdd0c "kick", usage_args = 
> > 0x555be738 "[-a ] [|]"}
> > 
> 
> Forgot to add, this seems to affect both, 2.2 and 2.3 series.

Hi!

Thank you for reporting this bug, we'll look into it. 

Aki


Re: Segfault when using doveadm batch -A : kick

2018-12-07 Thread Apollon Oikonomopoulos
On 21:33 Fri 07 Dec , Apollon Oikonomopoulos wrote:
> Hi,
> 
> Apparently the "kick" doveadm_cmd_ver2 struct lacks a .mail_cmd member 
> pointing to an appropriate allocation function, causing a NULL pointer 
> dereference when used via `doveadm batch`.
> 
> (gdb) bt
> #0  0x in ?? ()
> #1  0x55585882 in doveadm_mail_cmd_init 
> (cmd=cmd@entry=0x7fffe680, set=0x555f2440) at doveadm-mail.c:596
> #2  0x55586f68 in cmd_batch_add (argv=, 
> argc=, batchctx=0x55606538) at doveadm-mail-batch.c:78
> #3  cmd_batch_preinit () at doveadm-mail-batch.c:126
> #4  0x555854ce in doveadm_mail_cmd_exec () at doveadm-mail.c:632
> #5  0x55585e66 in doveadm_mail_cmd (argv=, argc=4, 
> cmd=0x55602a00) at doveadm-mail.c:748
> #6  doveadm_mail_try_run () at doveadm-mail.c:821
> #7  0x55575e7f in main () at doveadm.c:404
> #8  0x774acb17 in __libc_start_main (main=0x55575990 , 
> argc=5, argv=0x7fffea18, init=, fini=, 
> rtld_fini=, stack_end=0x7fffea08) at 
> ../csu/libc-start.c:310
> #9  0x55575fca in _start () at doveadm-mail.c:1127
> 
> (gdb) p *cmd
> $5 = {alloc = 0x0, name = 0x555bdd0c "kick", usage_args = 0x555be738 
> "[-a ] [|]"}
> 

Forgot to add, this seems to affect both, 2.2 and 2.3 series.


Segfault when using doveadm batch -A : kick

2018-12-07 Thread Apollon Oikonomopoulos
Hi,

Apparently the "kick" doveadm_cmd_ver2 struct lacks a .mail_cmd member 
pointing to an appropriate allocation function, causing a NULL pointer 
dereference when used via `doveadm batch`.

(gdb) bt
#0  0x in ?? ()
#1  0x55585882 in doveadm_mail_cmd_init (cmd=cmd@entry=0x7fffe680, 
set=0x555f2440) at doveadm-mail.c:596
#2  0x55586f68 in cmd_batch_add (argv=, argc=, batchctx=0x55606538) at doveadm-mail-batch.c:78
#3  cmd_batch_preinit () at doveadm-mail-batch.c:126
#4  0x555854ce in doveadm_mail_cmd_exec () at doveadm-mail.c:632
#5  0x55585e66 in doveadm_mail_cmd (argv=, argc=4, 
cmd=0x55602a00) at doveadm-mail.c:748
#6  doveadm_mail_try_run () at doveadm-mail.c:821
#7  0x55575e7f in main () at doveadm.c:404
#8  0x774acb17 in __libc_start_main (main=0x55575990 , 
argc=5, argv=0x7fffea18, init=, fini=, 
rtld_fini=, stack_end=0x7fffea08) at 
../csu/libc-start.c:310
#9  0x55575fca in _start () at doveadm-mail.c:1127

(gdb) p *cmd
$5 = {alloc = 0x0, name = 0x555bdd0c "kick", usage_args = 0x555be738 
"[-a ] [|]"}

(This is Debian bug #915411[1])

Regards,
Apollon

[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=915411