Bugfix/secure read range codec (#957)
* Secured ReadRange service codecs. Added ReadRange unit testing. Secured ReadRange-ACK handler to enable APDU size checking.
This commit is contained in:
@@ -12,70 +12,81 @@ jobs:
|
||||
job_bsc_tests_linux:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Create Build Environment
|
||||
run: |
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get install -qq libconfig-dev
|
||||
sudo apt-get install -qq libcap-dev
|
||||
sudo apt-get install -qq libssl-dev
|
||||
sudo apt-get install -qq libuv1-dev
|
||||
git clone --branch v4.3-stable https://github.com/warmcat/libwebsockets.git
|
||||
bash -c 'cd libwebsockets;mkdir build;cd build;cmake .. -DLWS_WITH_LIBUV=ON -DLWS_WITH_MINIMAL_EXAMPLES=0 -DLWS_MAX_SMP=32;make'
|
||||
sudo bash -c 'cd libwebsockets;cd build;make install'
|
||||
- name: Build and run bsc_event test
|
||||
run: |
|
||||
cd ./test/ports/linux/bsc_event
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_bsc_event
|
||||
- name: Build and run bvlc-sc test
|
||||
run: |
|
||||
cd ./test/bacnet/datalink/bvlc-sc
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_bvlc-sc
|
||||
- name: Build and run websockets test
|
||||
run: |
|
||||
cd ./test/bacnet/datalink/websockets
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_websockets
|
||||
- name: Build and run bsc-socket test
|
||||
run: |
|
||||
cd ./test/bacnet/datalink/bsc-socket
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_bsc-socket
|
||||
- name: Build and run hub-sc test
|
||||
run: |
|
||||
cd ./test/bacnet/datalink/hub-sc
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_hub-sc
|
||||
- name: Build and run bsc-node test
|
||||
run: |
|
||||
cd ./test/bacnet/datalink/bsc-node
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_bsc-node
|
||||
- name: Build and run bsc-datalink test
|
||||
run: |
|
||||
cd ./test/bacnet/datalink/bsc-datalink
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_bsc-datalink
|
||||
- name: Checkout BACnet Stack
|
||||
uses: actions/checkout@v4
|
||||
- name: Checkout libwebsockets
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: warmcat/libwebsockets
|
||||
ref: v4.3-stable
|
||||
path: libwebsockets
|
||||
- name: Create Build Environment
|
||||
run: |
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get install -qq libconfig-dev
|
||||
sudo apt-get install -qq libcap-dev
|
||||
sudo apt-get install -qq libssl-dev
|
||||
sudo apt-get install -qq libuv1-dev
|
||||
bash -c 'cd libwebsockets;mkdir build;cd build;cmake .. -DLWS_WITH_LIBUV=ON -DLWS_WITH_MINIMAL_EXAMPLES=0 -DLWS_MAX_SMP=32;make'
|
||||
sudo bash -c 'cd libwebsockets;cd build;make install'
|
||||
- name: Build and run bsc_event test
|
||||
run: |
|
||||
pwd
|
||||
cd ./test/ports/linux/bsc_event
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_bsc_event
|
||||
- name: Build and run bvlc-sc test
|
||||
run: |
|
||||
pwd
|
||||
cd ./test/bacnet/datalink/bvlc-sc
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_bvlc-sc
|
||||
- name: Build and run websockets test
|
||||
run: |
|
||||
pwd
|
||||
cd ./test/bacnet/datalink/websockets
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_websockets
|
||||
- name: Build and run bsc-socket test
|
||||
run: |
|
||||
pwd
|
||||
cd ./test/bacnet/datalink/bsc-socket
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_bsc-socket
|
||||
- name: Build and run hub-sc test
|
||||
run: |
|
||||
pwd
|
||||
cd ./test/bacnet/datalink/hub-sc
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_hub-sc
|
||||
- name: Build and run bsc-node test
|
||||
run: |
|
||||
cd ./test/bacnet/datalink/bsc-node
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_bsc-node
|
||||
- name: Build and run bsc-datalink test
|
||||
run: |
|
||||
cd ./test/bacnet/datalink/bsc-datalink
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
./test_bsc-datalink
|
||||
@@ -1,12 +1,7 @@
|
||||
name: BACNet/SC windows tests
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
pull_request:
|
||||
branches:
|
||||
- '*'
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
job_bsc_tests_windows:
|
||||
@@ -35,7 +30,7 @@ jobs:
|
||||
Copy-Item -Path .\pkg\lib -Destination c:\vcpkg\installed\x64-windows-custom -Recurse -Force
|
||||
Copy-Item -Path .\pkg\share -Destination c:\vcpkg\installed\x64-windows-custom -Recurse -Force
|
||||
cd ../../
|
||||
- name: Setup MSBuild
|
||||
- name: Setup MSBuild
|
||||
uses: microsoft/setup-msbuild@v2
|
||||
with:
|
||||
msbuild-architecture: x64
|
||||
@@ -63,7 +58,7 @@ jobs:
|
||||
cmake -B build -S . -DCMAKE_TOOLCHAIN_FILE=c:\vcpkg\scripts\buildsystems\vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows-custom
|
||||
msbuild build/test_bsc-socket.sln /Property:Configuration=Release
|
||||
./build/Release/test_bsc-socket.exe
|
||||
# (Link target) ->
|
||||
# (Link target) ->
|
||||
# bacreal.obj : error LNK2019: unresolved external symbol big_endian referenced in function decode_double [D:\a\bacnet-stack-upstream\bacnet-stack-upstream\test\bacnet\datalink\hub-sc\build\test_hub-sc.vcxproj]
|
||||
# - name: Build and run hub-sc test
|
||||
# run: |
|
||||
|
||||
@@ -80,7 +80,14 @@ jobs:
|
||||
bacnet-sc-hub:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Checkout BACnet Stack
|
||||
uses: actions/checkout@v4
|
||||
- name: Checkout libwebsockets
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: warmcat/libwebsockets
|
||||
ref: v4.3-stable
|
||||
path: libwebsockets
|
||||
- name: Create BACnet/SC Build Environment
|
||||
run: |
|
||||
sudo apt-get update -qq
|
||||
@@ -88,19 +95,27 @@ jobs:
|
||||
sudo apt-get install -qq libcap-dev
|
||||
sudo apt-get install -qq libssl-dev
|
||||
sudo apt-get install -qq libuv1-dev
|
||||
git clone --branch v4.3-stable https://github.com/warmcat/libwebsockets.git
|
||||
bash -c 'cd libwebsockets;mkdir build;cd build;cmake .. -DLWS_WITH_LIBUV=ON -DLWS_WITH_MINIMAL_EXAMPLES=0 -DLWS_MAX_SMP=32;make'
|
||||
sudo bash -c 'cd libwebsockets;cd build;make install'
|
||||
- name: Build BACnet/SC Hub Demo
|
||||
run: |
|
||||
gcc --version
|
||||
pwd
|
||||
ls -al
|
||||
make clean
|
||||
make sc-hub
|
||||
|
||||
router:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Checkout BACnet Stack
|
||||
uses: actions/checkout@v4
|
||||
- name: Checkout libwebsockets
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: warmcat/libwebsockets
|
||||
ref: v4.3-stable
|
||||
path: libwebsockets
|
||||
- name: Create Build Environment
|
||||
run: |
|
||||
sudo apt-get update -qq
|
||||
@@ -108,12 +123,13 @@ jobs:
|
||||
sudo apt-get install -qq libcap-dev
|
||||
sudo apt-get install -qq libssl-dev
|
||||
sudo apt-get install -qq libuv1-dev
|
||||
git clone --branch v4.3-stable https://github.com/warmcat/libwebsockets.git
|
||||
bash -c 'cd libwebsockets;mkdir build;cd build;cmake .. -DLWS_WITH_LIBUV=ON -DLWS_WITH_MINIMAL_EXAMPLES=0 -DLWS_MAX_SMP=32;make'
|
||||
sudo bash -c 'cd libwebsockets;cd build;make install'
|
||||
- name: Build Router Demo
|
||||
run: |
|
||||
gcc --version
|
||||
pwd
|
||||
ls -al
|
||||
make clean
|
||||
make LEGACY=true router
|
||||
|
||||
|
||||
@@ -85,14 +85,34 @@ jobs:
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Create Build Environment
|
||||
run: |
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get install -qq lcov
|
||||
- name: Run Unit Test with Code Coverage
|
||||
run: make test
|
||||
|
||||
unittest-secure-connect:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout BACnet Stack
|
||||
uses: actions/checkout@v4
|
||||
- name: Checkout libwebsockets
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: warmcat/libwebsockets
|
||||
ref: v4.3-stable
|
||||
path: libwebsockets
|
||||
- name: Create BACnet/SC Build Environment
|
||||
run: |
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get install -qq lcov
|
||||
sudo apt-get install -qq libssl-dev
|
||||
sudo apt-get install -qq libcap-dev
|
||||
sudo apt-get install -qq libuv1-dev
|
||||
git clone --branch v4.3-stable https://github.com/warmcat/libwebsockets.git
|
||||
bash -c 'cd libwebsockets;mkdir build;cd build;cmake .. -DLWS_WITH_LIBUV=ON -DLWS_WITH_MINIMAL_EXAMPLES=0 -DLWS_MAX_SMP=32;make'
|
||||
sudo bash -c 'cd libwebsockets;cd build;make install'
|
||||
- name: Run Unit Test with Code Coverage
|
||||
run: make test
|
||||
- name: Run BACnet/SC Unit Test with Code Coverage
|
||||
run: |
|
||||
pwd
|
||||
ls -al
|
||||
echo "make test-bsc"
|
||||
|
||||
Reference in New Issue
Block a user