mirror of
https://github.com/markqvist/Reticulum.git
synced 2024-11-26 15:30:18 +00:00
Added hardware MTU parameter to interfaces
This commit is contained in:
parent
d99d31097b
commit
c6df6293b2
@ -80,6 +80,8 @@ class AX25KISSInterface(Interface):
|
|||||||
self.rxb = 0
|
self.rxb = 0
|
||||||
self.txb = 0
|
self.txb = 0
|
||||||
|
|
||||||
|
self.HW_MTU = 564
|
||||||
|
|
||||||
self.pyserial = serial
|
self.pyserial = serial
|
||||||
self.serial = None
|
self.serial = None
|
||||||
self.owner = owner
|
self.owner = owner
|
||||||
@ -304,7 +306,7 @@ class AX25KISSInterface(Interface):
|
|||||||
in_frame = True
|
in_frame = True
|
||||||
command = KISS.CMD_UNKNOWN
|
command = KISS.CMD_UNKNOWN
|
||||||
data_buffer = b""
|
data_buffer = b""
|
||||||
elif (in_frame and len(data_buffer) < RNS.Reticulum.MTU+AX25.HEADER_SIZE):
|
elif (in_frame and len(data_buffer) < self.HW_MTU+AX25.HEADER_SIZE):
|
||||||
if (len(data_buffer) == 0 and command == KISS.CMD_UNKNOWN):
|
if (len(data_buffer) == 0 and command == KISS.CMD_UNKNOWN):
|
||||||
# We only support one HDLC port for now, so
|
# We only support one HDLC port for now, so
|
||||||
# strip off the port nibble
|
# strip off the port nibble
|
||||||
|
@ -60,6 +60,9 @@ class AutoInterface(Interface):
|
|||||||
self.netifaces = netifaces
|
self.netifaces = netifaces
|
||||||
self.rxb = 0
|
self.rxb = 0
|
||||||
self.txb = 0
|
self.txb = 0
|
||||||
|
|
||||||
|
self.HW_MTU = 1064
|
||||||
|
|
||||||
self.IN = True
|
self.IN = True
|
||||||
self.OUT = False
|
self.OUT = False
|
||||||
self.name = name
|
self.name = name
|
||||||
|
@ -307,6 +307,8 @@ class I2PInterfacePeer(Interface):
|
|||||||
self.rxb = 0
|
self.rxb = 0
|
||||||
self.txb = 0
|
self.txb = 0
|
||||||
|
|
||||||
|
self.HW_MTU = 1064
|
||||||
|
|
||||||
self.IN = True
|
self.IN = True
|
||||||
self.OUT = False
|
self.OUT = False
|
||||||
self.socket = None
|
self.socket = None
|
||||||
@ -569,7 +571,7 @@ class I2PInterfacePeer(Interface):
|
|||||||
in_frame = True
|
in_frame = True
|
||||||
command = KISS.CMD_UNKNOWN
|
command = KISS.CMD_UNKNOWN
|
||||||
data_buffer = b""
|
data_buffer = b""
|
||||||
elif (in_frame and len(data_buffer) < RNS.Reticulum.MTU):
|
elif (in_frame and len(data_buffer) < self.HW_MTU):
|
||||||
if (len(data_buffer) == 0 and command == KISS.CMD_UNKNOWN):
|
if (len(data_buffer) == 0 and command == KISS.CMD_UNKNOWN):
|
||||||
# We only support one HDLC port for now, so
|
# We only support one HDLC port for now, so
|
||||||
# strip off the port nibble
|
# strip off the port nibble
|
||||||
@ -595,7 +597,7 @@ class I2PInterfacePeer(Interface):
|
|||||||
elif (byte == HDLC.FLAG):
|
elif (byte == HDLC.FLAG):
|
||||||
in_frame = True
|
in_frame = True
|
||||||
data_buffer = b""
|
data_buffer = b""
|
||||||
elif (in_frame and len(data_buffer) < RNS.Reticulum.MTU):
|
elif (in_frame and len(data_buffer) < self.HW_MTU):
|
||||||
if (byte == HDLC.ESC):
|
if (byte == HDLC.ESC):
|
||||||
escape = True
|
escape = True
|
||||||
else:
|
else:
|
||||||
@ -660,6 +662,9 @@ class I2PInterface(Interface):
|
|||||||
def __init__(self, owner, name, rns_storagepath, peers, connectable = False):
|
def __init__(self, owner, name, rns_storagepath, peers, connectable = False):
|
||||||
self.rxb = 0
|
self.rxb = 0
|
||||||
self.txb = 0
|
self.txb = 0
|
||||||
|
|
||||||
|
self.HW_MTU = 1064
|
||||||
|
|
||||||
self.online = False
|
self.online = False
|
||||||
self.clients = 0
|
self.clients = 0
|
||||||
self.owner = owner
|
self.owner = owner
|
||||||
@ -757,6 +762,7 @@ class I2PInterface(Interface):
|
|||||||
spawned_interface.announce_rate_grace = self.announce_rate_grace
|
spawned_interface.announce_rate_grace = self.announce_rate_grace
|
||||||
spawned_interface.announce_rate_penalty = self.announce_rate_penalty
|
spawned_interface.announce_rate_penalty = self.announce_rate_penalty
|
||||||
spawned_interface.mode = self.mode
|
spawned_interface.mode = self.mode
|
||||||
|
spawned_interface.HW_MTU = self.HW_MTU
|
||||||
RNS.log("Spawned new I2PInterface Peer: "+str(spawned_interface), RNS.LOG_VERBOSE)
|
RNS.log("Spawned new I2PInterface Peer: "+str(spawned_interface), RNS.LOG_VERBOSE)
|
||||||
RNS.Transport.interfaces.append(spawned_interface)
|
RNS.Transport.interfaces.append(spawned_interface)
|
||||||
self.clients += 1
|
self.clients += 1
|
||||||
|
@ -73,6 +73,8 @@ class KISSInterface(Interface):
|
|||||||
self.rxb = 0
|
self.rxb = 0
|
||||||
self.txb = 0
|
self.txb = 0
|
||||||
|
|
||||||
|
self.HW_MTU = 564
|
||||||
|
|
||||||
if beacon_data == None:
|
if beacon_data == None:
|
||||||
beacon_data = ""
|
beacon_data = ""
|
||||||
|
|
||||||
@ -279,7 +281,7 @@ class KISSInterface(Interface):
|
|||||||
in_frame = True
|
in_frame = True
|
||||||
command = KISS.CMD_UNKNOWN
|
command = KISS.CMD_UNKNOWN
|
||||||
data_buffer = b""
|
data_buffer = b""
|
||||||
elif (in_frame and len(data_buffer) < RNS.Reticulum.MTU):
|
elif (in_frame and len(data_buffer) < self.HW_MTU):
|
||||||
if (len(data_buffer) == 0 and command == KISS.CMD_UNKNOWN):
|
if (len(data_buffer) == 0 and command == KISS.CMD_UNKNOWN):
|
||||||
# We only support one HDLC port for now, so
|
# We only support one HDLC port for now, so
|
||||||
# strip off the port nibble
|
# strip off the port nibble
|
||||||
|
@ -49,6 +49,9 @@ class LocalClientInterface(Interface):
|
|||||||
def __init__(self, owner, name, target_port = None, connected_socket=None):
|
def __init__(self, owner, name, target_port = None, connected_socket=None):
|
||||||
self.rxb = 0
|
self.rxb = 0
|
||||||
self.txb = 0
|
self.txb = 0
|
||||||
|
|
||||||
|
self.HW_MTU = 1064
|
||||||
|
|
||||||
self.online = False
|
self.online = False
|
||||||
|
|
||||||
self.IN = True
|
self.IN = True
|
||||||
@ -177,7 +180,7 @@ class LocalClientInterface(Interface):
|
|||||||
elif (byte == HDLC.FLAG):
|
elif (byte == HDLC.FLAG):
|
||||||
in_frame = True
|
in_frame = True
|
||||||
data_buffer = b""
|
data_buffer = b""
|
||||||
elif (in_frame and len(data_buffer) < RNS.Reticulum.MTU):
|
elif (in_frame and len(data_buffer) < self.HW_MTU):
|
||||||
if (byte == HDLC.ESC):
|
if (byte == HDLC.ESC):
|
||||||
escape = True
|
escape = True
|
||||||
else:
|
else:
|
||||||
|
@ -57,6 +57,8 @@ class PipeInterface(Interface):
|
|||||||
self.rxb = 0
|
self.rxb = 0
|
||||||
self.txb = 0
|
self.txb = 0
|
||||||
|
|
||||||
|
self.HW_MTU = 1064
|
||||||
|
|
||||||
self.owner = owner
|
self.owner = owner
|
||||||
self.name = name
|
self.name = name
|
||||||
self.command = command
|
self.command = command
|
||||||
@ -137,7 +139,7 @@ class PipeInterface(Interface):
|
|||||||
elif (byte == HDLC.FLAG):
|
elif (byte == HDLC.FLAG):
|
||||||
in_frame = True
|
in_frame = True
|
||||||
data_buffer = b""
|
data_buffer = b""
|
||||||
elif (in_frame and len(data_buffer) < RNS.Reticulum.MTU):
|
elif (in_frame and len(data_buffer) < self.HW_MTU):
|
||||||
if (byte == HDLC.ESC):
|
if (byte == HDLC.ESC):
|
||||||
escape = True
|
escape = True
|
||||||
else:
|
else:
|
||||||
|
@ -112,6 +112,8 @@ class RNodeInterface(Interface):
|
|||||||
self.rxb = 0
|
self.rxb = 0
|
||||||
self.txb = 0
|
self.txb = 0
|
||||||
|
|
||||||
|
self.HW_MTU = 508
|
||||||
|
|
||||||
self.pyserial = serial
|
self.pyserial = serial
|
||||||
self.serial = None
|
self.serial = None
|
||||||
self.owner = owner
|
self.owner = owner
|
||||||
@ -439,7 +441,7 @@ class RNodeInterface(Interface):
|
|||||||
command = KISS.CMD_UNKNOWN
|
command = KISS.CMD_UNKNOWN
|
||||||
data_buffer = b""
|
data_buffer = b""
|
||||||
command_buffer = b""
|
command_buffer = b""
|
||||||
elif (in_frame and len(data_buffer) < RNS.Reticulum.MTU):
|
elif (in_frame and len(data_buffer) < self.HW_MTU):
|
||||||
if (len(data_buffer) == 0 and command == KISS.CMD_UNKNOWN):
|
if (len(data_buffer) == 0 and command == KISS.CMD_UNKNOWN):
|
||||||
command = byte
|
command = byte
|
||||||
elif (command == KISS.CMD_DATA):
|
elif (command == KISS.CMD_DATA):
|
||||||
|
@ -63,6 +63,8 @@ class SerialInterface(Interface):
|
|||||||
self.rxb = 0
|
self.rxb = 0
|
||||||
self.txb = 0
|
self.txb = 0
|
||||||
|
|
||||||
|
self.HW_MTU = 564
|
||||||
|
|
||||||
self.pyserial = serial
|
self.pyserial = serial
|
||||||
self.serial = None
|
self.serial = None
|
||||||
self.owner = owner
|
self.owner = owner
|
||||||
@ -152,7 +154,7 @@ class SerialInterface(Interface):
|
|||||||
elif (byte == HDLC.FLAG):
|
elif (byte == HDLC.FLAG):
|
||||||
in_frame = True
|
in_frame = True
|
||||||
data_buffer = b""
|
data_buffer = b""
|
||||||
elif (in_frame and len(data_buffer) < RNS.Reticulum.MTU):
|
elif (in_frame and len(data_buffer) < self.HW_MTU):
|
||||||
if (byte == HDLC.ESC):
|
if (byte == HDLC.ESC):
|
||||||
escape = True
|
escape = True
|
||||||
else:
|
else:
|
||||||
|
@ -79,6 +79,8 @@ class TCPClientInterface(Interface):
|
|||||||
self.rxb = 0
|
self.rxb = 0
|
||||||
self.txb = 0
|
self.txb = 0
|
||||||
|
|
||||||
|
self.HW_MTU = 1064
|
||||||
|
|
||||||
self.IN = True
|
self.IN = True
|
||||||
self.OUT = False
|
self.OUT = False
|
||||||
self.socket = None
|
self.socket = None
|
||||||
@ -293,7 +295,7 @@ class TCPClientInterface(Interface):
|
|||||||
in_frame = True
|
in_frame = True
|
||||||
command = KISS.CMD_UNKNOWN
|
command = KISS.CMD_UNKNOWN
|
||||||
data_buffer = b""
|
data_buffer = b""
|
||||||
elif (in_frame and len(data_buffer) < RNS.Reticulum.MTU):
|
elif (in_frame and len(data_buffer) < self.HW_MTU):
|
||||||
if (len(data_buffer) == 0 and command == KISS.CMD_UNKNOWN):
|
if (len(data_buffer) == 0 and command == KISS.CMD_UNKNOWN):
|
||||||
# We only support one HDLC port for now, so
|
# We only support one HDLC port for now, so
|
||||||
# strip off the port nibble
|
# strip off the port nibble
|
||||||
@ -319,7 +321,7 @@ class TCPClientInterface(Interface):
|
|||||||
elif (byte == HDLC.FLAG):
|
elif (byte == HDLC.FLAG):
|
||||||
in_frame = True
|
in_frame = True
|
||||||
data_buffer = b""
|
data_buffer = b""
|
||||||
elif (in_frame and len(data_buffer) < RNS.Reticulum.MTU):
|
elif (in_frame and len(data_buffer) < self.HW_MTU):
|
||||||
if (byte == HDLC.ESC):
|
if (byte == HDLC.ESC):
|
||||||
escape = True
|
escape = True
|
||||||
else:
|
else:
|
||||||
@ -405,6 +407,9 @@ class TCPServerInterface(Interface):
|
|||||||
def __init__(self, owner, name, device=None, bindip=None, bindport=None, i2p_tunneled=False):
|
def __init__(self, owner, name, device=None, bindip=None, bindport=None, i2p_tunneled=False):
|
||||||
self.rxb = 0
|
self.rxb = 0
|
||||||
self.txb = 0
|
self.txb = 0
|
||||||
|
|
||||||
|
self.HW_MTU = 1064
|
||||||
|
|
||||||
self.online = False
|
self.online = False
|
||||||
self.clients = 0
|
self.clients = 0
|
||||||
|
|
||||||
@ -460,6 +465,7 @@ class TCPServerInterface(Interface):
|
|||||||
spawned_interface.announce_rate_grace = self.announce_rate_grace
|
spawned_interface.announce_rate_grace = self.announce_rate_grace
|
||||||
spawned_interface.announce_rate_penalty = self.announce_rate_penalty
|
spawned_interface.announce_rate_penalty = self.announce_rate_penalty
|
||||||
spawned_interface.mode = self.mode
|
spawned_interface.mode = self.mode
|
||||||
|
spawned_interface.HW_MTU = self.HW_MTU
|
||||||
spawned_interface.online = True
|
spawned_interface.online = True
|
||||||
RNS.log("Spawned new TCPClient Interface: "+str(spawned_interface), RNS.LOG_VERBOSE)
|
RNS.log("Spawned new TCPClient Interface: "+str(spawned_interface), RNS.LOG_VERBOSE)
|
||||||
RNS.Transport.interfaces.append(spawned_interface)
|
RNS.Transport.interfaces.append(spawned_interface)
|
||||||
|
@ -57,6 +57,9 @@ class UDPInterface(Interface):
|
|||||||
def __init__(self, owner, name, device=None, bindip=None, bindport=None, forwardip=None, forwardport=None):
|
def __init__(self, owner, name, device=None, bindip=None, bindport=None, forwardip=None, forwardport=None):
|
||||||
self.rxb = 0
|
self.rxb = 0
|
||||||
self.txb = 0
|
self.txb = 0
|
||||||
|
|
||||||
|
self.HW_MTU = 1064
|
||||||
|
|
||||||
self.IN = True
|
self.IN = True
|
||||||
self.OUT = False
|
self.OUT = False
|
||||||
self.name = name
|
self.name = name
|
||||||
|
Loading…
Reference in New Issue
Block a user