212 GeoNet(
Manager* m,
bool geonetFlag,
bool hybridFlag, QMutex* mutex =
nullptr);
590 void sslErrors(
const QList<QSslError> &errors);
int sendGUC(gnDataRequest_t gnDR)
sendGUC Send a GUC.
ForwardingAlgorithmResponse simpleForwardingAlgorithm(BasicHeader bh, CommonHeader ch, GBCPacket packet, QByteArray packetPayload, e_shape shape, QByteArray sender, bool flagSrc)
simpleForwardingAlgorithm Simple algorithm.
FakeGPSProvider * m_paramGPS
Location table entry definition.
void checkBCFPB()
checkBCFPB Check to flush the broadcast forawarding packet buffer.
gnDataRequest_t structure is the GN data request definition.
void flushLSPB(GnAddr destination)
flushLSPB Flush LS packet buffer.
int sendGBC(gnDataRequest_t gnDR)
sendGBC Send an LSRequest.
CBFPacketBuffer * m_CBFPB
GeoNet()
GeoNet GeoNet constructor.
void sendPacketFromRPB(gnDataRequest_t rawPacket)
sendPacketFromRPB Slot used to send packet from repetition packet buffer.
ForwardingAlgorithmResponse contentionBasedForwardingAlgorithm(BasicHeader bh, CommonHeader ch, GBCPacket packet, QByteArray packetPayload, e_shape shape, QByteArray sender, bool flagSrc)
contentionBasedForwardingAlgorithm CBF algorithm.
Usefull functions and declarations.
void verifLocT()
verifLocT Checks if the LocT has expired packet.
int gbcPacketProcessing(uchar *packet, sniff_ethernet_t *eth, BasicHeader bh, CommonHeader ch)
gbcPacketProcessing GBC Header decoding.
Buffer used to store sent and received packets.
int lsRetransmit(GnAddr destination, QByteArray lsRequestData, BasicHeader bh)
lsRetransmit Retransmission of an LSRequest.
int TO_CBF_GUC(int distance)
TO_CBF_GUC TO_CBF_GUC computation.
~GeoNet()
~GeoNet GeoNet destructor.
void treatPackets(QByteArray)
treatPackets Slot used to treat received packets.
ParameterSecurity * m_paramSecu
int commonHeaderProcessing(uchar *packet, sniff_ethernet_t *eth, BasicHeader bh)
commonHeaderProcessing Common Header decoding.
void sslErrors(const QList< QSslError > &errors)
sslErrors Print SSL errors.
SecurityManager definitions.
The destinationAddress_u union is used by the ForwardingalgorithmResponse, and so is an union...
LSRequest Packet structure.
QByteArray getSecuredPayload(QByteArray payload, BasicHeader bh)
getSecuredPayload Send payload to secure to the HSM.jar.
void sendBeacon()
sendBeacon Slot used to send Beacon.
QHash< QByteArray, LocationTableEntry > * m_locationTable
GN data request definition.
ParameterUpperTester * m_paramUpperTester
QUdpSocket * m_signatureSocket
Buffer used for unicast forwarding.
QHash< int, QString > geonetErrors
int sendLsRequest(GnAddr dest, gnDataRequest_t gnDR)
sendLsRequest Send an LSRequest.
void flushPB(GnAddr destination)
flushPB Flush buffer.
ForwardingAlgorithmResponse advancedForwarding(BasicHeader bh, CommonHeader ch, GBCPacket packet, QByteArray packetPayload, e_shape shape, QByteArray sender, uchar *destEth, uchar *forwarderEth, bool flagSrc)
advancedForwarding Advanced algorithm.
The sniff_ethernet_t structure is a C style of the Ethernet header.
static quint16 sequenceNumber
void socketReadyRead()
socketReadyRead Slot used when socket is ready to read.
Destination area structure.
Choice between a number or a MAC address.
ParameterConfiguration * m_paramConf
ParameterHybrid * m_paramHybrid
FakeCANProvider * m_paramCAN
e_geonetError
The e_geonetError enum is used for header encoding / decoding debug purpose.
QHash< QByteArray, int > m_lsRetransmission
int basicHeaderProcessing(uchar *packet, int len, sniff_ethernet_t *eth)
basicHeaderProcessing Basic Header decoding.
HistoryPacketBuffer * m_HPB
Primitives message types definition.
void packetReceived(QByteArray)
packetReceived Signal used when a packet is received.
int shbPacketProcessing(uchar *packet, sniff_ethernet_t *eth, BasicHeader bh, CommonHeader ch)
shbPacketProcessing SHB Header decoding.
LSReply packet structure.
CAM reception management.
void initHybridSocket()
initHybridSocket Set the hybridization sockets.
QHash< QByteArray, int > m_CBFPBCounter
int tsbPacketProcessing(uchar *packet, sniff_ethernet_t *eth, BasicHeader bh, CommonHeader ch)
tsbPacketProcessing TSB Header decoding.
int gucPacketProcessing(uchar *packet, sniff_ethernet_t *eth, BasicHeader bh, CommonHeader ch)
gucPacketProcessing GUC Header decoding.
LocationServicePacketBuffer * m_LSPB
int beaconPacketProcessing(uchar *packet, sniff_ethernet_t *eth, BasicHeader bh, CommonHeader ch)
beaconPacketProcessing Beacon Header decoding.
e_shape
The e_shape enum defines the shapes type.
ForwardingAlgorithmResponse greedy(BasicHeader bh, CommonHeader ch, GACPacket packet, QByteArray payload, QByteArray sender, uchar *destination, uchar *forwarder)
greedy Greedy algorithm.
int sendTSB(gnDataRequest_t gnDR)
sendTSB Send an LSRequest.
void sendEventIndicationToUT(uchar *packetFull, int packetLen)
sendEventIndicationToUT Send decoding success notification to the UpperTester.
QUdpSocket * m_verifySocket
void setupUnsecureSocket()
setupUnsecureSocket Set TCP socket for hybridization.
int TO_CBF_GBC(int distance)
TO_CBF_GBC TO_CBF_GBC computation.
Buffer used for broadcast forwarding.
int sendSHB(gnDataRequest_t gnDR)
sendSHB Send an LSRequest.
int sendGAC(gnDataRequest_t gnDR)
sendGAC Send an LSRequest.
BroadcastForwardingPacketBuffer * m_BCFPB
Buffer used to repeat packet.
void initGeoNetErrors()
initGeoNetErrors Set the debugging print.
void flushUCFPB(GnAddr destination)
flushUCFPB Flush unicast forawarding packet buffer.
UnicastForwardingPacketBuffer * m_UCFPB
ParameterNetwork * m_paramNetwork
int gacPacketProcessing(uchar *packet, sniff_ethernet_t *eth, BasicHeader bh, CommonHeader ch)
gacPacketProcessing GAC Header decoding.
void socketError(QAbstractSocket::SocketError)
socketError Print TCP socket error.
e_hybridError
The e_hybridError enum is used for hybridization debug purpose.
void execute()
execute Slot used to execute the Beacon creation and sending.
FakeApplicationProvider * m_paramAppli
void utInitialize()
utInitialize Slot used to initialize the N&T layer.
int LSReplyPacketProcessing(uchar *packet, sniff_ethernet_t *eth, BasicHeader bh, CommonHeader ch)
LSReplyProcessing LSReply Header decoding.
int InitRawSocket_send()
InitRawSocket_send Set the ITS-G5 socket.
int send(gnDataRequest_t gnDR)
send Creates the BTP and then select the correct packet send option.
ForwardingAlgorithmResponse CBFUnicast(BasicHeader bh, CommonHeader ch, GACPacket packet, QByteArray packetPayload)
CBFUnicast Unicast CBF algoritm.
void setupSecureSocket()
setupSecureSocket Set SSL socket for hybridization.
RepetitionPacketBuffer * m_RPB
e_networkError
The e_networkError enum is used for networking debug purpose.
Hybridization parameters.
void checkUCFPB()
checkUCFPB Check to flush the unicast forawarding packet buffer.
QByteArray verifySecuredPayload(QByteArray payload, bool *success)
verifySecuredPayload Send payload to verify to the HSM.jar.
int LSRequestPacketProcessing(uchar *packet, sniff_ethernet_t *eth, BasicHeader bh, CommonHeader ch)
LSRequestPacketProcessing LSRequest Header decoding.
void lpvUpdate()
lpvUpdate Slot used when a packet containing an LPV is sent.
int hybridSend(QByteArray payload)
hybridSend Send packet with the hybridization.
SecurityManager m_securityManager
void calculAngleThreshold()
calculAngleThreshold Compute the ANGLE_TH for the advanced forwarding.
void lpvSent()
lpvSent Signal used when a packet containing an LPV is sent.