Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.2.0 Release Candidate #30

Merged
merged 196 commits into from
Nov 27, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
196 commits
Select commit Hold shift + click to select a range
bb42b0a
Update docs to use ispm instead of project-setup
novafacing Sep 21, 2023
af44d63
Remove unused simics-cli crate
novafacing Sep 21, 2023
4bfb5bd
Start working on removing unofficial project management
novafacing Sep 26, 2023
b897c65
Add ispm wrapper and tests
novafacing Oct 5, 2023
c3cab43
Move code into package structure
novafacing Oct 6, 2023
a467209
Fuzzer and module both building
novafacing Oct 6, 2023
56782c6
Add project build files
novafacing Oct 6, 2023
7778dcb
Migrate simics sys api to use rusty enums
novafacing Oct 9, 2023
e18c5a2
Start reworking ffi macro using darling
novafacing Oct 11, 2023
3078510
Update and rewrite FFI macro library
novafacing Oct 12, 2023
5b0d464
Update macros and add additional API definitions for attr_value and c…
novafacing Oct 13, 2023
4acc9fa
Implement auto-generated HAP and Interface, implement up to hap_consu…
novafacing Oct 14, 2023
d55686a
Fixup hap structures
novafacing Oct 14, 2023
03726ae
Only use re-exported sys api
novafacing Oct 14, 2023
b127070
Add documentation, test interface impls
novafacing Oct 16, 2023
4e405fa
Remove static binding files, only support using headers from simics i…
novafacing Oct 16, 2023
90e75f5
Add system for conditionally compiling high level bindings based on l…
novafacing Oct 16, 2023
1f0f29b
Move interface and hap codegen to separate crate and generate in buil…
novafacing Oct 16, 2023
0ec4024
Add error when rm-haps document not found
novafacing Oct 16, 2023
746ac56
Add simple header and dml generation as an option to interface declar…
novafacing Oct 17, 2023
7170d3b
Start pulling implementations back in with newer structure
novafacing Oct 18, 2023
eed0ede
Add test framework wrapper
novafacing Oct 18, 2023
60b3e10
Remove fuzzer code -- it will be added back into the module itself
novafacing Oct 18, 2023
5333c27
Add as and from attr value traits
novafacing Oct 18, 2023
dd85b94
Add configuration retrieval test
novafacing Oct 18, 2023
d71240d
Add configuration test
novafacing Oct 19, 2023
d20bc5c
Fixup attr value handling, fix tryinto derives
novafacing Oct 19, 2023
726b4ad
Start implementation of auto from attr value derive, need to implemen…
novafacing Oct 20, 2023
3454b2f
Fix derive of tryfromattrvaluetype
novafacing Oct 20, 2023
eb0366a
Add documentation for attr value, conf object, event
novafacing Oct 21, 2023
8991bd5
Add more documentation, change some types to AttrValue
novafacing Oct 21, 2023
df765ee
Fix return type and add crate level docstring
novafacing Oct 21, 2023
accd547
Add lifetime support to ffi macro
novafacing Oct 23, 2023
862b6a2
Facilitate automated testing in cargo with per-test created simics ho…
novafacing Oct 23, 2023
fd1c9c8
Update magic harness for x86_64 and add tests for harness correctness
novafacing Oct 25, 2023
ac6356c
Add restricted test skeleton
novafacing Oct 25, 2023
18c9bf0
Add fuzz test and update codegen for HAPs to fix boxing issues
novafacing Oct 25, 2023
a556ad0
Update attr values, add heterogeneous list support, test QSP fuzz loop
novafacing Oct 28, 2023
3de89bf
Manual test working
novafacing Oct 30, 2023
cb31038
Manual test working
novafacing Oct 30, 2023
f69fa9b
Manual test working
novafacing Oct 30, 2023
e3057c7
Manual and magic fuzz harnesses both work
novafacing Oct 30, 2023
2d41d8a
Fixup black-box harnessing to actually write testcases
novafacing Oct 31, 2023
599af3f
Add manual x86 and riscv64 tests
novafacing Oct 31, 2023
4d465f2
Add RISCV kernel module build to target
novafacing Nov 1, 2023
9e986ee
Add kernel, user, and kernel userspace tests
novafacing Nov 2, 2023
2ef6de2
Add breakpoint test target
novafacing Nov 2, 2023
4eacbcf
Add timeout test target
novafacing Nov 2, 2023
cda2e6e
Update test cases for new targets
novafacing Nov 2, 2023
3fa021c
Rework event dispatch and enable detector
novafacing Nov 2, 2023
bcd7b32
Add more arch harnesses
novafacing Nov 2, 2023
dfa2f36
Implement branch tracing and fuzz data provider
novafacing Nov 3, 2023
51fd8f5
Update libafl, fix tests to not always error during calibration
novafacing Nov 3, 2023
18ffbd5
Add tokenize and test cases
novafacing Nov 3, 2023
6fdb28d
Testing timeout fixes
novafacing Nov 3, 2023
885dd09
Rework to make architecture simpler
novafacing Nov 5, 2023
f80ecf7
Update x86 test case to use architecture hint and fuzz x86 in userspace
novafacing Nov 5, 2023
7644bb8
Update some missing docstrings
novafacing Nov 5, 2023
8789490
Remove outdated examples
novafacing Nov 5, 2023
634120b
Remove unused ISPM packages
novafacing Nov 5, 2023
179d1e5
Remove unused documentation
novafacing Nov 5, 2023
e9906be
Switch to remote yaxpeax
novafacing Nov 5, 2023
dd02c42
Update build script to bypass doc-and-packaging requirement
novafacing Nov 6, 2023
30fd911
Update gitignore and add dockerignore for docker demo
novafacing Nov 6, 2023
23267a9
Add demonstration dockerfile
novafacing Nov 6, 2023
d26eb49
Change cmplog to avoid unnecessary error types
novafacing Nov 6, 2023
4920dd2
Default to == when no observed cmp type
novafacing Nov 6, 2023
e0916bd
Add tokenize to default demo
novafacing Nov 6, 2023
5a8b5b8
Remove non-portable files from git
novafacing Nov 6, 2023
8c37a99
Remove non-portable files from git
novafacing Nov 6, 2023
c871bab
Add logo back in
novafacing Nov 6, 2023
69565d0
Remove non-portable files from git
novafacing Nov 6, 2023
6ead973
Implement repro
novafacing Nov 6, 2023
db9087c
Add demo cast
novafacing Nov 6, 2023
8c4eb67
Make corpus and solutions directory do lookups
novafacing Nov 6, 2023
693d1f4
Add user guide and setup documents
novafacing Nov 7, 2023
49dfcd0
Add documentation index
novafacing Nov 7, 2023
97f2381
Update CI
novafacing Nov 7, 2023
6160406
Fix github env variable format
novafacing Nov 7, 2023
7553e0d
Set env vars for cargo
novafacing Nov 7, 2023
0ef0bab
Remove pl scripts
novafacing Nov 7, 2023
173270b
Fix caching
novafacing Nov 7, 2023
c04b6c9
Use noninteractive for dockerfiles
novafacing Nov 7, 2023
74dc32c
Add empty targets directory to squash build error
novafacing Nov 7, 2023
61c36a5
Exclude tests from sudo/setuid checks to allow sudo in test scripts
novafacing Nov 7, 2023
8b46bec
Only build if directory exists
novafacing Nov 7, 2023
63f085b
Fix super linter errors
novafacing Nov 7, 2023
35911e4
Add missing headers
novafacing Nov 7, 2023
bd50188
Add riscv executor frontend
novafacing Nov 7, 2023
6ec22e3
Fix clippy issues
novafacing Nov 7, 2023
dac15f7
Fix black issues with import order
novafacing Nov 8, 2023
42b3aea
Fix fmt script to use standard profile
novafacing Nov 8, 2023
9ddb291
Remove broken mail symlink in images to fix kaniko build
novafacing Nov 8, 2023
ee0278f
Fixup dockerfile scan fail and use correct if statement for package i…
novafacing Nov 8, 2023
21959e6
Fix cache check
novafacing Nov 8, 2023
b2ca38d
Remove unused dependencies
novafacing Nov 8, 2023
3ac811c
Add missing dependencies back to tests-restricted
novafacing Nov 8, 2023
4953aeb
Update out of date 3rd party dependencies
novafacing Nov 8, 2023
c6dde5c
Fix data getters import
novafacing Nov 8, 2023
0b0cda7
Disable simics tests for missing target software
novafacing Nov 8, 2023
5b50c3d
Add initial windows instructions
novafacing Nov 8, 2023
998d3d8
Fix test invocation
novafacing Nov 8, 2023
fa8251b
Fix miri test
novafacing Nov 8, 2023
6782314
Add test target EFI modules
novafacing Nov 8, 2023
f9c5180
Update kaniko-trivy-alpine to new image to fix architecture
novafacing Nov 8, 2023
2fb7507
Add kaniko fix to dockerfiles
novafacing Nov 8, 2023
81dde76
Remove non working workaround for Kaniko and update image to fix
novafacing Nov 8, 2023
0b35a38
Workaround for DNF issues
novafacing Nov 8, 2023
621a318
Fix linter issues
novafacing Nov 8, 2023
1e1c0ba
Ignore libcrypto
novafacing Nov 8, 2023
bfb858b
Ignore libssl
novafacing Nov 8, 2023
a0029db
Ignore libssl for example dockerfile
novafacing Nov 8, 2023
446673e
Add manual demo
novafacing Nov 10, 2023
4ae66e3
Comment script and add run commands
novafacing Nov 10, 2023
8642c3f
Finalize Windows build steps
novafacing Nov 11, 2023
8c36b21
Rename linux install documentation
novafacing Nov 11, 2023
b081b49
Merge origin/simics-package into simics-package
novafacing Nov 11, 2023
0a9a5e2
Add windows build step to CI
novafacing Nov 11, 2023
d559599
Move ldflags for windows into build script to avoid re-generated comp…
novafacing Nov 12, 2023
3f040d3
Fix adding system path on Windows
novafacing Nov 12, 2023
d8087b9
Add project setup step to docs and CI
novafacing Nov 12, 2023
7e516c2
Fix lint and libafl dependency issues
novafacing Nov 12, 2023
d06edd4
Move rust-bindgen dependency to f16 branch
novafacing Nov 12, 2023
2b09555
wait for SIMICS NSIS installer in CI
novafacing Nov 12, 2023
5fa840f
Windows bundle contains unsigned packages, allow them
novafacing Nov 12, 2023
ccd47e1
Switch to non-kaniko trivy for scanning
novafacing Nov 12, 2023
5046f5a
Add cache for windows
novafacing Nov 12, 2023
27ebca1
Use include syntax for extra fields
novafacing Nov 12, 2023
9b2c941
fix path list
novafacing Nov 12, 2023
1d0c252
Fix env quoting
novafacing Nov 12, 2023
55fe631
Do not use E flag to make
novafacing Nov 12, 2023
39c8e9b
Do not use yes
novafacing Nov 12, 2023
61dbc24
Fix mingw extract path
novafacing Nov 12, 2023
df68cbb
Fix 7z extract
novafacing Nov 12, 2023
921d3f5
Fix features for targets
novafacing Nov 12, 2023
334e140
Replace texinfo dependency
novafacing Nov 12, 2023
f25a985
Switch ldflag, update ci workflow to prepend mingw to path
novafacing Nov 13, 2023
3e4c866
Optimize dockerfiles for size
novafacing Nov 13, 2023
b0a9be4
Optimize dockerfiles for size
novafacing Nov 13, 2023
73ed858
Fix variable set command
novafacing Nov 13, 2023
fb77523
Fix hadolint warning
novafacing Nov 13, 2023
b3b87cd
Fix typos in powershell path commands
novafacing Nov 13, 2023
241a3d1
Use compatible make argument
novafacing Nov 13, 2023
cbe8689
Use config-user to add user config libs
novafacing Nov 13, 2023
c2f25b6
Do not try to use windows path in linux container
novafacing Nov 13, 2023
4d29085
set install dir outside cached action
novafacing Nov 13, 2023
81d1fd5
Add upddated bill of materials including transitive dependencies
novafacing Nov 10, 2023
02998fe
Add start without buffer method
novafacing Nov 13, 2023
79683af
Fix caching and remove too-large docker scans
novafacing Nov 13, 2023
8efebb0
Fix typo in CI
novafacing Nov 13, 2023
cbdfc77
Fix typo in CI
novafacing Nov 13, 2023
bbe41e1
Remove unused ispm artifact
novafacing Nov 15, 2023
5c71fff
Add fedora build image
novafacing Nov 16, 2023
5c6fe76
Fix lint for fedora builder
novafacing Nov 16, 2023
8eacd1b
Add cargo directory to path for fedora builder
novafacing Nov 16, 2023
b7f08cc
Fix cargo directory for path
novafacing Nov 16, 2023
04f7c79
Use full path to aim
novafacing Nov 16, 2023
e52a4d4
Remove full path for aim
novafacing Nov 16, 2023
64fb652
Use checkout @v4
novafacing Nov 16, 2023
722b30e
Use node 14 to avoid linking issues with glibc version
novafacing Nov 17, 2023
d26c6ab
Fixup node 14 version
novafacing Nov 17, 2023
592203a
Move docs to book format
novafacing Nov 17, 2023
b4e71ba
Merge branch 'simics-package' of https://github.com/novafacing/tsffs …
novafacing Nov 17, 2023
71a1105
Follow redirects with curl
novafacing Nov 17, 2023
e63251d
Fix links to docs and add docs in book format
novafacing Nov 17, 2023
5749b81
Use checkout v2 to avoid glibc link issues
novafacing Nov 17, 2023
43a7030
Use checkout v1 to avoid git version issues
novafacing Nov 17, 2023
5107477
Dont use checkout action at all
novafacing Nov 17, 2023
93efd0e
Fix shellcheck
novafacing Nov 17, 2023
02fa1e4
Update documentation formatting
novafacing Nov 17, 2023
457d619
Checkout commit
novafacing Nov 17, 2023
6c5ed29
Fix clone for pull requests
novafacing Nov 17, 2023
4d60e09
Print out clone step
novafacing Nov 17, 2023
2d73cbd
Use pull requester name/repo when cloning a PR
novafacing Nov 17, 2023
9a8feab
Fix repo head name
novafacing Nov 17, 2023
9fd4db0
Use login (which is required) instead of name
novafacing Nov 17, 2023
8206fc8
Fix linter
novafacing Nov 17, 2023
9c0340a
Use ref name
novafacing Nov 17, 2023
ed94cc9
Fix sha for head
novafacing Nov 17, 2023
6756e32
Do not use shebang build script
novafacing Nov 17, 2023
1bebc41
Use Zscript
novafacing Nov 17, 2023
aa25a83
Use make built from source to comply with simics minimum supported ve…
novafacing Nov 17, 2023
9c33ded
Fix download for make source
novafacing Nov 17, 2023
81ffba8
Add clang build from source step
novafacing Nov 17, 2023
e3e01fc
Install cmake from source
novafacing Nov 17, 2023
c019c9e
Dont use arch prefix for cmake install
novafacing Nov 17, 2023
43d425c
Add c++ compiler, zlib, and libxml2
novafacing Nov 17, 2023
cc57993
Default to python3
novafacing Nov 17, 2023
85e5382
Add which
novafacing Nov 17, 2023
a983273
Use instruction after instead of instruction before
novafacing Nov 20, 2023
31a980d
Update decoder to handle indirect jumps for jump tables and syscall/i…
novafacing Nov 20, 2023
918c79c
Use after callback for coverage and before callback for cmplog
novafacing Nov 20, 2023
da6d2af
Make snapshot disable/enable flow nicer on old simics versions
novafacing Nov 20, 2023
900ef69
Support external ispm for tests
novafacing Nov 20, 2023
dc0fe45
Add fallback for libpython path when environment variable is set but …
novafacing Nov 22, 2023
28c7a58
Add documentation deployment workflow
novafacing Nov 22, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
12 changes: 10 additions & 2 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,10 @@
simics-api-sys/packages
target
config.mk
.package-list
.modcache
Dockerfile
.project-properties/
bin/
linux64/
win64/
packageinfo/
target/
1 change: 1 addition & 0 deletions .github/dependabot/2023-11-07.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
CVE,Package Name,Severity,Manifest File,Status,CVSS,CVSS Vector,Vulnerable Versions,Fixed Versions,Triaged By,Triage Reason,Triage Comment
3 changes: 3 additions & 0 deletions .github/dependabot/2023-11-07.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[

]

