Skip to content

Commit 48ccceb

Browse files
committed
Add CBMC-running GitHub Action;
This commit adds a GitHub Action that runs the CBMC proofs in this repository upon pushes and pull requests
1 parent e72c60e commit 48ccceb

File tree

20 files changed

+166
-34
lines changed

20 files changed

+166
-34
lines changed

.github/workflows/ci.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,3 +124,19 @@ jobs:
124124
with:
125125
config: .github/memory_statistics_config.json
126126
check_against: docs/doxygen/include/size_table.md
127+
proof_ci:
128+
runs-on: cbmc_ubuntu-latest_64-core
129+
steps:
130+
- name: Set up CBMC runner
131+
uses: FreeRTOS/CI-CD-Github-Actions/set_up_cbmc_runner@main
132+
with:
133+
kissat_tag: latest
134+
cbmc_version: "5.73.0"
135+
- run: |
136+
git submodule update --init --recursive --checkout
137+
sudo apt-get update
138+
sudo apt-get install --yes --no-install-recommends gcc-multilib build-essential
139+
- name: Run CBMC
140+
uses: FreeRTOS/CI-CD-Github-Actions/run_cbmc@main
141+
with:
142+
proofs_dir: test/cbmc/proofs

test/cbmc/proofs/HTTPClient_AddHeader/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,4 +58,6 @@ PROOF_SOURCES += $(SRCDIR)/test/cbmc/stubs/httpHeaderStrncpy.c
5858

5959
PROJECT_SOURCES += $(SRCDIR)/source/core_http_client.c
6060

61+
EXTERNAL_SAT_SOLVER := kissat
62+
6163
include ../Makefile.common

test/cbmc/proofs/HTTPClient_AddRangeHeader/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,4 +48,6 @@ PROOF_SOURCES += $(SRCDIR)/test/cbmc/stubs/httpHeaderStrncpy.c
4848

4949
PROJECT_SOURCES += $(SRCDIR)/source/core_http_client.c
5050

51+
EXTERNAL_SAT_SOLVER := kissat
52+
5153
include ../Makefile.common

test/cbmc/proofs/HTTPClient_InitializeRequestHeaders/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,4 +57,6 @@ PROOF_SOURCES += $(SRCDIR)/test/cbmc/stubs/httpHeaderStrncpy.c
5757

5858
PROJECT_SOURCES += $(SRCDIR)/source/core_http_client.c
5959

60+
EXTERNAL_SAT_SOLVER := kissat
61+
6062
include ../Makefile.common

test/cbmc/proofs/HTTPClient_ReadHeader/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,4 +44,6 @@ PROOF_SOURCES += $(SRCDIR)/test/cbmc/stubs/HTTPClient_ReadHeader_llhttp_execute.
4444
PROJECT_SOURCES += $(SRCDIR)/source/core_http_client.c
4545

4646

47+
EXTERNAL_SAT_SOLVER := kissat
48+
4749
include ../Makefile.common

test/cbmc/proofs/HTTPClient_Send/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,4 +74,6 @@ PROOF_SOURCES += $(SRCDIR)/test/cbmc/stubs/httpHeaderStrncpy.c
7474

7575
PROJECT_SOURCES += $(SRCDIR)/source/core_http_client.c
7676

77+
EXTERNAL_SAT_SOLVER := kissat
78+
7779
include ../Makefile.common

test/cbmc/proofs/HTTPClient_strerror/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,6 @@ PROOF_SOURCES += $(PROOFDIR)/$(HARNESS_FILE).c
3333

3434
PROJECT_SOURCES += $(SRCDIR)/source/core_http_client.c
3535

36+
EXTERNAL_SAT_SOLVER := kissat
37+
3638
include ../Makefile.common

test/cbmc/proofs/findHeaderFieldParserCallback/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,6 @@ PROOF_SOURCES += $(SRCDIR)/test/cbmc/sources/http_cbmc_state.c
2020

2121
PROJECT_SOURCES += $(SRCDIR)/source/core_http_client.c
2222

23+
EXTERNAL_SAT_SOLVER := kissat
24+
2325
include ../Makefile.common

test/cbmc/proofs/findHeaderOnHeaderCompleteCallback/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,6 @@ PROOF_SOURCES += $(SRCDIR)/test/cbmc/sources/http_cbmc_state.c
1616

1717
PROJECT_SOURCES += $(SRCDIR)/source/core_http_client.c
1818

19+
EXTERNAL_SAT_SOLVER := kissat
20+
1921
include ../Makefile.common

test/cbmc/proofs/findHeaderValueParserCallback/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,6 @@ PROOF_SOURCES += $(SRCDIR)/test/cbmc/sources/http_cbmc_state.c
1616

1717
PROJECT_SOURCES += $(SRCDIR)/source/core_http_client.c
1818

19+
EXTERNAL_SAT_SOLVER := kissat
20+
1921
include ../Makefile.common

0 commit comments

Comments
 (0)