     #include <ctype.h>
     #include <stdio.h>
     #include <stdlib.h>
     #include <unistd.h>
     
#define SYSCONFDIR /tmp/whatever/bla
char *cvalue;
char *dvalue;
char *evalue;

     int
     main (int argc, char **argv)
     {
       int flag_h = 0;
       int flag_a = 0;
       int flag_s = 0;
       int flag_1 = 0;
       int flag_2 = 0;
       int flag_3 = 0;
       int flag_c = 0;

       //strcpy(cvalue, SYSCONFDIR); //set equal to define value
	//strcat(cvalue, "/lsnet.conf");
       int index;
       int c;
     
       opterr = 0;
     
       while ((c = getopt (argc, argv, "has123c:")) != -1)
         switch (c)
           {
           case 'h':
             flag_h = 1;
             break;
           case 'a':
             flag_a = 1;
             break;
           case 's':
             flag_s = 1;
             break;
           case '1':
             flag_1 = 1;
             break;
           case '2':
             flag_2 = 1;
             break;
           case '3':
             flag_3 = 1;
             break;
           case 'c':
             cvalue = optarg;
             break;
           case '?':
             if (optopt == 'c')
               fprintf (stderr, "Option -%c requires an argument.\n", optopt);
             else if (isprint (optopt))
               fprintf (stderr, "Unknown option `-%c'.\n", optopt);
             else
               fprintf (stderr,
                        "Unknown option character `\\x%x'.\n",
                        optopt);
             return 1;
           default:
             abort ();
           }

        while(optind) {
                title();
                usage();
                printf("\nError: No run options specified!\n\n");
                exit(1);
        }
     
       printf ("hflag = %d, aflag = %d, sflag = %d, flag1 = %d, flag2 = %d, flag3 = %d, cvalue = %s\n",
               flag_h, flag_a, flag_s, flag_1, flag_2, flag_3, cvalue);
     
	if(optind < argc){
		printf("Error:\n");
		for (index = optind; index < argc; index++)
			printf ("Non-option argument %s\n", argv[index]);
	       exit(0);
	}

	if(flag_h){
		printf ("h flag set\n");
		title();
		usage();
		exit(1);	
	}

        if(flag_s){
        
        }

        if(!flag_c){   
             //set default global config char
		strcpy(cvalue, SYSCONFDIR); //set equal to define value
		strcat(cvalue, "/lsnet.conf");
	  
        }



	if(flag_a){
		clockskew();
		cpulock();
		memlock();
		netlock();
                runall(cores, cpufrequency, cpuarray1, minutearray, minutearray2, walltime, 
                       memfrequency, memarray1, memarray2, memtenarray2, netfrequency, netarray1, netarray2);
		exit(1);

	}else{
		title();
		clockskew();
		if(flag_1){
                                cpulock();
                                pid = fork();
                                if (pid == 0)
                                        cputenminute(cores, cpufrequency, cpuarray1, minutearray, minutearray2, walltime);
                                else
                                printf("\n\n\tCpu Daemon Started.\n");
                                //exit(1);  

		}
		if(flag_2){
                                memlock();
                                pid = fork();
                                if (pid == 0)
                                        memtenminute(memfrequency, memarray1, memarray2, memtenarray2);
                                else
                                printf("\n\n\tMem Daemon Started.\n");
                                //exit(1);

		}
		if(flag_3){
                                netlock();
                                pid = fork();
                                if (pid == 0)
                                        netenminute(netfrequency, netarray1, netarray2);
                                else
                                printf("\n\n\tNet Daemon Started.\n");
                                //exit(1);

		}
		exit(1);
	}



	return 0;
     }

