Skip to content

Commit fd485e3

Browse files
authored
Merge branch 'finos:master' into master
2 parents b5975d5 + 28fd15e commit fd485e3

File tree

11 files changed

+90
-55
lines changed

11 files changed

+90
-55
lines changed

.github/workflows/pr-unit-test.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,31 +23,31 @@ jobs:
2323
matrix:
2424
include:
2525
- os: el8
26-
image: latest
26+
image: 2dd8104
2727
build:
2828
type: Release
2929
- os: ubuntu-focal-deb
30-
image: latest
30+
image: d9f98e8
3131
build:
3232
type: Release
33-
- os: ubuntu-focal
34-
image: latest
33+
- os: ubuntu-jammy
34+
image: d9f98e8
3535
build:
3636
type: Release
3737
- os: el8
38-
image: latest
38+
image: 2dd8104
3939
build:
4040
type: LCheck
4141
- os: el8
42-
image: latest
42+
image: 2dd8104
4343
build:
4444
type: TCheck
4545
- os: el8
46-
image: latest
46+
image: 2dd8104
4747
build:
4848
type: DCheck
4949
- os: el8
50-
image: latest
50+
image: 2dd8104
5151
build:
5252
type: LCov
5353
concurrency:

CMakeLists.txt

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,15 @@ option(ENABLE_ALLOCATOR_METRICS "Force enable the allocator metrics. It will be
1111

1212
set(ADDITIONAL_CXX_FLAGS, "")
1313

14+
if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
15+
if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 18_0)
16+
# disable variable-length arrays as they are not part of C++ standard
17+
# We should consider not using variable-length arrays instead of suppressing the waring
18+
set(ADDITIONAL_CXX_FLAGS "${ADDITIONAL_CXX_FLAGS} -Wno-vla-cxx-extension")
19+
endif()
20+
endif()
21+
22+
1423
if (ENABLE_LEGACY_API)
1524
set(ADDITIONAL_CXX_FLAGS "${ADDITIONAL_CXX_FLAGS} -DENABLE_LEGACY_API=1")
1625
message(STATUS "Enable Legacy API: ON")
@@ -29,16 +38,16 @@ if (ENABLE_LIBATOMIC)
2938
endif()
3039

