wu.ftpd vulnerability - otazka
Dalibor Toman
dtoman na fortech.cz
Čtvrtek Únor 11 09:30:59 CET 1999
>Mozna by bylo na miste rozlistit Pascal, Turbo Pascal a Delphi. Pascal
>jako takovy je skoro nepouzitelny (zajemci o detaily necht si prohlednou
>zdrojaky TeXu, jake kejkle musi Knuth vyvadet, aby mohl pracovat s texty).
>Turbo Pascal je jen o delta lepsi (pokud nejsou vsechny stringy
>dimenzovane na max. velikost, pak se tam buffer overrun vyrobi bez
>potizi taky). Delphi je sice fajn, ale rezie udrzby tech dynamicky
>alokovanych stringu muze byt docela netrivialni a rozhodne ne vhodna
>pro jazyk, jez je urcen pro nizkourovnove zalezitosti.
jestli Ti prijde cteni textove radky dat ze socketu do char promenne jako
nizkourovnova zalezitost, pak nevim co si mam myslet :-)
Je jedno (z hlediska rezie) jestli buffer alokuje/dealokuje uzivatel nebo
kompilatorem
generovany kod. Bavime se prece o praci s retezci, neni jednodussi,
rychlejsi a mene nachylne k chybam, kdyz muzu napsat
stringvar := 'sad asd asdas d asdasd'
a vedet, ze se mi alokuje buffer primerene velikosti, nikde nic nepretece
ani kdyz k promene pridam dalsi text atd atd
Podle me by bylo mozne napsat a pouzivat knihovni funkce do Ccka, ktere
budou delat neco podobneho. Pravda Delphi ma pro toto podporu primo v
kompilatoru, ktery napr lokalni string promenne ve funkcich pred ukoncenim
funkce automaticky dealokuje, coz by mohl byt v C problem.
Podotykam, ze Delphi reseni dlouhych stringu zachovava kompatibilitu s
null-term retezci (vzdy se za posledni znak uklada nula), takze je bez
problemu mozne na takovy string pouzit oblibenou null-term funkci (ovsem
treba s rizikem preteceni buffer :-( )
Navic nektere operace (napr zjisteni delky stringa, ...) probihaji u Delphi
stringu podstatne rychleji - zvlaste u delsich retezcu
Ja bych treba v D rad videl nektere veci z Ccka (napr makro preprocesor) tak
proc by nemohl nekdo v C postradat rysy z jineho jazyka ?
P.S. at se nebavime jen o Delphi - existuje projekt FreePascal, ktery
vychazi z borlandi definice turbo pascalu a prebira i rysy z Delphi.
FreePascal existuje ve verzich pro spoustu platforem, samozrejme vcetne
Linuxu.
Zdravi
D. Toman
Další informace o konferenci Linux