• Corrupted Message

    From Warpslide@21:3/110 to All on Thu Mar 19 10:50:38 2026
    Hi All,

    One of my links sent in a packet with a corrupted message, which HPT tossed and promptly sent back out.

    The packet itself seemed fine date & address wise, but the message was not:

    Message header ------------------------------------------------------------------------------ "rom : " 16/2047
    To : " Updates previous tstm wnd dmg rep"
    Subject : ""
    DateTime : "00 00 00:00:00"
    Attr : 0x0000
    OrigAddr : 400/38
    DestAddr : 400/1

    I've put a couple of rules in place with HPT's filter capabilities:

    If $fromname is empty or begins with whitespace then mark the message as bad
    If $toname is empty or begins with whitespace then mark the message as bad
    If $subject is empty or begins with whitespace then mark the message as bad

    The date in the message was also all zeros, which GoldEd reads as Jan 01 1980.

    I've also added some checks in there for either an invalid date or +/- 90 days then mark the message as bad.

    I'd like to hear others comments on these checks, do they seem sane? Mystic or Telegard don't seem to let you send a message with an empty subject, but
    GoldEd will allow you to.


    Jay

    ... Predestination was doomed from the start

    --- Mystic BBS v1.12 A49 2024/05/29 (Linux/64)
    * Origin: Northern Realms (21:3/110)
  • From deon@21:2/116 to Warpslide on Fri Mar 20 07:27:09 2026
    Re: Corrupted Message
    By: Warpslide to All on Thu Mar 19 2026 10:50 am

    Howdy,

    I've put a couple of rules in place with HPT's filter capabilities:

    If $fromname is empty or begins with whitespace then mark the message as bad If $toname is empty or begins with whitespace then mark the message as bad If $subject is empty or begins with whitespace then mark the message as bad

    I'd like to hear others comments on these checks, do they seem sane? Mystic

    Clrghouz does the same regarding the "is empty" part - it goes one step further if the body of the message is empty, it discards the message.

    I dont do anything to those fields if they have a value, and it starts with a whitespace though. Maybe I should?

    I've also added some checks in there for either an invalid date or +/- 90 days then mark the message as bad.

    I also validate the date, and if it is future dated (by more than 2 days), or older than 90 (I think), or doesnt resemble a date its discarded.


    ...лоеп
    --- SBBSecho 3.29-Linux
    * Origin: I'm playing with ANSI+videotex - wanna play too? (21:2/116)
  • From Warpslide@21:3/110 to deon on Sat Mar 21 11:01:12 2026
    On 20 Mar 2026, deon said the following...

    Clrghouz does the same regarding the "is empty" part - it goes one step further if the body of the message is empty, it discards the message.

    Good thinking, I've added in some checks for "if empty" or "is empty after stripping out all blank lines & controls lines".

    I dont do anything to those fields if they have a value, and it starts with a whitespace though. Maybe I should?

    I've been going back & forth on the "begins with whitespace" thing. I'm thinking a To or From name should never begin with whitespace. I can see a subject having a higher chance of beginning with a space if someone fat-fingered it.

    I also validate the date, and if it is future dated (by more than 2
    days), or older than 90 (I think), or doesnt resemble a date its discarded.

    Right now I'm doing a +/- of the same number of days, it would be trivial to change that to different values for past & future.

    Thanks for the feedback, good to know I wasn't way off base.


    If anyone is running HPT and wants to try this out, you can find the script here:

    https://nrbbs.net/badcheck.pl.txt

    Add it to your filter.pl file like this:

    BEGIN {
    require "badcheck.pl";
    }

    sub filter {
    if (my $rc = badcheck()) {
    return $rc;
    }
    }


    Jay

    ... I was wondering why the ball was getting bigger. Then it hit me

    --- Mystic BBS v1.12 A49 2024/05/29 (Linux/64)
    * Origin: Northern Realms (21:3/110)
  • From Vorlon@21:1/195 to Warpslide on Sun Mar 22 13:22:34 2026

    Hello Warpslide!

    21 Mar 26 11:01, you wrote to deon:

    Right now I'm doing a +/- of the same number of days, it would be
    trivial to change that to different values for past & future.

    Thanks for the feedback, good to know I wasn't way off base.

    Have you used the "-tooold 60" statement in your echo line in the hpt config? That helps a lot.

    I posted a patch to the husky echo back on 10th October last year that, covers something like what your
    script is doing for the date issue.:

    HPT Bug: Corrupted packets not rejected due to missing date validation



    Vorlon
    aka
    Stephen


    --- GoldED+/LNX 1.1.5-b20250409
    * Origin: Dragon's Lair ---:- dragon.vk3heg.net -:--- Prt: 6800 (21:1/195)