diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..79ce48c --- /dev/null +++ b/Dockerfile @@ -0,0 +1,19 @@ +FROM debian:12 AS guinnessd-base +RUN apt-get update && \ + apt-get upgrade -y && \ + apt-get install -y make gcc && \ + useradd -m -d /home/guinness -s /bin/false -r guinness + +FROM guinnessd-base +COPY . /home/guinness/src +WORKDIR /home/guinness +RUN make -C /home/guinness/src && \ + mv /home/guinness/src/guinnessd /usr/local/bin && \ + mv /home/guinness/src/picoles /usr/local/share && \ + chmod +x /usr/local/bin/guinnessd && \ + rm -Rf /home/guinness/src && \ + apt-get remove -y make gcc && \ + apt-get autoremove -y + + + diff --git a/Makefile b/Makefile index c023697..80e18df 100644 --- a/Makefile +++ b/Makefile @@ -11,7 +11,7 @@ all: guinness guinnessd H_DEP = broadcast.h commands.h defines.h guinnessd.h printlog.h \ xmem.h clients.h config.h drinks.h lists.h tools.h -COPT = -Wall -g +COPT = -fPIE -Wno-error -g D_OBJS = xmem.o broadcast.o printlog.o lists.o tools.o drinks.o \ commands.o clients.o diff --git a/Makefile.docker b/Makefile.docker new file mode 100644 index 0000000..71732f3 --- /dev/null +++ b/Makefile.docker @@ -0,0 +1,4 @@ +.PHONY: build + +build: + docker build -t guinnessd:latest . diff --git a/broadcast.c b/broadcast.c index f9438bd..ba59048 100644 --- a/broadcast.c +++ b/broadcast.c @@ -26,6 +26,7 @@ #include "broadcast.h" #include "drinks.h" +pthread_mutex_t mutex_broadcast; extern Elt *clients_list; extern FILE *outerr; diff --git a/guinnessd.c b/guinnessd.c index 9e46505..01a6df1 100644 --- a/guinnessd.c +++ b/guinnessd.c @@ -32,6 +32,8 @@ #include "commands.h" #include "config.h" +pthread_mutex_t mutex_clients; + /* Config specifique serveur */ char *adr_ip = NULL; int port = 0; diff --git a/guinnessd.h b/guinnessd.h index 2e16126..841b9b3 100644 --- a/guinnessd.h +++ b/guinnessd.h @@ -30,8 +30,8 @@ typedef struct userinfos { } userinfos; -pthread_mutex_t mutex_broadcast; -pthread_mutex_t mutex_clients; +extern pthread_mutex_t mutex_broadcast; +extern pthread_mutex_t mutex_clients; #endif diff --git a/picoles/steinlager b/picoles/steinlager new file mode 100644 index 0000000..599178c --- /dev/null +++ b/picoles/steinlager @@ -0,0 +1,22 @@ + .sssssssss. + .sssssssssssssssssss + sssssssssssssssssssssssss + ssssssssssssssssssssssssssss + @@sssssssssssssssssssssss@ss + |s@@@@sssssssssssssss@@@@s|s + _______|sssss@@@@@sssss@@@@@sssss|s + / sssssssss@sssss@sssssssss|s + / .------+.ssssssss@sssss@ssssssss.| + / / |...sssssss@sss@sssssss...| + | | |.......sss@sss@ssss......| + | | |..........s@ss@sss.......| + | | |...........@ss@..........| + \ \ |............ss@..........| + \ '------+...........ss@...........| + \________ .........................| + |.........................| + /...........................\ + |.............................| + |.......................| + |...............| +