libftdi Archives

Subject: how to ftdi_usb_close without segfault?

From: Rodrigo Rosa <rodrigorosa.lg@xxxxxxxxx>
To: libftdi@xxxxxxxxxxxxxxxxxxxxxxx
Date: Tue, 26 Jul 2011 19:03:11 -0700
hi
i modified ft232_prog to set the product, manufacturer, and power
settings of an ft2232h
it works, but if i do ftdi_usb_close i get a segfault about libc something

i basically did this:

unsigned char new[128] = {0,};
ftdi_init(&ftdi)
ftdi_usb_open_desc(&ftdi, ...)
ftdi_read_eeprom(&ftdi,old,...)
ftdi_eeprom_decode(ee.ftdi,old
// change some stuff on the eeprom
ee.libftdi.size = 128 // The size of the (external) EEPROM on my board
ee.libftdi.manufacturer = MY_MANUFACTURER;
ee.libftdi.product = MY_PRODUCT;
ee.libftdi.max_power = 150/2;
// create a new one
ftdi_eeprom_build(&(ee.libftdi),new)
ftdi_write_eeprom(&ftdi,new)
ftdi_usb_close(&ftdi)

the last command gives a segfault.
if i just quit it works ok

any clues regarding what i'm missing?
i'm using 0.17-1 on ubuntu 10.04 32bit

this is what i get from gdb:
__libc_start_main (main=0x80494fc <main>, argc=1, ubp_av=0xbffff224,
init=0x8049870 <__libc_csu_init>, fini=0x8049860 <__libc_csu_fini>,
rtld_fini=0x11e030 <_dl_fini>, stack_end=0xbffff21c) at
libc-start.c:258
258     libc-start.c: No such file or directory.
        in libc-start.c
(gdb)

Program received signal SIGSEGV, Segmentation fault.
0x0013a867 in ?? () from /usr/lib/libftdi.so.1
(gdb) bt
#0  0x0013a867 in ?? () from /usr/lib/libftdi.so.1
#1  0x0013acfd in ftdi_usb_close () from /usr/lib/libftdi.so.1
#2  0x08048d84 in do_close () at iib_eeprom.c:191
#3  0x0016e1bf in __run_exit_handlers (status=-1073745756,
listp=0x295324, run_list_atexit=true) at exit.c:78
#4  0x0016e22f in *__GI_exit (status=0) at exit.c:100
#5  0x00155bde in __libc_start_main (main=0x80494fc <main>, argc=1,
ubp_av=0xbffff224, init=0x8049870 <__libc_csu_init>, fini=0x8049860
<__libc_csu_fini>, rtld_fini=0x11e030 <_dl_fini>,
stack_end=0xbffff21c) at libc-start.c:258
#6  0x08048ad1 in _start ()

thanks

-- 
Rodrigo.

--
libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx   

Current Thread