PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie Fehlerfall testen?



stefan-tiger
25-04-2006, 15:33
Hallo,

wenn ich in meinem C Programm eine Systemfunktion aufrufe und diese z.B. im fehlerfall -1 zurückgibt, dann kann ich ja machen:



if(systemfunktion()==-1)
{
perror("meine Beschreibung");
}


Das möchte ich gerne testen. Momentan möchte ich z.B. daß die Funktion fork() mal -1 zurückgibt. Wie macht man sowas?

Yonibear
25-04-2006, 16:15
Du kannst ja eine dynamische Library, die z.B. ein selbstgeschriebenes fork enthält, dass immer -1 zurückgibt. Wenn du dann dein Hauptprogramm ausführst, kannst du den dynamischen Linker mit der LD_PRELOAD-Umgebungsvariable dazu bringen, dass fork aus deiner lib zu verwenden.

gorba
26-04-2006, 08:41
und am besten BOOL beim fehler zurückgeben, das gibt schöneren code:

if(!systemfunktion()){
{
perror("meine Beschreibung");
}
}