K
Kryptox
Grünschnabel
Ich habe ein vorbereitetes C-Projekt.In diesem Projakt sind Verzeichnisse:scan - da befinden sich weitere Verzeichnisse und Dateien.Einige dieser Dateien sind von Viren befallen; virus - mit verschiedenen Viren in Form einer Datei. Meine Aufgabe ist es, einen Algorithmus in C unter Linux/Unix zu implementieren, welcher alle befallenen Dateien aufspürt und feststellt, welcher Virus diese Datei ab welchem Offset (Abstand zum Beginn der Datei) befallen hat. Bsp.: Wäre xxx ein Virus und abcaaxxxabaa eine befallene Datei, so lautete die Antwort: Diese Datei wurde vom Virus xxx ab der Stelle 5 befallen. Im Projekt sollen zwei Funktionen vorhanden sein: void scan(void) - zum Scannen; void report_virus(char *filename, int virus_id, long offset): Immer wenn ein Virus entdeckt wurde, wird dies mit dieser Funktion gemeldet. filename beschreibt dabei den Namen der infizierten Datei (absolut oder relativ). virus_id zeigt an, von welchem Virus die Datei befallen wurde. Alle Viren sind, ihrem Dateinamen entsprechend, numeriert. Der dritte Parameter, offset gibt an, ab welchem Offset der Virus beginnt.Nach erfolgtem Check soll ich eine Zusammenfassung erhalten, der ich entnehmen kann, wie viele der infizierten Dateien ich korrekt ausfindig gemacht habe. Eine Datei kann durchaus von mehr als einem Virus befallen werden. Wie kann ich mich daran machen?