aboutsummaryrefslogtreecommitdiffstats
path: root/main/config.c
diff options
context:
space:
mode:
authorrizzo <rizzo@f38db490-d61c-443f-a65b-d21fe96a405b>2007-12-08 18:18:28 +0000
committerrizzo <rizzo@f38db490-d61c-443f-a65b-d21fe96a405b>2007-12-08 18:18:28 +0000
commit0baa4ebe7d80d3a7b5dcd648e369b5ddcde112c5 (patch)
treed03286b89c931358a09612947fb339ba0852353b /main/config.c
parentf795414e693f2802d4f4196a393f15a3c33c0d6a (diff)
unify some common code
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@91953 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/config.c')
-rw-r--r--main/config.c27
1 files changed, 16 insertions, 11 deletions
diff --git a/main/config.c b/main/config.c
index a2f0a41df..1acf74695 100644
--- a/main/config.c
+++ b/main/config.c
@@ -34,12 +34,25 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include "asterisk/network.h" /* we do some sockaddr manipulation here */
#include <time.h>
#include <sys/stat.h>
+
#define AST_INCLUDE_GLOB 1
+
#ifdef AST_INCLUDE_GLOB
+/* glob compat stuff - eventually this should go in compat.h or some
+ * header in include/asterisk/
+ */
#if defined(__Darwin__) || defined(__CYGWIN__)
#define GLOB_ABORTED GLOB_ABEND
#endif
-# include <glob.h>
+
+#include <glob.h>
+
+#ifdef SOLARIS
+#define MY_GLOB_FLAGS GLOB_NOCHECK
+#else
+#define MY_GLOB_FLAGS (GLOB_NOMAGIC|GLOB_BRACE)
+#endif
+
#endif
#include "asterisk/config.h"
@@ -1130,11 +1143,7 @@ static struct ast_config *config_text_file_load(const char *database, const char
int glob_ret;
glob_t globbuf;
globbuf.gl_offs = 0; /* initialize it to silence gcc */
-#ifdef SOLARIS
- glob_ret = glob(fn, GLOB_NOCHECK, NULL, &globbuf);
-#else
- glob_ret = glob(fn, GLOB_NOMAGIC|GLOB_BRACE, NULL, &globbuf);
-#endif
+ glob_ret = glob(fn, MY_GLOB_FLAGS, NULL, &globbuf);
if (glob_ret == GLOB_NOSPACE)
ast_log(LOG_WARNING,
"Glob Expansion of pattern '%s' failed: Not enough memory\n", fn);
@@ -1189,11 +1198,7 @@ static struct ast_config *config_text_file_load(const char *database, const char
#ifdef AST_INCLUDE_GLOB
int glob_ret;
glob_t globbuf = { .gl_offs = 0 };
-#ifdef SOLARIS
- glob_ret = glob(cfinclude->include, GLOB_NOCHECK, NULL, &globbuf);
-#else
- glob_ret = glob(cfinclude->include, GLOB_NOMAGIC|GLOB_BRACE, NULL, &globbuf);
-#endif
+ glob_ret = glob(cfinclude->include, MY_GLOB_FLAGS, NULL, &globbuf);
/* On error, we reparse */
if (glob_ret == GLOB_NOSPACE || glob_ret == GLOB_ABORTED)
unchanged = 0;