LOCAL_CONFIG Kstorage macro LOCAL_RULESETS ### check for the existance of the X-MailScanner Header HX-MailScanner: $>+CheckXMSc D{SobigFPat}Found to be clean D{SobigFMsg}This message may contain the Sobig.F virus. SCheckXMSc ### if it exists, and the defined value is set, record the presence R${SobigFPat} $* $: $(storage {SobigFCheck} $@ SobigF $) $1 R$* $@ OK ### check for the existance of a Message-Id Header HMessage-Id: $>CheckMessageId SCheckMessageId # Record the presence of the header R$* $: $(storage {MessageIdCheck} $@ OK $) $1 R$* $@ OK Scheck_eoh # Check if a Message-Id was found R$* $: < $&{MessageIdCheck} > # Clear Message-Id for the next message R$* $: $(storage {MessageIdCheck} $) $1 # If Message-Id was found clear the X-MailScanner store and return with OK R< $+ > $@ $>ClearSobig # no Message-Id->check X-Mailscanner presence, too R$* $: < $&{SobigFCheck} > # clear store R$* $: $(storage {SobigFCheck} $) $1 # Header found? -> reject the message R< SobigF > $#error $: 553 ${SobigFMsg} # No Header! Fine, take the message R$* $@ OK SClearSobig R$* $: $(storage {SobigFCheck} $) $1 R$* $@ OK