5 Aug
2002
5 Aug
'02
14:20
Hi, On Mon, 5 Aug 2002, Bernhard Walle wrote:
str(n)cmp() greift ausschliesslich lesenderweise auf Strings zu, kann deshalb also per definitionem keinen Pufferueberlauf erzeugen. Wenn du glaubst, es gaebe strncmp(), um dies zu verhindern, dann hast du nicht verstanden, wozu strncmp() gut ist, bzw. was ein Pufferueberlauf ist.
Naja, man kann z. B. durch einen lesenden Zugriff auf geschützte Speicherbereiche (verursacht durch fehlende Null-Terminierung) einen Speicherzugriffsfehler und damit die sofortige Beendigung des Programms verursachen.
Klar. Aber wie soll die fehlende null-Terminierung dahin kommen, wenn nicht durch einen Fehler. Der allerdings liegt dann nicht in str(n)cmp(). Ciao, Micha.