From c291ad1ec618a53afc686e788494caf74bef62f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9ophile=20Bastian?= Date: Sun, 20 Nov 2016 00:16:13 +0100 Subject: [PATCH] Add Makefile, basic main --- Makefile | 17 +++++++++++++++++ main.cpp | 34 +++++++++++++++++++++++++++++++--- 2 files changed, 48 insertions(+), 3 deletions(-) create mode 100644 Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..61d6259 --- /dev/null +++ b/Makefile @@ -0,0 +1,17 @@ +CXX=g++ +CXXFLAGS=-Wall -Wextra -Werror -pedantic -std=c++14 -O2 +CXXLIBS=-lpthread + +OBJS = Bytes.o main.o protocol.o +TARGET = jeanhubert + +all: $(TARGET) + +$(TARGET): $(OBJS) + $(CXX) $(CXXLIBS) $(CXXFLAGS) $^ -o $@ + +%.o: %.cpp + $(CXX) $(CXXFLAGS) -c $< -o $@ + +clean: + rm -rf $(OBJS) $(TARGET) diff --git a/main.cpp b/main.cpp index be9bae1..98e9549 100644 --- a/main.cpp +++ b/main.cpp @@ -4,10 +4,38 @@ * License: WTFPL v2 **************************************************************************/ -#include "nw_constants.h" #include "data.h" +#include "protocol.h" +#include "nw_constants.h" +#include +#include +#include -int main(int argc, char** argv) { - //TODO read arguments +int main(int /*argc*/, char** /*argv*/) { + srand(time(NULL)+42); + + SockAddr addr; + memset(&addr, 0, sizeof(addr)); + addr.sin6_family = AF_INET6; + addr.sin6_port = csts::DEFAULT_PORT; + + u64 myId=0; + for(int i=0; i < 8; i++) { + myId <<= 8; + myId += rand() % (1<<8); + } + + SockAddr jch_addr; + memset(&jch_addr, 0, sizeof(jch_addr)); + jch_addr.sin6_family = AF_INET6; + jch_addr.sin6_port = csts::DEFAULT_PORT; + if(inet_pton(AF_INET6, "::ffff::81.194.27.155", &jch_addr.sin6_addr)) { + perror("Cannot convert JCh address"); + exit(1); + } + + Protocol proto(addr, myId); + proto.sendEmpty(jch_addr); + return 0; }