[augeas-devel] [Augeas] #178: Wrong path expression triggers crash

Augeas trac at fedorahosted.org
Tue Jan 25 13:57:00 UTC 2011


#178: Wrong path expression triggers crash
------------------------+---------------------------------------------------
 Reporter:  fgiraldeau  |       Owner:  lutter
     Type:  defect      |      Status:  new   
 Priority:  critical    |   Milestone:  next  
Component:  Augeas      |     Version:  devel 
 Keywords:              |  
------------------------+---------------------------------------------------
 Here is the error:

 *** glibc detected *** /home/francis/workspace/augeas/src/.libs/augtool:
 double free or corruption (!prev): 0x0893fc28 ***

 The stack trace:
 Program received signal SIGABRT, Aborted.
 0x0012e416 in __kernel_vsyscall ()
 (gdb) bt
 #0  0x0012e416 in __kernel_vsyscall ()
 #1  0x001c7941 in raise (sig=6) at
 ../nptl/sysdeps/unix/sysv/linux/raise.c:64
 #2  0x001cae42 in abort () at abort.c:92
 #3  0x001ff305 in __libc_message (do_abort=2,
     fmt=0x2d7280 "*** glibc detected *** %s: %s: 0x%s ***\n")
     at ../sysdeps/unix/sysv/linux/libc_fatal.c:189
 #4  0x00209501 in malloc_printerr (action=<value optimized out>,
     str=0x6 <Address 0x6 out of bounds>, ptr=0x893fc28) at malloc.c:6283
 #5  0x0020ad70 in _int_free (av=<value optimized out>, p=<value optimized
 out>)
     at malloc.c:4795
 #6  0x0020de5d in __libc_free (mem=0x893fc28) at malloc.c:3738
 #7  0x00153f42 in reset_error (err=0x80508c0) at errcode.c:79
 #8  0x001313b0 in api_entry (aug=0x8050890) at augeas.c:327
 #9  0x00132aaf in aug_match (aug=0x8050890,
     pathin=0x985ab46 "/files/etc/dhcp3/dhcpd.conf/option[domain-name-
 servers]*",
     matches=0xbfffef6c) at augeas.c:1031
 #10 0x08049bb7 in cmd_match (cmd=0xbfffefdc) at augtool.c:467
 #11 0x0804ac2d in run_command (line=<value optimized out>) at
 augtool.c:1152
 #12 0x0804b108 in main_loop (argc=5, argv=0xbffff274) at augtool.c:1219
 #13 main (argc=5, argv=0xbffff274) at augtool.c:1272


 To reproduce the bug, do few wrong match commands in augtool, like this:
 augtool> match /files/etc/dhcp3/dhcpd.conf/option[domain-name-servers]*/
 error: Invalid path expression
 error: illegal string literal
 error: /files/etc/dhcp3/dhcpd.conf/option[domain-name-servers]*l|=|
   (error matching /files/etc/dhcp3/dhcpd.conf/option[domain-name-
 servers]*)
 augtool> match /files/etc/dhcp3/dhcpd.conf/option[domain-name-servers]*/
 error: Invalid path expression
 error: illegal string literal
 error: /files/etc/dhcp3/dhcpd.conf/option[domain-name-servers]*8
��;
 H|=|
   (error matching /files/etc/dhcp3/dhcpd.conf/option[domain-name-
 servers]*)
 augtool> match /files/etc/dhcp3/dhcpd.conf/option[domain-name-servers]*/

 At some point, the corruption occur.

-- 
Ticket URL: <https://fedorahosted.org/augeas/ticket/178>
Augeas <http://augeas.net/>
a configuration API




More information about the augeas-devel mailing list