Skip to content

Merge pull request #19 from d-dot123/master #35

Merge pull request #19 from d-dot123/master

Merge pull request #19 from d-dot123/master #35

Workflow file for this run

name: Run
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
run:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Run apt update
run: sudo apt update
- name: Install LibELF
run: sudo apt install -y libelf-dev
- name: Install LibConfig
run: sudo apt install -y libconfig-dev
- name: Install LLVM
run: sudo apt install -y llvm
- name: Install LibXDP Depedencies
run: sudo apt install -y libpcap-dev m4 gcc-multilib linux-tools-$(uname -r)
- name: Build LibXDP.
run: make libxdp
- name: Install LibXDP.
run: sudo make libxdp_install
- name: Make project
run: make
- name: Install project
run: sudo make install
- name: Create basic config file.
run: echo 'verbose = 5; rules = ( { enabled = true; log = true; protocol = "tcp"; bind_ip = "10.1.0.2"; bind_port = 40; dst_ip = "10.1.0.3"; dst_port = 22; } );' > ./basic.conf
- name: Retrieve default network interface
run: echo "INTERFACE=$(ip route | awk '/default/ {print $5}')" >> $GITHUB_ENV
- name: Run XDP Proxy for 10 seconds using basic config and default network interface.
run: sudo xdpfwd -c ./basic.conf -t 10 -i ${{ env.INTERFACE }}