From cbaef6ff5b9bae3e0ec84c88f5580a95efb5a0fd Mon Sep 17 00:00:00 2001 From: Karl Schrab Date: Wed, 28 Feb 2024 11:59:53 +0100 Subject: [PATCH] build: raise version of protobuf --- .../src/assembly/resources/fed/ns3/ns3_installer.sh | 3 ++- bundle/src/assembly/resources/fed/omnetpp/Dockerfile | 8 ++++---- .../assembly/resources/fed/omnetpp/omnet_installer.sh | 5 +++-- .../mosaic/lib/coupling/ClientServerChannel.java | 11 ++++++----- .../resources/proto/ClientServerChannelMessages.proto | 2 +- pom.xml | 2 +- 6 files changed, 17 insertions(+), 14 deletions(-) diff --git a/bundle/src/assembly/resources/fed/ns3/ns3_installer.sh b/bundle/src/assembly/resources/fed/ns3/ns3_installer.sh index 340727623..36c33560c 100644 --- a/bundle/src/assembly/resources/fed/ns3/ns3_installer.sh +++ b/bundle/src/assembly/resources/fed/ns3/ns3_installer.sh @@ -69,7 +69,8 @@ ns3_scratch="${ns3_simulator_folder}/scratch" ns3_source="${ns3_simulator_folder}/src" ####### semi automatic parameters ######## -ns3_federate_url="https://github.com/mosaic-addons/ns3-federate/archive/refs/tags/23.1.zip" +#ns3_federate_url="https://github.com/mosaic-addons/ns3-federate/archive/refs/tags/23.1.zip" +ns3_federate_url="https://github.com/mosaic-addons/ns3-federate/archive/refs/heads/main.zip" ns3_url="https://www.nsnam.org/releases/$ns3_version_affix.tar.bz2" ###### more automatic parameters ######### diff --git a/bundle/src/assembly/resources/fed/omnetpp/Dockerfile b/bundle/src/assembly/resources/fed/omnetpp/Dockerfile index d89735ed8..8fb5607f6 100644 --- a/bundle/src/assembly/resources/fed/omnetpp/Dockerfile +++ b/bundle/src/assembly/resources/fed/omnetpp/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:bionic +FROM ubuntu:jammy LABEL \ description="Docker image containing the MOSAIC adapted OMNeT++ federate" \ @@ -14,10 +14,10 @@ RUN \ libprotobuf-dev \ protobuf-compiler \ libxml2-dev \ - python \ + python3 \ + python-is-python3 \ unzip \ - wget \ - zlib1g-dev + wget WORKDIR /home/mosaic/bin/fed/omnetpp diff --git a/bundle/src/assembly/resources/fed/omnetpp/omnet_installer.sh b/bundle/src/assembly/resources/fed/omnetpp/omnet_installer.sh index 3965d5314..bf0359f41 100644 --- a/bundle/src/assembly/resources/fed/omnetpp/omnet_installer.sh +++ b/bundle/src/assembly/resources/fed/omnetpp/omnet_installer.sh @@ -46,7 +46,8 @@ check_shell required_programs=( unzip tar bison flex protoc gcc python ) required_libraries=( "libprotobuf-dev >= 3.7.0" "libxml2-dev" ) -omnet_federate_url="https://github.com/mosaic-addons/omnetpp-federate/archive/refs/tags/23.1.zip" +#omnet_federate_url="https://github.com/mosaic-addons/omnetpp-federate/archive/refs/tags/23.1.zip" +omnet_federate_url="https://github.com/mosaic-addons/ns3-federate/archive/refs/heads/main.zip" omnet_src_url="https://github.com/omnetpp/omnetpp/releases/download/omnetpp-5.5.1/omnetpp-5.5.1-src-linux.tgz" inet_src_url="https://github.com/inet-framework/inet/releases/download/v4.1.1/inet-4.1.1-src.tgz" @@ -714,7 +715,7 @@ configure_inet() { cd "${inet_src_dir}" # Patch inet feature tool if python >= 3.0.0 - python_version_current="$(python --version 2>&1)" + python_version_current="$(python3 --version 2>&1)" python_version_3="Python 3." if [[ "$python_version_current" == "$python_version_3"* ]]; then sed -i -e "s|raw_input|input|" ./bin/inet_featuretool diff --git a/lib/mosaic-network/src/main/java/org/eclipse/mosaic/lib/coupling/ClientServerChannel.java b/lib/mosaic-network/src/main/java/org/eclipse/mosaic/lib/coupling/ClientServerChannel.java index a863eee14..913f2d2cd 100644 --- a/lib/mosaic-network/src/main/java/org/eclipse/mosaic/lib/coupling/ClientServerChannel.java +++ b/lib/mosaic-network/src/main/java/org/eclipse/mosaic/lib/coupling/ClientServerChannel.java @@ -378,6 +378,7 @@ public int writeRemoveNodesMessage(long time, List ids) throws IOExcept } // @param channelId the channelID //TODO:make enum from + /** * Write send message header to stream. * Not used in eWorld visualizer. @@ -406,7 +407,7 @@ public int writeSendMessage(long time, int srcNodeId, //builder for rectangular addresses rectangleAddress.setIpAddress(buffer.getInt()); //write the ip address as flat integer into the builder //convert coordinates etc. - CartesianRectangle projectedRectangle = ((GeoRectangle)dac.getGeoArea()).toCartesian(); + CartesianRectangle projectedRectangle = ((GeoRectangle) dac.getGeoArea()).toCartesian(); //write the coordinates of the area into the builder rectangleAddress.setAX(projectedRectangle.getA().getX()); rectangleAddress.setAY(projectedRectangle.getA().getY()); @@ -418,7 +419,7 @@ public int writeSendMessage(long time, int srcNodeId, SendMessageMessage.GeoCircleAddress.Builder circleAddress = SendMessageMessage.GeoCircleAddress.newBuilder(); circleAddress.setIpAddress(buffer.getInt()); - CartesianCircle projectedCircle = ((GeoCircle)dac.getGeoArea()).toCartesian(); + CartesianCircle projectedCircle = ((GeoCircle) dac.getGeoArea()).toCartesian(); //write area into the address object circleAddress.setCenterX(projectedCircle.getCenter().getX()); circleAddress.setCenterY(projectedCircle.getCenter().getY()); @@ -428,7 +429,7 @@ public int writeSendMessage(long time, int srcNodeId, } else { throw new IllegalArgumentException("Addressing does support GeoCircle and GeoRectangle only."); } - } else if (dac.getTimeToLive() > -1){ //Topocast addresses + } else if (dac.getTimeToLive() > -1) { //Topocast addresses SendMessageMessage.TopoAddress.Builder topoAddress = SendMessageMessage.TopoAddress.newBuilder(); topoAddress.setIpAddress(buffer.getInt()); //Add IP as flat int topoAddress.setTtl(dac.getTimeToLive()); //add time to live @@ -471,7 +472,7 @@ public int writeConfigMessage(long time, int msgID, int externalId, AdHocConfigu radioConfig1.setReceivingMessages(false); //!!Semantic in Java: true -> only routing radioConfig1.setIpAddress(inet4ToInt(configuration.getConf0().getNewIP())); //Semantic in federates: false -> only routing radioConfig1.setSubnetAddress(inet4ToInt(configuration.getConf0().getNewSubnet())); - radioConfig1.setTransmissionPower(configuration.getConf0().getNewPower()); + radioConfig1.setTransmissionPower((int) configuration.getConf0().getNewPower()); radioConfig1.setPrimaryRadioChannel(translateChannel(configuration.getConf0().getChannel0())); if (configuration.getConf0().getMode() == InterfaceConfiguration.MultiChannelMode.ALTERNATING) { radioConfig1.setSecondaryRadioChannel(translateChannel(configuration.getConf0().getChannel1())); @@ -486,7 +487,7 @@ public int writeConfigMessage(long time, int msgID, int externalId, AdHocConfigu radioConfig2.setReceivingMessages(false); //!!Semantic in Java: true -> only routing radioConfig2.setIpAddress(inet4ToInt(configuration.getConf1().getNewIP())); //Semantic in federates: false -> only routing radioConfig2.setSubnetAddress(inet4ToInt(configuration.getConf1().getNewSubnet())); - radioConfig2.setTransmissionPower(configuration.getConf1().getNewPower()); + radioConfig2.setTransmissionPower((int) configuration.getConf1().getNewPower()); radioConfig2.setPrimaryRadioChannel(translateChannel(configuration.getConf1().getChannel0())); if (configuration.getConf1().getMode() == InterfaceConfiguration.MultiChannelMode.ALTERNATING) { radioConfig2.setSecondaryRadioChannel(translateChannel(configuration.getConf1().getChannel1())); diff --git a/lib/mosaic-network/src/main/resources/proto/ClientServerChannelMessages.proto b/lib/mosaic-network/src/main/resources/proto/ClientServerChannelMessages.proto index 683fe9938..275b1128a 100644 --- a/lib/mosaic-network/src/main/resources/proto/ClientServerChannelMessages.proto +++ b/lib/mosaic-network/src/main/resources/proto/ClientServerChannelMessages.proto @@ -101,7 +101,7 @@ message ConfigureRadioMessage { required bool receiving_messages = 1; //Determines whether the radio receives messages or only routes required uint32 ip_address = 2; required uint32 subnet_address = 3; - required double transmission_power = 4; + required uint32 transmission_power = 4; enum RadioMode { SINGLE_CHANNEL = 1; DUAL_CHANNEL = 2; diff --git a/pom.xml b/pom.xml index 72a696855..1cdc49b08 100644 --- a/pom.xml +++ b/pom.xml @@ -106,7 +106,7 @@ 1.1.0 1.5.0 5.6.0 - 3.8.0 + 3.23.2 2.0.12 3.42.0.0