- Removing Validation from hblink.py master
Re: Removing Validation from hblink.py master
To clarify, does this refer to removing the validation for the source "RADIO_ID" sent in a frame from client -> master
Yes, client side validation was made option with loose (thanks again for that)
If yes, I gave this some thought a while ago, and the conclusion I came to was the source validation doesn't need to be removed parse, but instead performed on the Source IP and Port rather than the Radio ID.
So instead of having a dictionary of RADIO_ID keys and their associated parameters and states, you have a dictionary of sockets. You should never have more than one client connecting from the same combination of port and IP address, so I think this should work.
You’re now using network layer information to authenticate the application layer. Yes, it will work. I’m reluctant because that breaks the ISO model. I know a lot (most? all?) don’t care about that, but I’m usually a bit of a stickler for following as many rules as possible.
I’m working on convincing myself this is ok.
I didn't get around to implementing this, so I could well be missing something.... Also, if hblink.py is adjusted to re-write the RADIO_ID to itself when sending to a master, the above is a moot point.
And it used to do that, and someone complained that a particular scenario didn’t work right. So that line is actually still in there and commented out.
Perhaps the solution is to make it option in the system configuration for the master? That I would be pretty happy to implement, even if a stop-gap.
Join main@DVSwitch.groups.io to automatically receive all group messages.