This file was deleted.

3 changes: 0 additions & 3 deletions .github/simics/simics-pkg-1000-6.0.169-linux64.ispm

This file was deleted.

3 changes: 0 additions & 3 deletions .github/simics/simics-pkg-2096-6.0.70-linux64.ispm

This file was deleted.

3 changes: 0 additions & 3 deletions .github/simics/simics-pkg-8112-6.0.17-linux64.ispm

This file was deleted.

935 changes: 451 additions & 484 deletions .github/workflows/ci.yml

Large diffs are not rendered by default.

51 changes: 51 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Deploy Documentation

on:
push:
branches: ["main"]

workflow_dispatch:

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: "pages"
cancel-in-progress: false

jobs:
deploy:
runs-on: ubuntu-latest

environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}

steps:
- uses: actions/checkout@v4

- uses: dtolnay/rust-toolchain@nightly

- name: Install mdBook
run: |
cargo install mdbook

- name: Build mdBook
run: |
cd docs
mdbook build

- name: Setup Pages
uses: actions/configure-pages@v3

- name: Upload artifact
uses: actions/upload-pages-artifact@v2
with:
# Upload entire repository
path: "./docs/book/"

- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2
29 changes: 25 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,8 +1,29 @@
/target
/Cargo.lock
Cargo.lock
.env
.secrets
.secret*
.mypy_cache
simics-api-sys/packages
paper
*restricted*
config.mk
.package-list
.modcache
simics*
GNUmakefile*
*~


.cargo/
.vscode/
.mypy_cache/
.project-properties/
bin/
dist-packages/
dist/
distfile-list/
doc-src/
linux64/
logs/
packageinfo/
packageinfo/
target/
win64/
1 change: 0 additions & 1 deletion .textlintignore

This file was deleted.

1 change: 0 additions & 1 deletion .vscode/.gitignore

This file was deleted.

17 changes: 0 additions & 17 deletions .vscode/settings.json

This file was deleted.

Loading