From: Brian D H. <bdh...@c4...> - 2001-07-17 04:22:02
|
As currently implemented aprsd doesn't check or comply with "NOGATE" in the ax25Path. Based on the current thread on aprssig is this something we want to do? I think we could implement it with (with the other filtering code in aprsString.cpp): -------------- if (ax25Path.find('NOGATE') != npos) { aprsType = APRSERROR; return'; } -------------- A second concern is the current way we are stripping "*" from the ax25Source field of packets. At present it appears to be erasing the full ax25Source of the packet and thus the other filtering code is marking it as an error packet. I've got badpacket logging turned on and I see everything with a "*" in the ax25Source field (mostly digi ID's) being dropped. Thus we are dropping any packets directly heard by the IGATE. As currently implemented it looks like this: ------------------- if (int nfind = ax25Source.find_first_of('*') <= ax25Source.length()) { //cerr << "Found * in source at position: " << nfind << endl; ax25Source.erase(nfind); } ------------------- I think if we change to: -------------------- if (int nfind = ax25Source.find_first_of('*') <= ax25Source.length()) { //cerr << "Found * in source at position: " << nfind << endl; ax25Source.erase(nfind,1); } -------------------- We will ensure that we only delete the "*". I'm testing this now, but wanted to make sure I understand the implementation. 73/N5VFF -- ============================================================ Brian D Heaton | I fear that we have awakened Principal Consultant | a sleeping giant and instilled C4I2.com System Consultants | in him a terrible resolve. bdh...@c4... | -- Admiral Isoruku Yamamoto USA (719) 623-0381 | -- Imperial Japanese Navy UK +44 (0)845 127-5400 | -- December 7, 1941 |