Add RELAX_CHECKS to OPENBRIDGE definitions
This disables source IP and port checking to make OBP play nice with Docker. Note, it *really* is a good idea to use a PASSPHRASE with this!
This commit is contained in:
parent
91dc7129bb
commit
1babf7e18a
|
@ -148,6 +148,7 @@ TARGET_PORT: 62044
|
||||||
USE_ACL: True
|
USE_ACL: True
|
||||||
SUB_ACL: DENY:1
|
SUB_ACL: DENY:1
|
||||||
TGID_ACL: PERMIT:ALL
|
TGID_ACL: PERMIT:ALL
|
||||||
|
RELAX_CHECKS: False
|
||||||
|
|
||||||
# MASTER INSTANCES - DUPLICATE SECTION FOR MULTIPLE MASTERS
|
# MASTER INSTANCES - DUPLICATE SECTION FOR MULTIPLE MASTERS
|
||||||
# HomeBrew Protocol Master instances go here.
|
# HomeBrew Protocol Master instances go here.
|
||||||
|
@ -183,79 +184,3 @@ VOICE_IDENT: True
|
||||||
TS1_STATIC:
|
TS1_STATIC:
|
||||||
TS2_STATIC:
|
TS2_STATIC:
|
||||||
DEFAULT_REFLECTOR: 0
|
DEFAULT_REFLECTOR: 0
|
||||||
|
|
||||||
# PEER INSTANCES - DUPLICATE SECTION FOR MULTIPLE PEERS
|
|
||||||
# There are a LOT of errors in the HB Protocol specifications on this one!
|
|
||||||
# MOST of these items are just strings and will be properly dealt with by the program
|
|
||||||
# The TX & RX Frequencies are 9-digit numbers, and are the frequency in Hz.
|
|
||||||
# Latitude is an 8-digit unsigned floating point number.
|
|
||||||
# Longitude is a 9-digit signed floating point number.
|
|
||||||
# Height is in meters
|
|
||||||
# Setting Loose to True relaxes the validation on packets received from the master.
|
|
||||||
# This will allow HBlink to connect to a non-compliant system such as XLXD, DMR+ etc.
|
|
||||||
#
|
|
||||||
# ACLs:
|
|
||||||
# See comments in the GLOBAL stanza
|
|
||||||
[REPEATER-1]
|
|
||||||
MODE: PEER
|
|
||||||
ENABLED: False
|
|
||||||
LOOSE: False
|
|
||||||
EXPORT_AMBE: False
|
|
||||||
IP:
|
|
||||||
PORT: 54001
|
|
||||||
MASTER_IP: 172.16.1.1
|
|
||||||
MASTER_PORT: 54000
|
|
||||||
PASSPHRASE: homebrew
|
|
||||||
CALLSIGN: W1ABC
|
|
||||||
RADIO_ID: 312000
|
|
||||||
RX_FREQ: 449000000
|
|
||||||
TX_FREQ: 444000000
|
|
||||||
TX_POWER: 25
|
|
||||||
COLORCODE: 1
|
|
||||||
SLOTS: 1
|
|
||||||
LATITUDE: 38.0000
|
|
||||||
LONGITUDE: -095.0000
|
|
||||||
HEIGHT: 75
|
|
||||||
LOCATION: Anywhere, USA
|
|
||||||
DESCRIPTION: This is a cool repeater
|
|
||||||
URL: www.w1abc.org
|
|
||||||
SOFTWARE_ID: 20170620
|
|
||||||
PACKAGE_ID: MMDVM_HBlink
|
|
||||||
GROUP_HANGTIME: 5
|
|
||||||
OPTIONS:
|
|
||||||
USE_ACL: True
|
|
||||||
SUB_ACL: DENY:1
|
|
||||||
TGID_TS1_ACL: PERMIT:ALL
|
|
||||||
TGID_TS2_ACL: PERMIT:ALL
|
|
||||||
|
|
||||||
[XLX-1]
|
|
||||||
MODE: XLXPEER
|
|
||||||
ENABLED: False
|
|
||||||
LOOSE: True
|
|
||||||
EXPORT_AMBE: False
|
|
||||||
IP:
|
|
||||||
PORT: 54002
|
|
||||||
MASTER_IP: 172.16.1.1
|
|
||||||
MASTER_PORT: 62030
|
|
||||||
PASSPHRASE: passw0rd
|
|
||||||
CALLSIGN: W1ABC
|
|
||||||
RADIO_ID: 312000
|
|
||||||
RX_FREQ: 449000000
|
|
||||||
TX_FREQ: 444000000
|
|
||||||
TX_POWER: 25
|
|
||||||
COLORCODE: 1
|
|
||||||
SLOTS: 1
|
|
||||||
LATITUDE: 38.0000
|
|
||||||
LONGITUDE: -095.0000
|
|
||||||
HEIGHT: 75
|
|
||||||
LOCATION: Anywhere, USA
|
|
||||||
DESCRIPTION: This is a cool repeater
|
|
||||||
URL: www.w1abc.org
|
|
||||||
SOFTWARE_ID: 20170620
|
|
||||||
PACKAGE_ID: MMDVM_HBlink
|
|
||||||
GROUP_HANGTIME: 5
|
|
||||||
XLXMODULE: 4004
|
|
||||||
USE_ACL: True
|
|
||||||
SUB_ACL: DENY:1
|
|
||||||
TGID_TS1_ACL: PERMIT:ALL
|
|
||||||
TGID_TS2_ACL: PERMIT:ALL
|
|
||||||
|
|
|
@ -300,7 +300,8 @@ def build_config(_config_file):
|
||||||
'USE_ACL': config.getboolean(section, 'USE_ACL'),
|
'USE_ACL': config.getboolean(section, 'USE_ACL'),
|
||||||
'SUB_ACL': config.get(section, 'SUB_ACL'),
|
'SUB_ACL': config.get(section, 'SUB_ACL'),
|
||||||
'TG1_ACL': config.get(section, 'TGID_ACL'),
|
'TG1_ACL': config.get(section, 'TGID_ACL'),
|
||||||
'TG2_ACL': 'PERMIT:ALL'
|
'TG2_ACL': 'PERMIT:ALL',
|
||||||
|
'RELAX_CHECKS': config.getboolean(section, 'RELAX_CHECKS')
|
||||||
}})
|
}})
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -141,7 +141,7 @@ class OPENBRIDGE(DatagramProtocol):
|
||||||
_hash = _packet[53:]
|
_hash = _packet[53:]
|
||||||
_ckhs = hmac_new(self._config['PASSPHRASE'],_data,sha1).digest()
|
_ckhs = hmac_new(self._config['PASSPHRASE'],_data,sha1).digest()
|
||||||
|
|
||||||
if compare_digest(_hash, _ckhs) and _sockaddr == self._config['TARGET_SOCK']:
|
if compare_digest(_hash, _ckhs) and (_sockaddr == self._config['TARGET_SOCK'] or self._config['RELAX_CHECKS']):
|
||||||
_peer_id = _data[11:15]
|
_peer_id = _data[11:15]
|
||||||
_seq = _data[4]
|
_seq = _data[4]
|
||||||
_rf_src = _data[5:8]
|
_rf_src = _data[5:8]
|
||||||
|
|
Loading…
Reference in New Issue