X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=server%2Foptions.h;h=88496cc7a919d3bd6a369bc0164d0edb66b40060;hb=a671f27ecb900f91bf32b8b13edb678009e319c1;hp=66cad6c67d8e7b8f6c5613652d7105025cfc0a8a;hpb=b1a8334f97f84e10ee9cef96377bbdcfbf5f945c;p=matches%2FMCTX3420.git diff --git a/server/options.h b/server/options.h index 66cad6c..88496cc 100644 --- a/server/options.h +++ b/server/options.h @@ -1,18 +1,41 @@ /** * @file options.h - * @purpose Declaration of structure to handle options passed to program + * @brief Define the Options structure and the g_options variable */ #ifndef _OPTIONS_H #define _OPTIONS_H + +/** Store options passed or calculated from arguments to the program **/ typedef struct { - const char * program; //name of program - int verbosity; // verbosity level + /** Name of program **/ + const char * program; + /** Determines at what level log messages are shown **/ + int verbosity; + /** Time at which program begins to run **/ + struct timespec start_time; + /** Time at which program exits **/ + struct timespec end_time; + + /** Whether or not to enable the pin_test module **/ + bool enable_pin; + + /** URI for authentication **/ + const char * auth_uri; + + /** Additional options for authentication (to be parsed in Login_Handler) **/ + const char * auth_options; + + /** Authentication method **/ + enum {AUTH_NONE, AUTH_LDAP, AUTH_SHADOW, AUTH_MYSQL} auth_method; + /** Experiments directory **/ + const char *experiment_dir; } Options; -extern Options g_options; // global options structure +/** The only instance of the Options struct **/ +extern Options g_options; #endif //_OPTIONS_H