Skip to content

Commit 7f91ed6

Browse files
committed
openssh: Fix build.sh to use upstream Makefile for building
Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>
1 parent efcf6c5 commit 7f91ed6

File tree

1 file changed

+15
-48
lines changed

1 file changed

+15
-48
lines changed

projects/openssh/build.sh

Lines changed: 15 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ sed -i 's|\(usleep.*\)|// \1|' ssh-agent.c
2323

2424
# Build project
2525
autoreconf
26-
env
2726
if ! env CFLAGS="" ./configure \
2827
--without-hardening \
2928
--without-zlib-version-check \
@@ -37,52 +36,20 @@ if ! env CFLAGS="" ./configure \
3736
fi
3837
make -j$(nproc) all
3938

40-
# Build fuzzers
41-
EXTRA_CFLAGS="-DCIPHER_NONE_AVAIL=1 -D_GNU_SOURCE -Iopenbsd-compat/include"
42-
STATIC_CRYPTO="-Wl,-Bstatic -lcrypto -Wl,-Bdynamic"
43-
44-
SK_NULL=ssh-sk-null.o
45-
SK_DUMMY=sk-dummy.o
46-
COMMON_DEPS="ssh-pkcs11-client.o -lssh -lopenbsd-compat"
47-
48-
$CC $CFLAGS $EXTRA_CFLAGS -I. -g -c \
49-
regress/misc/fuzz-harness/ssh-sk-null.cc -o ssh-sk-null.o
50-
$CC $CFLAGS $EXTRA_CFLAGS -I. -g -c \
51-
-DSK_DUMMY_INTEGRATE=1 regress/misc/sk-dummy/sk-dummy.c -o sk-dummy.o
52-
53-
$CXX $CXXFLAGS -std=c++11 $EXTRA_CFLAGS -I. -L. -Lopenbsd-compat -g \
54-
regress/misc/fuzz-harness/pubkey_fuzz.cc -o $OUT/pubkey_fuzz \
55-
$COMMON_DEPS $SK_NULL $STATIC_CRYPTO $LIB_FUZZING_ENGINE
56-
$CXX $CXXFLAGS -std=c++11 $EXTRA_CFLAGS -I. -L. -Lopenbsd-compat -g \
57-
regress/misc/fuzz-harness/privkey_fuzz.cc -o $OUT/privkey_fuzz \
58-
$COMMON_DEPS $SK_NULL $STATIC_CRYPTO $LIB_FUZZING_ENGINE
59-
$CXX $CXXFLAGS -std=c++11 $EXTRA_CFLAGS -I. -L. -Lopenbsd-compat -g \
60-
regress/misc/fuzz-harness/sig_fuzz.cc -o $OUT/sig_fuzz \
61-
$COMMON_DEPS $SK_NULL $STATIC_CRYPTO $LIB_FUZZING_ENGINE
62-
$CXX $CXXFLAGS -std=c++11 $EXTRA_CFLAGS -I. -L. -Lopenbsd-compat -g \
63-
regress/misc/fuzz-harness/authopt_fuzz.cc -o $OUT/authopt_fuzz \
64-
auth-options.o $COMMON_DEPS $SK_NULL $STATIC_CRYPTO \
65-
$LIB_FUZZING_ENGINE
66-
$CXX $CXXFLAGS -std=c++11 $EXTRA_CFLAGS -I. -L. -Lopenbsd-compat -g \
67-
regress/misc/fuzz-harness/sshsig_fuzz.cc -o $OUT/sshsig_fuzz \
68-
sshsig.o $COMMON_DEPS $SK_NULL $STATIC_CRYPTO \
69-
$LIB_FUZZING_ENGINE
70-
$CXX $CXXFLAGS -std=c++11 $EXTRA_CFLAGS -I. -L. -Lopenbsd-compat -g \
71-
regress/misc/fuzz-harness/sshsigopt_fuzz.cc -o $OUT/sshsigopt_fuzz \
72-
sshsig.o $COMMON_DEPS $SK_NULL $STATIC_CRYPTO \
73-
$LIB_FUZZING_ENGINE
74-
$CXX $CXXFLAGS -std=c++11 $EXTRA_CFLAGS -I. -L. -Lopenbsd-compat -g \
75-
regress/misc/fuzz-harness/kex_fuzz.cc -o $OUT/kex_fuzz \
76-
$COMMON_DEPS -lz $SK_NULL $STATIC_CRYPTO \
77-
$LIB_FUZZING_ENGINE
78-
79-
$CC $CFLAGS $EXTRA_CFLAGS -I. -g -c \
80-
regress/misc/fuzz-harness/agent_fuzz_helper.c -o agent_fuzz_helper.o
81-
$CC $CFLAGS $EXTRA_CFLAGS -I. -g -c -DENABLE_SK_INTERNAL=1 ssh-sk.c -o ssh-sk.o
82-
$CXX $CXXFLAGS -std=c++11 $EXTRA_CFLAGS -I. -L. -Lopenbsd-compat -g \
83-
regress/misc/fuzz-harness/agent_fuzz.cc -o $OUT/agent_fuzz \
84-
$SK_DUMMY agent_fuzz_helper.o ssh-sk.o $COMMON_DEPS -lz \
85-
$STATIC_CRYPTO $LIB_FUZZING_ENGINE
39+
# Build fuzzers using upstream Makefile
40+
FUZZER_TARGETS=$(cd regress/misc/fuzz-harness && ls *_fuzz.cc 2>/dev/null | grep -v sntrup761 | sed 's/\.cc$//' | tr '\n' ' ')
41+
make -C regress/misc/fuzz-harness $FUZZER_TARGETS \
42+
CC="$CC" \
43+
CXX="$CXX" \
44+
CFLAGS="-D_GNU_SOURCE=1 -DCIPHER_NONE_AVAIL=1 -I ../../.. -I ../../../openbsd-compat/include $CFLAGS" \
45+
CXXFLAGS="-D_GNU_SOURCE=1 -DCIPHER_NONE_AVAIL=1 -I ../../.. -I ../../../openbsd-compat/include $CXXFLAGS" \
46+
FUZZ_FLAGS="$CXXFLAGS" \
47+
FUZZ_LIBS="$LIB_FUZZING_ENGINE" \
48+
COMMON_OBJS="../../../ssh-pkcs11-client.o" \
49+
LIBS="../../../ssh-pkcs11-client.o -lssh -lopenbsd-compat -Wl,-Bstatic -lcrypto -Wl,-Bdynamic \$(FUZZ_LIBS)"
50+
51+
# Copy all fuzzers to output directory
52+
cp regress/misc/fuzz-harness/*_fuzz $OUT/
8653

8754
# Prepare seed corpora
8855
CASES="$SRC/openssh-fuzz-cases"
@@ -93,4 +60,4 @@ CASES="$SRC/openssh-fuzz-cases"
9360
(set -e ; cd ${CASES}/sshsig ; zip -r $OUT/sshsig_fuzz_seed_corpus.zip .)
9461
(set -e ; cd ${CASES}/sshsigopt ; zip -r $OUT/sshsigopt_fuzz_seed_corpus.zip .)
9562
(set -e ; cd ${CASES}/kex ; zip -r $OUT/kex_fuzz_seed_corpus.zip .)
96-
(set -e ; cd ${CASES}/agent ; zip -r $OUT/agent_fuzz_seed_corpus.zip .)
63+
(set -e ; cd ${CASES}/agent ; zip -r $OUT/agent_fuzz_seed_corpus.zip .)

0 commit comments

Comments
 (0)