From be425450341b838825b97ce3b85a0a665196e80a Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Sun, 24 Feb 2019 15:51:35 +0100 Subject: [PATCH] challenge: compile kp program inside alpine to avoid linking to glibc --- Makefile | 5 +---- challenge.yml | 5 +---- pkg/challenge/Dockerfile | 8 +++++++- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Makefile b/Makefile index 99737ad..4fc9c1c 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -all: login-app/login-app token-validator/token-validator pkg/challenge/kp +all: login-app/login-app token-validator/token-validator fonts: fonts/Inconsolata-16b.psf fonts/Inconsolata-16r.psf fonts/Inconsolata-32b.psf fonts/Inconsolata-32r.psf fonts/Inconsolata-16b.psf: @@ -10,9 +10,6 @@ fonts/Inconsolata-32b.psf: fonts/Inconsolata-32r.psf: wget https://github.com/xeechou/Inconsolata-psf/raw/master/Inconsolata-32r.psf -pkg/challenge/kp: pkg/challenge/kp.c - gcc -o $@ $+ - token-validator/token-validator: token-validator/*.go go generate ./token-validator GOOS=linux GOARM=5 GOARCH=arm go build -tags netgo -ldflags '-w -extldflags "-static"' -o $@ ./token-validator diff --git a/challenge.yml b/challenge.yml index ebd9c97..936dc2a 100644 --- a/challenge.yml +++ b/challenge.yml @@ -1,5 +1,5 @@ init: - - nemunaire/challenge:e0d9663aba0794fb455be9844eed30793d4fb9fb-dirty + - nemunaire/challenge:6eb16abb6c584ad6a82b9518968014d145decd38 files: - path: etc/motd @@ -34,9 +34,6 @@ files: - path: bin/adlin source: pkg/challenge/adlin mode: "0755" - - path: usr/bin/init-crypto - source: pkg/challenge/kp - mode: "0755" - path: etc/issue source: pkg/challenge/issue mode: "0644" diff --git a/pkg/challenge/Dockerfile b/pkg/challenge/Dockerfile index 6c3252f..45f98e0 100644 --- a/pkg/challenge/Dockerfile +++ b/pkg/challenge/Dockerfile @@ -5,7 +5,10 @@ RUN mkdir -p /out/etc/apk/ && \ cp -r /etc/apk/keys /out/etc/apk/keys RUN apk add --no-cache \ - mdocml-apropos + gcc \ + linux-headers \ + mdocml-apropos \ + musl-dev RUN apk add --no-cache --initdb -p /out \ alpine-baselayout \ @@ -53,6 +56,9 @@ RUN makewhatis /out/usr/share/man RUN rm -rf /out/etc/inittab +COPY kp.c /root/kp.c +RUN gcc -o /out/usr/bin/init-crypto /root/kp.c + FROM scratch