Description
When sending an Unproto message using AGWPE, Direwolf ignores the PID value specified in the AGWPE 'M' frame and always sets it to 0xF0 in the outgoing message. This makes it impossible to send NET/ROM routing broadcasts, which require a PID value of 0xCF, using AGWPE with Direwolf.
This is noted as a bug in the code:
https://github.com/wb2osz/direwolf/blob/dev/src/server.c#L2014
It would make sense, I think, for an invalid PID value of 0 to be converted to 0xF0, but where a valid (or non-zero) PID value is specified, it should be honored.
Unfortunately, the code further assumes that the data being sent in the Unproto message is always text, and uses ax25_from_text() to create the frame. This is not appropriate for messages such as NET/ROM routing broadcasts which contain binary data.