Skip to content

Commit 09e656d

Browse files
committed
updates to squash later
1 parent e4a6ffe commit 09e656d

File tree

1 file changed

+51
-11
lines changed

1 file changed

+51
-11
lines changed

.github/workflows/interop-mlkem.yml

Lines changed: 51 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,20 @@ concurrency:
1212

1313
env:
1414
wolfssl: v5.8.4-stable
15-
os: ubuntu-latest
16-
cache_key: wolfssh-mlkem-wolfssl-${{ env.wolfssl }}-${{ env.os }}
15+
openssh: V_10_2_P1
1716

1817
jobs:
1918
build_wolfssl:
20-
name: Build wolfssl
21-
runs-on: ${{ env.os }}
19+
name: Build wolfSSL
20+
runs-on: ubuntu-latest
2221
timeout-minutes: 4
2322
steps:
2423
- name: Checking cache for wolfSSL
2524
uses: actions/cache@v4
2625
id: cache-wolfssl
2726
with:
2827
path: build-dir/
29-
key: ${{ env.cache_key }}
28+
key: wolfssh-mlkem-wolfssl-${{ env.wolfssl }}b
3029
lookup-only: true
3130

3231
- name: Checkout, build, and install wolfSSL
@@ -36,27 +35,68 @@ jobs:
3635
repository: wolfSSL/wolfssl
3736
ref: ${{ env.wolfssl }}
3837
path: wolfssl
39-
configure: --enable-wolfssh --enable-mlkem --enable-curve25519 --enable-base64encode --enable-cryptonly --disable-examples --disable-crypttests
38+
configure: --enable-wolfssh --enable-mlkem --enable-ed25519 --enable-ed25519-stream --enable-curve25519 --enable-base64encode --enable-cryptonly --disable-examples --disable-crypttests
39+
check: false
40+
install: true
41+
42+
build_openssh:
43+
runs-on: ubuntu-latest
44+
timeout-minutes: 4
45+
steps:
46+
- name: Checking cache for OpenSSH
47+
uses: actions/cache@v4
48+
id: cache-openssh
49+
with:
50+
path: build-dir/
51+
key: wolfssh-mlkem-openssh-${{ env.openssh }}
52+
lookup-only: true
53+
54+
- name: Checkout, build, and install wolfSSL
55+
if: steps.cache-openssh.outputs.cache-hit != 'true'
56+
uses: wolfSSL/actions-build-autotools-project@v1
57+
with:
58+
repository: openssh/openssh-portable
59+
ref: ${{ env.openssh }}
60+
path: openssh
61+
configure:
4062
check: false
4163
install: true
4264

4365
build_wolfssh:
44-
name: Build wolfssh
45-
runs-on: ${{ env.os }}
66+
name: Build wolfSSH
67+
runs-on: ubuntu-latest
4668
timeout-minutes: 4
47-
needs: [build_wolfssl]
69+
needs: [build_wolfssl, build_openssh]
70+
env:
71+
build_dir: ${{ github.workspace }}/build-dir
4872
steps:
4973
- name: Checking cache for wolfSSL
5074
uses: actions/cache@v4
5175
with:
5276
path: build-dir/
53-
key: wolfssh-mlkem-wolfssl-${{ env.wolfssl }}-${{ env.os }}
77+
key: wolfssh-mlkem-wolfssl-${{ env.wolfssl }}b
78+
fail-on-cache-miss: true
79+
80+
- name: Checking cache for OpenSSH
81+
uses: actions/cache@v4
82+
with:
83+
path: build-dir/
84+
key: wolfssh-mlkem-openssh-${{ env.openssh }}
5485
fail-on-cache-miss: true
5586

5687
- name: Checkout, build, and test wolfSSH
5788
uses: wolfSSL/actions-build-autotools-project@v1
5889
with:
5990
repository: wolfSSL/wolfssh
6091
path: wolfssh
61-
configure: --with-wolfssl=${{ github.workspace }}/build-dir
92+
configure: --enable-debug --with-wolfssl=${{ env.build_dir }}
6293
check: true
94+
95+
- name: Run connect test
96+
working-directory: ./wolfssh/
97+
run: |
98+
mkdir -p /var/empty
99+
${{ env.build_dir }}/bin/ssh-keygen -f ~/.ssh/id_ed25519 -N "" -t ed25519
100+
cp ~/.ssh/id_ed25519.pub ~/.ssh/authorized_keys
101+
${{ env.build_dir }}/sbin/sshd -p 22222 -o KbdInteractiveAuthentication=no -o PasswordAuthentication=no -o KexAlgorithms=mlkem768x25519-sha256
102+
./examples/client/client -u root -i ~/.ssh/id_ed25519 -j ~/.ssh/id_ed25519.pub -c "ls /"

0 commit comments

Comments
 (0)