asterisk/channels/sip/include/config_parser.h

69 lines
2.0 KiB
C

/*
* Asterisk -- An open source telephony toolkit.
*
* Copyright (C) 2010, Digium, Inc.
*
* See http://www.asterisk.org for more information about
* the Asterisk project. Please do not directly contact
* any of the maintainers of this project for assistance;
* the project provides a web site, mailing lists and IRC
* channels for your use.
*
* This program is free software, distributed under the terms of
* the GNU General Public License Version 2. See the LICENSE file
* at the top of the source tree.
*/
/*!
* \file
* \brief sip.conf parser header file
*/
#include "sip.h"
#ifndef _SIP_CONF_PARSE_H
#define _SIP_CONF_PARSE_H
/*!
* \brief Parse register=> line in sip.conf
*
* \retval 0 on success
* \retval -1 on failure
*/
int sip_parse_register_line(struct sip_registry *reg, int default_expiry, const char *value, int lineno);
/*!
* \brief parses a config line for a host with a transport
*
* An example input would be:
* <code>tls://www.google.com:8056</code>
*
* \retval 0 on success
* \retval -1 on failure
*/
int sip_parse_host(char *line, int lineno, char **hostname, int *portnum, enum ast_transport *transport);
/*! \brief Parse the comma-separated nat= option values
* \param value The comma-separated value
* \param mask An array of ast_flags that will be set by this function
* and used as a mask for copying the flags later
* \param flags An array of ast_flags that will be set by this function
*
* \note The nat-related values in both mask and flags are assumed to empty. This function
* will treat the first "yes" or "no" value in a list of values as overriding all other values
* and will stop parsing. Auto values will override their non-auto counterparts.
*/
void sip_parse_nat_option(const char *value, struct ast_flags *mask, struct ast_flags *flags);
/*!
* \brief register config parsing tests
*/
void sip_config_parser_register_tests(void);
/*!
* \brief unregister config parsing tests
*/
void sip_config_parser_unregister_tests(void);
#endif