]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Split regex functions into a separate header
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Fri, 5 Oct 2018 06:47:42 +0000 (13:47 +0700)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Fri, 5 Oct 2018 06:47:42 +0000 (13:47 +0700)
src/lib/server/base.h
src/lib/server/cond_eval.c
src/lib/server/paircmp.c
src/lib/server/regex.c
src/lib/server/regex.h [new file with mode: 0644]
src/lib/server/xlat_eval.c
src/lib/server/xlat_tokenize.c

index a2903456b908bc594f0b328a26d11d971dc0f409..febfccaca360d3f4a3957ad1cfcd5421775d0464 100644 (file)
@@ -176,26 +176,6 @@ void               rad_suid_down(void);
 void           rad_suid_up(void);
 void           rad_suid_down_permanent(void);
 bool           rad_suid_is_down_permanent(void);
-/* regex.c */
-
-#ifdef HAVE_REGEX
-/*
- *     Increasing this is essentially free
- *     It just increases memory usage. 12-16 bytes for each additional subcapture.
- */
-#  define REQUEST_MAX_REGEX 32
-
-void   regex_sub_to_request(REQUEST *request, regex_t **preg, fr_regmatch_t **regmatch);
-
-int    regex_request_to_sub(TALLOC_CTX *ctx, char **out, REQUEST *request, uint32_t num);
-
-/*
- *     Named capture groups only supported by PCRE.
- */
-#  if defined(HAVE_REGEX_PCRE2) || defined(HAVE_REGEX_PCRE)
-int    regex_request_to_sub_named(TALLOC_CTX *ctx, char **out, REQUEST *request, char const *name);
-#  endif
-#endif
 
 /* auth.c */
 rlm_rcode_t            rad_authenticate (REQUEST *);
index e56e6c74f0981ca32c5c44b9cb4248f7c010403d..5b8f66aafa4bbc771c40bed4c11db57be1796df5 100644 (file)
@@ -28,6 +28,7 @@ RCSID("$Id$")
 #include <freeradius-devel/server/cond_eval.h>
 #include <freeradius-devel/server/modules.h>
 #include <freeradius-devel/server/parser.h>
+#include <freeradius-devel/server/regex.h>
 #include <freeradius-devel/server/rad_assert.h>
 
 #include <ctype.h>
index 4408a2c8660fdeb827514cd5ce516f9e6915d73d..5f337eeaaeeb42e6c23cd59b9f83336236a899d7 100644 (file)
@@ -31,8 +31,9 @@ RCSID("$Id$")
 
 #include <ctype.h>
 
-#include <freeradius-devel/server/base.h>
 #include <freeradius-devel/server/rad_assert.h>
+#include <freeradius-devel/server/regex.h>
+#include <freeradius-devel/server/request.h>
 
 typedef struct paircmp_s paircmp_t;
 struct paircmp_s {
index 583a7639fb24fec8e7bdf070028f3638fc79b373..fd325ce5839ef74a8a1a0ff92156726bec619555 100644 (file)
@@ -25,7 +25,7 @@
 
 RCSID("$Id$")
 
-#include <freeradius-devel/server/base.h>
+#include <freeradius-devel/server/regex.h>
 #include <freeradius-devel/server/rad_assert.h>
 
 #ifdef HAVE_REGEX
diff --git a/src/lib/server/regex.h b/src/lib/server/regex.h
new file mode 100644 (file)
index 0000000..87d0ba9
--- /dev/null
@@ -0,0 +1,58 @@
+#pragma once
+/*
+ *  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.
+ *
+ *  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.
+ *
+ *  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
+ */
+
+/**
+ * $Id$
+ *
+ * @file lib/server/regex.h
+ * @brief Regular expression functions used by the server library.
+ *
+ * @copyright 2014  The FreeRADIUS server project
+ */
+RCSIDH(server_regex_h, "$Id$")
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef HAVE_REGEX
+#include <freeradius-devel/server/request.h>
+#include <freeradius-devel/util/regex.h>
+
+#include <talloc.h>
+
+/*
+ *     Increasing this is essentially free
+ *     It just increases memory usage. 12-16 bytes for each additional subcapture.
+ */
+#  define REQUEST_MAX_REGEX 32
+
+void   regex_sub_to_request(REQUEST *request, regex_t **preg, fr_regmatch_t **regmatch);
+
+int    regex_request_to_sub(TALLOC_CTX *ctx, char **out, REQUEST *request, uint32_t num);
+
+/*
+ *     Named capture groups only supported by PCRE.
+ */
+#  if defined(HAVE_REGEX_PCRE2) || defined(HAVE_REGEX_PCRE)
+int    regex_request_to_sub_named(TALLOC_CTX *ctx, char **out, REQUEST *request, char const *name);
+#  endif
+#endif
+
+#ifdef __cplusplus
+}
+#endif
index 060db1c017d105ffda95a63d4bf0034207251856..2733483335c5b7f09f52b78d93ed190d3e863977 100644 (file)
 RCSID("$Id$")
 
 #include <freeradius-devel/server/base.h>
-#include <freeradius-devel/server/parser.h>
 #include <freeradius-devel/server/modules.h>
-#include <freeradius-devel/unlang/base.h>
+#include <freeradius-devel/server/parser.h>
 #include <freeradius-devel/server/rad_assert.h>
+#include <freeradius-devel/server/regex.h>
+#include <freeradius-devel/server/request.h>
+#include <freeradius-devel/unlang/base.h>
 
 #include <ctype.h>
 #include "xlat_priv.h"
index 16858995618927dd9f8859b39b2b4ed85bc9c849..dd8f56173c030e9b536c2344f7fc3995f519d876 100644 (file)
@@ -26,8 +26,9 @@
 
 RCSID("$Id$")
 
-#include <freeradius-devel/server/base.h>
 #include <freeradius-devel/server/rad_assert.h>
+#include <freeradius-devel/server/request.h>
+#include <freeradius-devel/server/regex.h>
 
 #include <ctype.h>
 #include "xlat_priv.h"