now using Makefile

This commit is contained in:
socec 2014-03-09 15:59:30 +01:00
parent 9c6269218e
commit cbedf6189a
6 changed files with 48 additions and 18 deletions

42
Makefile Normal file
View file

@ -0,0 +1,42 @@
# target name
TARGET = moxerver
# special include directiories
INCDIRS = -I.
# special library directories
LIBDIRS = -L
# used libraries
#LIBS = -lm
LIBS = -l
# compiler and flags
CC = gcc
CFLAGS = -Wall $(INCDIRS) $(LIBDIRS)
# objects are .o files created from all .c files in the directory (same name)
OBJECTS = $(patsubst %.c,%.o,$(wildcard *.c))
# headers are all .h files in the directory
HEADERS = $(wildcard *.h)
# all objects are built from their .c files and all headers in the directory
%.o: %.c $(HEADERS)
$(CC) $(CFLAGS) $(LIBS) -c $< -o $@
# target is built from all object files
$(TARGET): $(OBJECTS)
$(CC) $(CFLAGS) $(LIBS) $(OBJECTS) -o $@
# support for default, clean and all options
.PHONY: default all clean
# all calls all other options
all: default clean
# default builds target
default: $(TARGET)
# clean removec object files and target
clean:
-rm -f *.o
-rm -f $(TARGET)

View file

@ -1,12 +0,0 @@
#!/bin/bash
# Builds MoxaNix project
#TODO switch to Makefile :)
name="moxerver"
include_dir="."
src_list="$name.c server.c client.c tty.c telnet.c"
gcc $src_list -o $name -I $include_dir

View file

@ -52,7 +52,7 @@ int client_write(struct client_t *client, char *databuf, int datalen) {
//TODO let's print received bytes during development phase...
{
int i;
for(i = 0; i < len; i++) {
for(i = 0; i < datalen; i++) {
fprintf(stderr, "client %s -> %u '%c'\n",
client->ip_string,
(unsigned char) databuf[i],

View file

@ -1,5 +1,4 @@
#include "moxerver.h"
#include <unistd.h> /* getopt() */
#define SERVER_WAIT_TIMEOUT 10 /* seconds for select() timeout in server loop */

View file

@ -1,5 +1,6 @@
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <errno.h>
#include <sys/types.h>

View file

@ -41,7 +41,7 @@ int server_setup(struct server_t *server, unsigned int port) {
/* check port assignment */
namelen = sizeof(server->address);
if (getsockname(server->socket, (struct sockaddr *) &server->address, &namelen) == -1) {
if (getsockname(server->socket, (struct sockaddr *) &server->address, (socklen_t *) &namelen) == -1) {
fprintf(stderr, "[%s:%d] error %d: %s\n", __func__, __LINE__, errno, strerror(errno));
return -errno;
}
@ -80,7 +80,7 @@ int server_accept(struct server_t *server, struct client_t *accepted_client) {
/* accept connection request */
namelen = sizeof(accepted_client->address);
accepted_client->socket = accept(server->socket, (struct sockaddr *) &accepted_client->address, &namelen);
accepted_client->socket = accept(server->socket, (struct sockaddr *) &accepted_client->address, (socklen_t *) &namelen);
if (accepted_client->socket == -1) {
fprintf(stderr, "[%s:%d] error %d: %s\n", __func__, __LINE__, errno, strerror(errno));
return -errno;
@ -106,13 +106,13 @@ int server_reject(struct server_t *server) {
/* accept connection request */
namelen = sizeof(rclient.address);
rclient.socket = accept(server->socket, (struct sockaddr *) &rclient.address, &namelen);
rclient.socket = accept(server->socket, (struct sockaddr *) &rclient.address, (socklen_t *) &namelen);
/* send reject message */
sprintf(reject_msg, "[%s]: port %u is already being used\n", __func__, server->port);
send(rclient.socket, reject_msg, strlen(reject_msg), 0);
/* close connection */
close(rclient.socket);
fprintf(stderr, "[%s]: rejected new client request, there is alredy a client connected\n", __func__, server->port);
fprintf(stderr, "[%s]: rejected new client request, there is alredy a client connected\n", __func__);
return 0;
}