Displaying 1 result from an estimated 1 matches for "sieve_ast_argument_name".
2014 Dec 29
2
Segmentation fault in pigeonhole lib-sieve
..._next(*arg);
139
140 /* Check syntax:
141 * ":comparator" <comparator-name: string>
142 */
143 if ( (*arg)->type != SAAT_STRING ) {
144 sieve_argument_validate_error(valdtr, *arg,
145 ":comparator tag requires one string argument, but %s was found",
146 sieve_ast_argument_name(*arg) );
147 return FALSE;
(gdb) print arg
$1 = (struct sieve_ast_argument **) 0x7fff5c3cfa58
(gdb) print *arg
$2 = (struct sieve_ast_argument *) 0x0
So sieve_ast_argument_next() is returning NULL and we're trying to
dereference it without checking.
Here's a completely naive attempt at...