Permalink
Find file
Fetching contributors…
Cannot retrieve contributors at this time
78 lines (65 sloc) 2.61 KB
/**************************************************************************
* Copyright (C) 2008-2010 David Kellum
* This file is part of Hashdot.
*
* Hashdot 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 3, or (at your option)
* any later version.
*
* Hashdot 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.
*
* You should have received a copy of the GNU General Public License
* along with Hashdot. If not, see http://www.gnu.org/licenses/.
*
* Dynamically linking other modules to this executable is making a
* combined work based on this executable. Thus, the terms and
* conditions of the GNU General Public License cover the whole
* combination.
*
* As a special exception, the Hashdot copyright holder gives you
* permission to dynamically link independent modules to this
* executable, regardless of the license terms of these independent
* modules, and to copy and distribute the combination under terms of
* your choice, provided that you also meet, for each linked
* independent module, the terms and conditions of the license of that
* module. An independent module is a module which is not derived
* from or based from the source of Hashdot. If you modify Hashdot,
* you may extend this exception to your version, but you are not
* obligated to do so. If you do not wish to do so, delete this
* exception statement from your version.
*************************************************************************/
#ifndef _PROPERTY_H
#define _PROPERTY_H
#include <apr_general.h>
#include <apr_tables.h>
#include <apr_hash.h>
apr_status_t
parse_profile( const char *pname,
apr_hash_t *rprops );
apr_status_t
expand_recursive_props( apr_hash_t *rprops );
apr_status_t
parse_hashdot_header( const char *fname,
apr_hash_t *rprops );
apr_status_t
glob_values( apr_array_header_t *values,
apr_array_header_t **tvalues );
apr_array_header_t *
get_property_array( const char *name );
apr_status_t
get_property_value( const char *name,
char separator,
int required,
const char **value );
void
set_property_array( const char *name,
apr_array_header_t *vals );
apr_status_t
set_property_value( const char *name,
const char *value );
extern apr_hash_t *_props;
#endif