3140
set(CMAKE_CXX_STANDARD 17)
32-
set(CMAKE_CXX_FLAGS_DEBUG "-stdlib=libc++ -glldb -O0 -DDEBUG ${ADDITIONAL_CXX_FLAGS} -fno-rtti -Wall -Wuninitialized -Wsign-compare -Wthread-safety -Wno-missing-braces")
33-
set(CMAKE_CXX_FLAGS_DCHECK "-stdlib=libc++ -glldb -O0 -DDEBUG ${ADDITIONAL_CXX_FLAGS} -DDCHECK_BUILD -DNOPERF_TEST -fno-rtti -Wall -Wuninitialized -Wsign-compare -Wthread-safety -Wno-missing-braces -fsanitize=address -fno-omit-frame-pointer")
34-
set(CMAKE_CXX_FLAGS_TCHECK "-stdlib=libc++ -glldb -O1 -DDEBUG ${ADDITIONAL_CXX_FLAGS} -DTCHECK_BUILD -DNOPERF_TEST -fno-rtti -Wall -Wuninitialized -Wsign-compare -Wthread-safety -Wno-missing-braces -fsanitize=thread -fno-omit-frame-pointer")
35-
set(CMAKE_CXX_FLAGS_LCHECK "-stdlib=libc++ -glldb -O1 -g -DDEBUG ${ADDITIONAL_CXX_FLAGS} -DLCHECK_BUILD -DNOPERF_TEST -fno-rtti -Wall -Wuninitialized -Wsign-compare -Wthread-safety -Wno-missing-braces -fsanitize=leak -fno-omit-frame-pointer")
36-
set(CMAKE_CXX_FLAGS_RELEASE "-stdlib=libc++ -O3 -DNDEBUG ${ADDITIONAL_CXX_FLAGS} -fno-rtti -Wno-missing-braces -Wuninitialized -Wsign-compare")
41+
set(CMAKE_CXX_FLAGS_DEBUG "-stdlib=libc++ -glldb -O0 -DDEBUG -fno-rtti -Wall -Wuninitialized -Wsign-compare -Wthread-safety -Wno-missing-braces ${ADDITIONAL_CXX_FLAGS}")
42+
set(CMAKE_CXX_FLAGS_DCHECK "-stdlib=libc++ -glldb -O0 -DDEBUG ${ADDITIONAL_CXX_FLAGS} -DDCHECK_BUILD -DNOPERF_TEST -fno-rtti -Wall -Wuninitialized -Wsign-compare -Wthread-safety -Wno-missing-braces -fsanitize=address -fno-omit-frame-pointer ${ADDITIONAL_CXX_FLAGS}")
43+
set(CMAKE_CXX_FLAGS_TCHECK "-stdlib=libc++ -glldb -O1 -DDEBUG ${ADDITIONAL_CXX_FLAGS} -DTCHECK_BUILD -DNOPERF_TEST -fno-rtti -Wall -Wuninitialized -Wsign-compare -Wthread-safety -Wno-missing-braces -fsanitize=thread -fno-omit-frame-pointer ${ADDITIONAL_CXX_FLAGS}")
44+
set(CMAKE_CXX_FLAGS_LCHECK "-stdlib=libc++ -glldb -O1 -g -DDEBUG ${ADDITIONAL_CXX_FLAGS} -DLCHECK_BUILD -DNOPERF_TEST -fno-rtti -Wall -Wuninitialized -Wsign-compare -Wthread-safety -Wno-missing-braces -fsanitize=leak -fno-omit-frame-pointer ${ADDITIONAL_CXX_FLAGS}")
45+
set(CMAKE_CXX_FLAGS_RELEASE "-stdlib=libc++ -O3 -DNDEBUG ${ADDITIONAL_CXX_FLAGS} -fno-rtti -Wno-missing-braces -Wuninitialized -Wsign-compare ${ADDITIONAL_CXX_FLAGS}")
3746
set(CMAKE_C_FLAGS_DEBUG "-glldb -O0 -DDEBUG -Wall")
3847
set(CMAKE_C_FLAGS_RELEASE "-O3 -DNDEBUG")
39-
set(CMAKE_CXX_FLAGS_SYMRELEASE "-stdlib=libc++ -glldb -O2 -DNDEBUG ${ADDITIONAL_CXX_FLAGS} -fno-rtti -fno-omit-frame-pointer -Wall -Wno-missing-braces -Wuninitialized -Wsign-compare")
48+
set(CMAKE_CXX_FLAGS_SYMRELEASE "-stdlib=libc++ -glldb -O2 -DNDEBUG ${ADDITIONAL_CXX_FLAGS} -fno-rtti -fno-omit-frame-pointer -Wall -Wno-missing-braces -Wuninitialized -Wsign-compare ${ADDITIONAL_CXX_FLAGS}")
4049
set(CMAKE_CXX_FLAGS_LCOV "-stdlib=libc++ -glldb -O0 -DDEBUG -DLCOV_BUILD -DNOPERF_TEST ${ADDITIONAL_CXX_FLAGS} -fno-rtti -Wall -Wuninitialized -Wsign-compare -Wthread-safety -Wno-missing-braces -fno-omit-frame-pointer \
41-
-fprofile-arcs -ftest-coverage -fprofile-instr-generate -fcoverage-mapping")
50+
-fprofile-arcs -ftest-coverage -fprofile-instr-generate -fcoverage-mapping ${ADDITIONAL_CXX_FLAGS}")
4251

4352
set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
4453
set(THREADS_PREFER_PTHREAD_FLAG TRUE)

docker/aws-linux/Dockerfile

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@ FROM amazonlinux:2
22

33
RUN yum -y update && yum -y upgrade
44
RUN yum -y groupinstall "Development Tools"
5-
RUN yum -y install git wget which
5+
RUN yum -y install git wget which perl-IPC-Cmd
66
RUN amazon-linux-extras enable python3.8 && yum -y install python3.8
77

8-
# Build openssl-1.1.1s
9-
RUN cd /tmp && wget https://www.openssl.org/source/openssl-1.1.1s.tar.gz && tar xvfz openssl-1.1.1s.tar.gz && rm openssl-1.1.1s.tar.gz
10-
RUN cd /tmp/openssl-1.1.1s && ./config && make -j5 && make install_sw
8+
# Build openssl-3.4.0
9+
RUN cd /tmp && wget https://github.com/openssl/openssl/releases/download/openssl-3.4.0/openssl-3.4.0.tar.gz && tar xvfz openssl-3.4.0.tar.gz && rm openssl-3.4.0.tar.gz
10+
RUN cd /tmp/openssl-3.4.0 && ./config && make -j5 && make install_sw
1111

12-
RUN cd /tmp && wget https://cmake.org/files/v3.18/cmake-3.18.0.tar.gz && tar -xvzf cmake-3.18.0.tar.gz \
13-
&& cd cmake-3.18.0 && ./bootstrap && make -j5 && make install
12+
RUN cd /tmp && wget https://cmake.org/files/v3.30/cmake-3.30.0.tar.gz && tar -xvzf cmake-3.30.0.tar.gz \
13+
&& cd cmake-3.30.0 && ./bootstrap && make -j5 && make install
1414

1515
RUN cd /tmp \
1616
&& wget -O clang+llvm-12.0.1-x86_64-linux.tar.xz https://github.com/llvm/llvm-project/releases/download/llvmorg-12.0.1/clang+llvm-12.0.1-x86_64-linux-gnu-ubuntu-16.04.tar.xz \
@@ -21,12 +21,11 @@ RUN cd /tmp \
2121
&& ln -s /usr/local/bin/lld /usr/local/bin/ld \
2222
&& rm clang+llvm-12.0.1-x86_64-linux.tar.xz
2323

24-
25-
# Build libsrtp 2.4.2
24+
# Build libsrtp 2.6.0
2625
RUN cd /tmp \
2726
&& git clone https://github.com/cisco/libsrtp \
2827
&& cd /tmp/libsrtp \
29-
&& git checkout v2.4.2 \
28+
&& git checkout v2.6.0 \
3029
&& PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig ./configure --enable-openssl \
3130
&& make -j5 \
3231
&& make install

docker/aws-linux/buildscript.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ cp /usr/local/lib/libc++.so.1 libs
4545
cp /usr/local/lib/libc++abi.so.1 libs
4646
cp /usr/local/lib64/libssl.so.1.1 libs
4747
cp /usr/local/lib64/libcrypto.so.1.1 libs
48+
cp /usr/local/lib64/libssl.so.3 libs
49+
cp /usr/local/lib64/libcrypto.so.3 libs
4850
cp /usr/local/lib/libmicrohttpd.so.12 libs
4951
cp /usr/local/lib/libopus.so.0 libs
5052

docker/el8/Dockerfile

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ FROM redhat/ubi8:latest
22

33
RUN yum -y update && yum -y upgrade
44

5-
# Install build dependenices
6-
RUN yum -y install git llvm-toolset cmake libtool wget lsof python3 perl-IO-Compress perl-JSON-PP make perl-Pod-Html xz
5+
# Install build dependencies
6+
RUN yum -y install git cmake llvm-toolset lld libtool wget lsof python3 perl-IO-Compress perl-JSON-PP perl-IPC-Cmd make perl-Pod-Html xz
77

88
# Build lcov 1.15
99
RUN cd /tmp && git clone https://github.com/linux-test-project/lcov.git
@@ -15,13 +15,21 @@ RUN cd /tmp/llvm-project/ && mkdir build
1515
RUN cd /tmp/llvm-project/build && cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS='libcxx;libcxxabi' ../llvm/
1616
RUN cd /tmp/llvm-project/build && make -j5 cxx && make install-cxx install-cxxabi
1717

18-
# Build openssl-1.1.1s
19-
RUN cd /tmp && wget https://www.openssl.org/source/openssl-1.1.1s.tar.gz && tar xvfz openssl-1.1.1s.tar.gz && rm openssl-1.1.1s.tar.gz
20-
RUN cd /tmp/openssl-1.1.1s && ./config && make -j5 && make install_sw
21-
22-
# Build libsrtp 2.4.2
23-
RUN cd /tmp && git clone https://github.com/cisco/libsrtp
24-
RUN cd /tmp/libsrtp && git checkout v2.4.2 && PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig ./configure --enable-openssl && make -j5 && make install
18+
# Build openssl-3.4.0
19+
RUN cd /tmp && wget https://github.com/openssl/openssl/releases/download/openssl-3.4.0/openssl-3.4.0.tar.gz && tar xvfz openssl-3.4.0.tar.gz && rm openssl-3.4.0.tar.gz
20+
RUN cd /tmp/openssl-3.4.0 && ./config && make -j5 && make install_sw
21+
22+
RUN yum -y remove cmake && cd /tmp && wget https://cmake.org/files/v3.30/cmake-3.30.0.tar.gz && tar -xvzf cmake-3.30.0.tar.gz \
23+
&& cd cmake-3.30.0 && ./bootstrap && make -j5 && make install
24+
25+
# Build libsrtp 2.6.0
26+
RUN cd /tmp \
27+
&& git clone https://github.com/cisco/libsrtp \
28+
&& cd /tmp/libsrtp \
29+
&& git checkout v2.6.0 \
30+
&& PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig ./configure --enable-openssl \
31+
&& make -j5 \
32+
&& make install
2533

2634
# Build libmicrohttpd 0.9.73
2735
RUN cd /tmp && wget https://ftp.gnu.org/gnu/libmicrohttpd/libmicrohttpd-0.9.73.tar.gz && tar xvfz libmicrohttpd-0.9.73.tar.gz

docker/el8/buildscript.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ fi
4141

4242
cp /usr/local/lib/libc++.so.1 libs
4343
cp /usr/local/lib/libc++abi.so.1 libs
44-
cp /usr/local/lib64/libssl.so.1.1 libs
45-
cp /usr/local/lib64/libcrypto.so.1.1 libs
44+
cp /usr/local/lib64/libssl.so.3 libs
45+
cp /usr/local/lib64/libcrypto.so.3 libs
4646
cp /usr/local/lib/libmicrohttpd.so.12 libs
4747
cp /usr/local/lib/libopus.so.0 libs
4848

docker/ubuntu-focal/Dockerfile

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,24 @@ ENV DEBIAN_FRONTEND=noninteractive
55
RUN apt-get -y update --fix-missing && apt-get -y upgrade
66

77
# Install build dependenices
8-
RUN apt-get -y install git wget cmake xz-utils libz-dev build-essential
8+
RUN apt-get -y install git wget xz-utils libz-dev build-essential
99

10-
# Build openssl-1.1.1s
11-
RUN cd /tmp && wget https://www.openssl.org/source/openssl-1.1.1s.tar.gz && tar xvfz openssl-1.1.1s.tar.gz && rm openssl-1.1.1s.tar.gz
12-
RUN cd /tmp/openssl-1.1.1s && ./config && make -j5 && make install_sw
10+
RUN mkdir -p /usr/local/cmake-3.30
11+
RUN wget -qO- https://github.com/Kitware/CMake/releases/download/v3.30.5/cmake-3.30.5-Linux-x86_64.tar.gz | tar --strip-components=1 -xz -C /usr/local/cmake-3.30
12+
ENV PATH="/usr/local/cmake-3.30/bin:${PATH}"
1313

14-
# Build libsrtp 2.4.2
15-
RUN cd /tmp && git clone https://github.com/cisco/libsrtp
16-
RUN cd /tmp/libsrtp && git checkout v2.4.2 && PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure --enable-openssl && make -j5 && make install
14+
# Build openssl-3.4.0
15+
RUN cd /tmp && wget https://github.com/openssl/openssl/releases/download/openssl-3.4.0/openssl-3.4.0.tar.gz && tar xvfz openssl-3.4.0.tar.gz && rm openssl-3.4.0.tar.gz
16+
RUN cd /tmp/openssl-3.4.0 && ./config && make -j5 && make install_sw
17+
18+
# Build libsrtp 2.6.0
19+
RUN cd /tmp \
20+
&& git clone https://github.com/cisco/libsrtp \
21+
&& cd /tmp/libsrtp \
22+
&& git checkout v2.6.0 \
23+
&& PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig ./configure --enable-openssl \
24+
&& make -j5 \
25+
&& make install
1726

1827
RUN cd /tmp \
1928
&& wget -O clang+llvm-12.0.1-x86_64-linux.tar.xz https://github.com/llvm/llvm-project/releases/download/llvmorg-12.0.1/clang+llvm-12.0.1-x86_64-linux-gnu-ubuntu-16.04.tar.xz \

docker/ubuntu-focal/buildscript.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ fi
4141
cp /usr/lib/x86_64-linux-gnu/libatomic.so.1 libs
4242
cp /usr/local/lib/libc++.so.1 libs
4343
cp /usr/local/lib/libc++abi.so.1 libs
44-
cp /usr/local/lib/libssl.so.1.1 libs
45-
cp /usr/local/lib/libcrypto.so.1.1 libs
44+
cp /usr/local/lib64/libssl.so.3 libs
45+
cp /usr/local/lib64/libcrypto.so.3 libs
4646
cp /usr/local/lib/libmicrohttpd.so.12 libs
4747
cp /usr/local/lib/libopus.so.0 libs
4848

docker/ubuntu-jammy/Dockerfile

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,21 @@ RUN apt-get -y update --fix-missing && apt-get -y upgrade
77
# Install build dependenices
88
RUN apt-get -y install git wget cmake xz-utils libz-dev build-essential
99

10-
# Build openssl-1.1.1s
11-
RUN cd /tmp && wget https://www.openssl.org/source/openssl-1.1.1s.tar.gz && tar xvfz openssl-1.1.1s.tar.gz && rm openssl-1.1.1s.tar.gz
12-
RUN cd /tmp/openssl-1.1.1s && ./config && make -j5 && make install_sw
10+
# Build openssl-3.4.0
11+
RUN cd /tmp && wget https://github.com/openssl/openssl/releases/download/openssl-3.4.0/openssl-3.4.0.tar.gz && tar xvfz openssl-3.4.0.tar.gz && rm openssl-3.4.0.tar.gz
12+
RUN cd /tmp/openssl-3.4.0 && ./config && make -j5 && make install_sw
1313

14-
# Build libsrtp 2.4.2
15-
RUN cd /tmp && git clone https://github.com/cisco/libsrtp
16-
RUN cd /tmp/libsrtp && git checkout v2.4.2 && PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure --enable-openssl && make -j5 && make install
14+
RUN apt-get -y remove cmake && cd /tmp && wget https://cmake.org/files/v3.30/cmake-3.30.0.tar.gz && tar -xvzf cmake-3.30.0.tar.gz \
15+
&& cd cmake-3.30.0 && ./bootstrap && make -j5 && make install
16+
17+
# Build libsrtp 2.6.0
18+
RUN cd /tmp \
19+
&& git clone https://github.com/cisco/libsrtp \
20+
&& cd /tmp/libsrtp \
21+
&& git checkout v2.6.0 \
22+
&& PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig ./configure --enable-openssl \
23+
&& make -j5 \
24+
&& make install
1725

1826
RUN cd /tmp \
1927
&& wget -O clang+llvm-12.0.1-x86_64-linux.tar.xz https://github.com/llvm/llvm-project/releases/download/llvmorg-12.0.1/clang+llvm-12.0.1-x86_64-linux-gnu-ubuntu-16.04.tar.xz \

docker/ubuntu-jammy/buildscript.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ fi
4141
cp /usr/lib/x86_64-linux-gnu/libatomic.so.1 libs
4242
cp /usr/local/lib/libc++.so.1 libs
4343
cp /usr/local/lib/libc++abi.so.1 libs
44-
cp /usr/local/lib/libssl.so.1.1 libs
45-
cp /usr/local/lib/libcrypto.so.1.1 libs
44+
cp /usr/local/lib64/libssl.so.3 libs
45+
cp /usr/local/lib64/libcrypto.so.3 libs
4646
cp /usr/local/lib/libmicrohttpd.so.12 libs
4747
cp /usr/local/lib/libopus.so.0 libs
4848

test/transport/IceTest.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -161,8 +161,8 @@ TEST_F(IceTest, HMACempty)
161161
EXPECT_TRUE(hmac.init(pwd.c_str(), pwd.size()));
162162
uint8_t result[20];
163163
hmac.compute(result);
164+
hmac.reset();
164165
hmac.add(req, 5);
165-
166166
hmac.compute(result);
167167
}
168168

@@ -391,7 +391,7 @@ class IceSocketAdapter : public ice::IceEndpoint
391391
{
392392
public:
393393
IceSocketAdapter() {}
394-
virtual ~IceSocketAdapter(){};
394+
virtual ~IceSocketAdapter() {};
395395

396396
void sendStunTo(const transport::SocketAddress& target,
397397
ice::Int96 transactionId,
@@ -419,7 +419,7 @@ class IceTestInfra : public transport::RtcePoll::IEventListener
419419
session(1, config, ice::IceComponent::RTP, ice::IceRole::CONTROLLING, nullptr),
420420
_socketService(transport::createRtcePoll()),
421421
_socketCount(0),
422-
_inboundPackets(32){};
422+
_inboundPackets(32) {};
423423

424424
void add(transport::SocketAddress localInterface)
425425
{

0 commit comments

Comments
 (0)