/bin/sh

Jakub Bogusz qboosh w prioris.mini.pw.edu.pl
Nie, 20 Maj 2001, 21:35:58 CEST


On Sun, May 20, 2001 at 04:58:56PM +0200, Arkadiusz Miskiewicz wrote:
> Jakub Bogusz <qboosh w prioris.mini.pw.edu.pl> writes:
> > Niestety(?) u mnie się zbudował, bez dziwnych zachowań.
> pakiet skompilować i zbudować się zbuduje ale w logu jest sporo memory
> faultów ksha ;(

Przy unixODBC? U mnie nie ma żadnego...

> Najprościej to wykonać:
> [misiek w arm misiek]$ /usr/bin/scrollkeeper-update -p /costamxyz
> Memory fault 
> Memory fault 
> Memory fault 
> Memory fault 
> ...

Po -p katalog istniejący czy nie?
Jak istniejący (lub ze ścieżką istniejącą do n-1 poziomu i prawami
zapisu w ostatnim katalogu) to się nie wywala.
Jeżeli katalog nie istnieje ani nie umie go zrobić to:

$ /usr/bin/scrollkeeper-update -p /aaaa
Memory fault (core dumped)

ale:
$ file core
core: ELF 32-bit LSB core file of 'scrollkeeper-in' (signal 11), Intel
  80386, version 1 (SYSV), from 'scrollkeeper-in'

$ gdb /usr/bin/scrollkeeper-install core
GNU gdb 5.0
[...]
(gdb) bt
#0  0x40148050 in readdir () from /lib/libc.so.6
#1  0x8049e1f in create_content_list_files (scrollkeeper_dir=0xbffffab4 "/aaaa") at install.c:482
#2  0x804a31f in main (argc=4, argv=0xbffffc2c) at install.c:607
#3  0x400c2672 in __libc_start_main () from /lib/libc.so.6
(gdb) p/x *(int*)($ebp+8)
$7 = 0x0


Jak widać to nie sh, tylko scrollkeeper-install - nie sprawdza statusu
opendir().


A w ogóle ten scrollkeeper-install mi się nie podoba:

  strcpy (scrollkeeper_dir, optarg);  /* XXX buffer overflow */

albo:

  sprintf(command, "mkdir %s/%s", scrollkeeper_dir, dir_ent->d_name);
  system(command);

Aż chce się wyjść z vima. I wychodzę.

> > Długi ten scrollkeeper-install jest? Może by się dało ustalić, na jakim
> > poleceniu się sypie?
> To binarka.

Właśnie widzę...


-- 
Jakub Bogusz
http://prioris.mini.pw.edu.pl/~qboosh/



Więcej informacji o liście dyskusyjnej pld-devel-pl