Skip to content

Ghidra instruction decode fails if the VLE register is available but the value is null. #2566

Ghidra instruction decode fails if the VLE register is available but the value is null.

Ghidra instruction decode fails if the VLE register is available but the value is null. #2566

Workflow file for this run

name: OFRAK CI Tests
on:
pull_request:
branches:
- master
push:
branches:
- master
schedule:
- cron: '0 0 * * *'
workflow_dispatch:
inputs:
permissions:
contents: read
defaults:
run:
shell: bash
jobs:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
lfs: true
- uses: actions/setup-python@v4
with:
python-version: '3.7'
cache: pip
cache-dependency-path: '**/setup.py'
- name: Install pre-commit
run: |
python3 -m pip install pre-commit
pre-commit install
- name: Run pre-commit
run: |
pre-commit run --all-files
- name: Install frontend linting dependencies
run: |
cd frontend
npm install
sudo apt-get install shellcheck
python3 -m pip install black==23.3.0
- name: Lint frontend
run: |
cd frontend
make check
ofrak-ghidra:
name: Test main OFRAK components
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
lfs: true
- uses: actions/setup-python@v4
with:
python-version: '3.7'
cache: pip
cache-dependency-path: '**/setup.py'
- name: Build Ghidra image
run: |
python3 -m pip install PyYAML
DOCKER_BUILDKIT=1 \
python3 build_image.py \
--config ofrak-ghidra.yml \
--base \
--finish \
--cache-from redballoonsecurity/ofrak/core-dev-base:latest
- name: Test documentation
run: |
docker run \
--interactive \
--rm \
--entrypoint bash \
--volume "$(pwd)":/ofrak \
redballoonsecurity/ofrak/ghidra:latest \
-c "cd /ofrak \
&& mkdocs build --site-dir /tmp/docs"
- name: Test components
run: |
docker run \
--interactive \
--rm \
--entrypoint bash \
redballoonsecurity/ofrak/ghidra:latest \
-c "python -m ofrak_ghidra.server start \
&& ofrak license --community --i-agree \
&& make test"
ofrak-angr:
name: Test OFRAK angr and capstone components
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
lfs: true
- uses: actions/setup-python@v4
with:
python-version: '3.7'
cache: pip
cache-dependency-path: '**/setup.py'
- name: Build angr image
run: |
python3 -m pip install PyYAML
DOCKER_BUILDKIT=1 \
python3 build_image.py \
--config ofrak-angr.yml \
--base \
--finish \
--cache-from redballoonsecurity/ofrak/core-dev-base:latest
- name: Test components
run: |
docker run \
--interactive \
--rm \
--entrypoint bash \
--volume "$(pwd)":/ofrak \
redballoonsecurity/ofrak/angr:latest \
-c "ofrak license --community --i-agree \
&& make -C /ofrak_angr test \
&& make -C /ofrak_capstone test"
ofrak-tutorial:
name: Test OFRAK examples and tutorial notebooks
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
lfs: true
- uses: actions/setup-python@v4
with:
python-version: '3.7'
cache: pip
cache-dependency-path: '**/setup.py'
- name: Build tutorial image
run: |
python3 -m pip install PyYAML
DOCKER_BUILDKIT=1 \
python3 build_image.py \
--config ofrak-tutorial.yml \
--base \
--finish \
--cache-from redballoonsecurity/ofrak/core-dev-base:latest
- name: Test tutorials
run: |
docker run \
--interactive \
--rm \
--entrypoint bash \
redballoonsecurity/ofrak/tutorial:latest \
-c "python -m ofrak_ghidra.server start \
&& ofrak license --community --i-agree \
&& make -C /examples test \
&& make -C /ofrak_tutorial test"