Skip to content

Conversation

@251
Copy link
Owner

@251 251 commented Mar 30, 2023

Summary:

Checklist:

  • The PR addresses a single issue. If it can be divided into multiple independent PRs, please do so.
  • The PR is divided into a logical sequence of commits OR a single commit is sufficient.
  • There are no unnecessary commits (e.g. commits fixing issues in a previous commit in the same PR).
  • Each commit has a meaningful message documenting what it does.
  • All messages added to the codebase, all comments, as well as commit messages are spellchecked.
  • The code is commented OR not applicable/necessary.
  • The patch is formatted via clang-format OR not applicable (if explicitly overridden leave unchecked and explain).
  • There are test cases for the code you added or modified OR no such test cases are required.

danielschemmel and others added 23 commits March 23, 2023 14:20
Otherwise we see errors like this with gcc13:
include/klee/Statistics/Statistic.h:31:10: error: no type named 'uint32_t' in namespace 'std'
According to i686 System V ABI 2.1.1, long double must be aligned to 4 bytes.
Thus, its size with padding is 12 bytes.  Prior to this change only 10 bytes
were used.

This commit fixes the following out of bound pointer access.
```
$ clang -m32 -O0 -Xclang -disable-O0-optnone -g -emit-llvm -c test/Feature/VarArgAlignment.c -o varalign.bc
$ klee varalign.bc
KLEE: output directory is "/home/lukas/klee/klee-out-19"
KLEE: Using Z3 solver backend
KLEE: WARNING: undefined reference to function: printf
KLEE: WARNING ONCE: calling external: printf(44120064, 1, 2, 3) at test/Feature/VarArgAlignment.c:23 17
i1, i2, i3: 1, 2, 3
l1: 4
i4: 5
ld1: 6.000000
KLEE: ERROR: test/Feature/VarArgAlignment.c:35: memory error: out of bound pointer
KLEE: NOTE: now ignoring this error at this location

KLEE: done: total instructions = 499
KLEE: done: completed paths = 1
KLEE: done: generated tests = 1
```
It performs differential ShellCheck scans and report results directly in pull request.

documentation: https://github.com/redhat-plumbers-in-action/differential-shellcheck

Signed-off-by: Jan Macku <jamacku@redhat.com>
@github-advanced-security
Copy link

You have successfully added a new shellcheck configuration differential-shellcheck. As part of the setup process, we have scanned this repository and found no existing alerts. In the future, you will see all code scanning alerts on the repository Security tab.

251 added 2 commits March 31, 2023 22:33
Introduce three different kinds of process trees:
1. Noop: does nothing (e.g. no allocations for DFS)
2. InMemory: same behaviour as before (e.g. RandomPathSearcher)
3. Persistent: similar to InMemory but writes nodes to ptree.db
     and tracks information such as branch type, termination
     type or source location (asm) in nodes. Enabled with
     -write-ptree

ptree.db files can be analysed/plotted with the new "klee-ptree"
tool.
@251 251 force-pushed the persistent_ptree_3 branch from 32f688f to 2ac759d Compare March 31, 2023 21:34
@codecov-commenter
Copy link

codecov-commenter commented Mar 31, 2023

Codecov Report

Merging #6 (ca53a77) into master (fe97779) will decrease coverage by 1.07%.
The diff coverage is 68.70%.

❗ Current head ca53a77 differs from pull request most recent head 2ac759d. Consider uploading reports for the commit 2ac759d to get more accurate results

📣 This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more

Additional details and impacted files
@@            Coverage Diff             @@
##           master       #6      +/-   ##
==========================================
- Coverage   70.87%   69.80%   -1.07%     
==========================================
  Files         155      163       +8     
  Lines       18517    19379     +862     
  Branches     4108     4624     +516     
==========================================
+ Hits        13123    13527     +404     
- Misses       3588     3793     +205     
- Partials     1806     2059     +253     
Impacted Files Coverage Δ
include/klee/Core/Interpreter.h 100.00% <ø> (ø)
include/klee/Expr/ArrayExprVisitor.h 100.00% <ø> (ø)
include/klee/Expr/Expr.h 84.70% <ø> (+0.11%) ⬆️
include/klee/Solver/Solver.h 100.00% <ø> (ø)
include/klee/Statistics/Statistic.h 100.00% <ø> (ø)
lib/Core/AddressSpace.h 100.00% <ø> (ø)
lib/Core/Executor.h 77.27% <ø> (ø)
lib/Core/MemoryManager.h 100.00% <ø> (ø)
lib/Core/Searcher.h 100.00% <ø> (ø)
lib/Core/SpecialFunctionHandler.h 0.00% <ø> (-50.00%) ⬇️
... and 59 more

... and 67 files with indirect coverage changes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants