-# Makefile for web2io testing stuff
+# Makefile for rpi side server
CXX = gcc
FLAGS = -std=c99 -Wall -Werror -pedantic -g
LIB =
-OBJ = network.o log.o webserver.o
+OBJ = log.o main.o
RM = rm -f
-BIN = webserver
+BIN = server
$(BIN) : $(OBJ)
$(CXX) $(FLAGS) -o $(BIN) $(OBJ)
Fatal("Log", "Format string is NULL");
// Don't print the message unless we need to
- if (level > options.verbosity)
+ if (level > g_options.verbosity)
return;
if (funct == NULL)
}
// Print: Program name, PID, severity string, function name first
- fprintf(stderr, "%s [%d] : %s : %s - ", options.program, getpid(), severity, funct);
+ fprintf(stderr, "%s [%d] : %s : %s - ", g_options.program, getpid(), severity, funct);
// Then pass additional arguments with the format string to vfprintf for printing
va_list va;
if (funct == NULL)
funct = unspecified_funct;
- fprintf(stderr, "%s [%d] : %s : FATAL - ", options.program, getpid(), funct);
+ fprintf(stderr, "%s [%d] : %s : FATAL - ", g_options.program, getpid(), funct);
va_list va;
va_start(va, fmt);
* @purpose Entry point to the program, starts threads, handles cleanup on program exit
*/
+#define _POSIX_C_SOURCE 200809L // For strsignal to work
+
// --- Standard headers --- //
#include <stdlib.h>
#include <stdio.h>
#include <signal.h> // for signal handling
+#include <string.h> // string functions
// --- Custom headers --- //
+#include "log.h"
#include "options.h"
// --- Variable definitions --- //
*/
void ParseArguments(int argc, char ** argv, Options * opts)
{
- options.program = argv[0]; // program name
- options.verbosity = LOGDEBUG; // default log level
- if (argc > 1)
- options.port = atoi(argv[1]); // Allow us change the port for testing (I keep getting "address in use" errors)
- else
- options.port = 8080; // Using 8080 instead of 80 for now because to use 80 you have to run the program as root
-
- Log(LOGDEBUG, "ParseArguments", "Called as %s with %d arguments.", options.program, argc);
+ opts->program = argv[0]; // program name
+ opts->verbosity = LOGDEBUG; // default log level
+ Log(LOGDEBUG, "ParseArguments", "Called as %s with %d arguments.", opts->program, argc);
}
/**
}
+/**
+ * @funct main
+ * @purpose Main entry point; start worker threads, setup signal handling, wait for threads to exit, exit
+ * @param argc - Num args
+ * @param argv - Args
+ * @returns 0 on success, error code on failure
+ */
+int main(int argc, char ** argv)
+{
+ return 0;
+}
+