summaryrefslogtreecommitdiff
path: root/src/biruda.c
diff options
context:
space:
mode:
authorAndreas Baumann <abaumann@yahoo.com>2014-11-14 09:37:22 +0100
committerAndreas Baumann <abaumann@yahoo.com>2014-11-14 09:37:22 +0100
commit8db8f32cec78eed65dd06be6ca6a8ff775f35682 (patch)
tree038014bc96d549c9511516a0b2a1ac39b1782dbd /src/biruda.c
parent97265e0f6a8165159a6e3cef5623db29632e3bc8 (diff)
downloadbiruda-8db8f32cec78eed65dd06be6ca6a8ff775f35682.tar.gz
biruda-8db8f32cec78eed65dd06be6ca6a8ff775f35682.tar.bz2
fixed on Windows
Diffstat (limited to 'src/biruda.c')
-rw-r--r--src/biruda.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/src/biruda.c b/src/biruda.c
index ae6d614..ccd17f1 100644
--- a/src/biruda.c
+++ b/src/biruda.c
@@ -19,7 +19,9 @@
#include "master.h"
#include "worker.h"
#include "coordinator.h"
+#ifndef _WIN32
#include "webserver.h"
+#endif
#include "port.h"
@@ -65,19 +67,23 @@ static int read_config( const char *filename, cfg_t **cfg )
CFG_STR( "control", 0, CFGF_NODEFAULT ),
CFG_END( )
};
-
+
+#ifndef _WIN32
cfg_opt_t opts_webserver[] = {
CFG_STR( "host", (char *)DEFAULT_WEBSERVER_HOST, CFGF_NONE ),
CFG_INT( "port", DEFAULT_WEBSERVER_PORT, CFGF_NONE ),
CFG_INT( "threads", DEFAULT_WEBSERVER_THREADS, CFGF_NONE ),
CFG_END( )
};
+#endif
cfg_opt_t opts[] = {
CFG_SEC( "master", opts_master, CFGF_MULTI ),
CFG_SEC( "coordinator", opts_coordinator, CFGF_MULTI ),
CFG_SEC( "worker", opts_worker, CFGF_MULTI | CFGF_TITLE ),
+#ifndef _WIN32
CFG_SEC( "webserver", opts_webserver, CFGF_MULTI ),
+#endif
CFG_END( )
};
@@ -128,7 +134,8 @@ static void print_config( struct gengetopt_args_info *args_info, cfg_t *cfg )
}
puts( "" );
}
-
+
+#ifndef _WIN32
cfg_t *webserver_cfg = cfg_getnsec( cfg, "webserver", 0 );
unsigned int has_webserver = cfg_size( cfg, "webserver" );
if( has_webserver > 0 ) {
@@ -138,6 +145,7 @@ static void print_config( struct gengetopt_args_info *args_info, cfg_t *cfg )
printf( " Number of threads: %ld\n", cfg_getint( webserver_cfg, "threads" ) );
puts( "" );
}
+#endif
}
static int create_master( cfg_t *cfg )
@@ -156,6 +164,7 @@ static int create_coordinator( cfg_t *cfg )
return coordinator_init( control );
}
+#ifndef _WIN32
static int create_webserver( cfg_t *cfg )
{
cfg_t *webserver_cfg = cfg_getnsec( cfg, "webserver", 0 );
@@ -163,6 +172,7 @@ static int create_webserver( cfg_t *cfg )
return webserver_init( port );
}
+#endif
static volatile int got_terminate = 0;
@@ -237,6 +247,7 @@ int main( int argc, char *argv[] )
}
}
+#ifndef _WIN32
unsigned int has_webserver = cfg_size( cfg, "webserver" );
if( has_webserver ) {
if( create_webserver( cfg ) != 0 ) {
@@ -246,6 +257,7 @@ int main( int argc, char *argv[] )
exit( EXIT_FAILURE );
}
}
+#endif
if( args_info.foreground_given ) {
#ifdef _WIN32
@@ -266,9 +278,11 @@ int main( int argc, char *argv[] )
}
}
+#ifndef _WIN32
if( has_webserver ) {
webserver_terminate( );
}
+#endif
if( has_coordinator ) {
coordinator_terminate( );
}
@@ -282,9 +296,11 @@ int main( int argc, char *argv[] )
if( has_master ) {
master_free( );
}
+#ifndef _WIN32
if( has_webserver ) {
webserver_free( );
}
+#endif
cfg_free( cfg );
cmdline_parser_free( &args_info );