[Xastir] Blocking a callsign?
Tom Russo
russo at bogodyn.org
Fri Sep 5 12:40:17 PDT 2025
On Fri, Sep 05, 2025 at 02:29:54PM -0400, we recorded a bogon-computron collision of the <qrv at kd4e.com> flavor, containing:
> You under-estimate yourself.
It is possible you're underestimating what it takes to do something like this,
too.
>
> I'm sure my always-limited skills are poorer than yours, but this sounds
>
> like a somewhat basic If-Then exercise.
Yes, sorta. Consider though:
-- One has to find the correct place to do this, which is difficult
in a huge program like Xastir, especially given how some of the functions
are written (enormous monolithic functions with many, many conditionals
for special case processing, with a lot of duplicated code instead of
isolated, reusable blocks)
-- One has to decide how to allow the user to create a block list --- is it
simply by creating a file of blocked callsigns? Or does one need a
GUI to handle it? Adding GUI features is another can of worms to
dig through. Either way, one has to populate the list of blocked calls
somehow. For an example of how the "just make a file" approach is done,
one can look at how nws-stations.txt is handled in the igate.c code.
-- Should the block list apply to all interfaces and all packet types, or
should it just ignore specific types of packets (like the bulletins
that are at issue here) while passing others, and only apply to specific
interfaces? Should it apply to all SSIDs associated with that callsign,
or only specific ones?
In fact, there's a lot to figure out there besides where to put one if.
On the other hand...
A quick *hack* to shut up noise from one or two abusive stations (if one
doesn't just want to turn off bulletin display altogether) might be easy to
do, but not as a general thing to put into the main code.
The very simplest way to attack this as a one off "ban an abusive user from
my display" could possibly be to go into util.c and modify the end of the
function "valid_call" --- there are several lines at the end that reject
certain well-known invalid call signs like "NOCALL", "MAIL", etc.
I *THINK* (but have not tested) that one could simply add a line that tests
against a single abusive user's callsign (including SSID, I think) that mimics
those lines, and then anything from that callsign would just be treated as if
it were an invalid callsign.
I *think* that this would prevent any further processing of a packet from such
a callsign, but I haven't checked it. If I'm not mistaken, one would get
*nothing* from that station, as if it didn't exist.
That approach would work for a single end user to tweak their local copy of
the code to work around a bad local environment. It would not be the right
thing to do as a general feature in the main code base.
For the simple use case of throwing everything away from a single abuser,
this could be a temporary workaround.
> It seems that the key question would be - where to insert a brief script.
That is certainly a key question, but there's more to it than meets the eye,
as I noted at the top.
Doing this for a user configurable block list of arbitrary size would be a
more work, and because there is a lot of duplicated code around Xastir there
might have to be more places than one to do it. Doing it in the valid_call
function, which is called VERY frequently, is possibly the wrong approach
for more than a handful of blocked calls.
> On 9/5/25 13:05, Steve Huston wrote:
> > On Tue, Jul 8, 2025 at 4:21 PM Tom Russo <russo at bogodyn.org> wrote:
> > > On Tue, Jul 08, 2025 at 03:22:36PM -0400, we recorded a bogon-computron collision of the <huston at srhuston.net> flavor, containing:
> > > > is there a simple way to get Xastir to ignore packets in some way?
> > > Xastir has no notion of a block list for RF.
> > ... any chance of adding one? Call me cynical but I don't suspect a
> > "could you tone this down a bit" would help here. I'd love to do it
> > myself but I'm so far out of practice at coding that I doubt I could
> > find where to begin.
> >
> _______________________________________________
> Xastir mailing list
> Xastir at lists.xastir.org
> http://xastir.org/mailman/listinfo/xastir
--
Tom Russo KM5VY
Tijeras, NM
echo "prpv_a'rfg_cnf_har_cvcr" | sed -e 's/_/ /g' | tr [a-m][n-z] [n-z][a-m]
More information about the Xastir
mailing list