- while (1){
- static struct option long_options[] =
- {
- {"heartbeat", required_argument, 0, 'h'},
- {"minimum", required_argument, 0, 'i'},
- {"maximum", required_argument, 0, 'a'},
- {"data-source-type", required_argument, 0, 'd'},
- {"data-source-rename", required_argument, 0, 'r'},
- /* added parameter tuning options for aberrant behavior detection */
- {"deltapos",required_argument,0,'p'},
- {"deltaneg",required_argument,0,'n'},
- {"window-length",required_argument,0,'w'},
- {"failure-threshold",required_argument,0,'f'},
- {"alpha",required_argument,0,'x'},
- {"beta",required_argument,0,'y'},
- {"gamma",required_argument,0,'z'},
- {"gamma-deviation",required_argument,0,'v'},
- {"aberrant-reset",required_argument,0,'b'},
- {0,0,0,0}
- };
- int option_index = 0;
- int opt;
- opt = getopt_long(argc, argv, "h:i:a:d:r:p:n:w:f:x:y:z:v:b:",
- long_options, &option_index);
- if (opt == EOF)
- break;
-
- optcnt++;
- switch(opt) {
- case 'h':
- if ((matches = sscanf(optarg, DS_NAM_FMT ":%ld",ds_nam,&heartbeat)) != 2){
- rrd_set_error("invalid arguments for heartbeat");
- rrd_free(&rrd);
- close(rrd_file->fd);
- return -1;
- }
- if ((ds=ds_match(&rrd,ds_nam))==-1){
- rrd_free(&rrd);
- close(rrd_file->fd);
- return -1;
- }
- rrd.ds_def[ds].par[DS_mrhb_cnt].u_cnt = heartbeat;
- break;
+ while (1) {
+ static struct option long_options[] = {
+ {"heartbeat", required_argument, 0, 'h'},
+ {"minimum", required_argument, 0, 'i'},
+ {"maximum", required_argument, 0, 'a'},
+ {"data-source-type", required_argument, 0, 'd'},
+ {"data-source-rename", required_argument, 0, 'r'},
+ /* added parameter tuning options for aberrant behavior detection */
+ {"deltapos", required_argument, 0, 'p'},
+ {"deltaneg", required_argument, 0, 'n'},
+ {"window-length", required_argument, 0, 'w'},
+ {"failure-threshold", required_argument, 0, 'f'},
+ {"alpha", required_argument, 0, 'x'},
+ {"beta", required_argument, 0, 'y'},
+ {"gamma", required_argument, 0, 'z'},
+ {"gamma-deviation", required_argument, 0, 'v'},
+ {"aberrant-reset", required_argument, 0, 'b'},
+ {0, 0, 0, 0}
+ };
+ int option_index = 0;
+ int opt;
+
+ opt = getopt_long(argc, argv, "h:i:a:d:r:p:n:w:f:x:y:z:v:b:",
+ long_options, &option_index);
+ if (opt == EOF)
+ break;
+
+ optcnt++;
+ switch (opt) {
+ case 'h':
+ if ((matches =
+ sscanf(optarg, DS_NAM_FMT ":%ld", ds_nam,
+ &heartbeat)) != 2) {
+ rrd_set_error("invalid arguments for heartbeat");
+ rrd_free(&rrd);
+ rrd_close(rrd_file);
+ return -1;
+ }
+ if ((ds = ds_match(&rrd, ds_nam)) == -1) {
+ rrd_free(&rrd);
+ rrd_close(rrd_file);
+ return -1;
+ }
+ rrd.ds_def[ds].par[DS_mrhb_cnt].u_cnt = heartbeat;
+ break;
+
+ case 'i':
+ if ((matches =
+ sscanf(optarg, DS_NAM_FMT ":%lf", ds_nam, &min)) < 1) {
+ rrd_set_error("invalid arguments for minimum ds value");
+ rrd_free(&rrd);
+ rrd_close(rrd_file);
+ return -1;
+ }
+ if ((ds = ds_match(&rrd, ds_nam)) == -1) {
+ rrd_free(&rrd);
+ rrd_close(rrd_file);
+ return -1;
+ }