X-Git-Url: https://git.octo.it/?p=collectd.git;a=blobdiff_plain;f=src%2Fconfigfile.h;h=92c09de33c0b0a8a51d76bef4385c9c5e06bbece;hp=e63a0ea047533257bde40be867bc0394060a884f;hb=633c3966f770e4d46651a2fe219a18d8a9907a9f;hpb=488c2ca9e3f6f6082f192bdd5d737c6cd1298ba2 diff --git a/src/configfile.h b/src/configfile.h index e63a0ea0..92c09de3 100644 --- a/src/configfile.h +++ b/src/configfile.h @@ -1,27 +1,32 @@ -#ifndef CONFIGFILE_H -#define CONFIGFILE_H /** * collectd - src/configfile.h * Copyright (C) 2005-2011 Florian octo Forster * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 2 of the License, or (at your - * option) any later version. + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. * * Authors: * Florian octo Forster **/ +#ifndef CONFIGFILE_H +#define CONFIGFILE_H + #include "collectd.h" #include "utils_time.h" #include "liboconfig/oconfig.h" @@ -86,6 +91,10 @@ int cf_read (char *filename); int global_option_set (const char *option, const char *value); const char *global_option_get (const char *option); +long global_option_get_long (const char *option, long default_value); +long global_option_get_long_in_range (const char *option, long default_value, long min, long max); + +cdtime_t cf_get_default_interval (void); /* Assures the config option is a string, duplicates it and returns the copy in * "ret_string". If necessary "*ret_string" is freed first. Returns zero upon @@ -100,6 +109,9 @@ int cf_util_get_string_buffer (const oconfig_item_t *ci, char *buffer, /* Assures the config option is a number and returns it as an int. */ int cf_util_get_int (const oconfig_item_t *ci, int *ret_value); +/* Assures the config option is a number and returns it as a double. */ +int cf_util_get_double (const oconfig_item_t *ci, double *ret_value); + /* Assures the config option is a boolean and assignes it to `ret_bool'. * Otherwise, `ret_bool' is not changed and non-zero is returned. */ int cf_util_get_boolean (const oconfig_item_t *ci, _Bool *ret_bool); @@ -116,6 +128,12 @@ int cf_util_get_flag (const oconfig_item_t *ci, * failure. */ int cf_util_get_port_number (const oconfig_item_t *ci); +/* Assures that the config option is either a service name (a string) or a port + * number (an integer in the appropriate range) and returns a newly allocated + * string. If ret_string points to a non-NULL pointer, it is freed before + * assigning a new value. */ +int cf_util_get_service (const oconfig_item_t *ci, char **ret_string); + int cf_util_get_cdtime (const oconfig_item_t *ci, cdtime_t *ret_value); #endif /* defined(CONFIGFILE_H) */