]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
MINOR: map: export parse output sample functions
authorThierry FOURNIER <tfournier@exceliance.fr>
Tue, 10 Dec 2013 14:05:34 +0000 (15:05 +0100)
committerWilly Tarreau <w@1wt.eu>
Thu, 12 Dec 2013 14:44:05 +0000 (15:44 +0100)
This export is used to identify the parser used

include/proto/map.h
src/map.c

index 4dd081b9f3baee4c484652630149aabe62f57616..907c8ca9e3e8735adad4919c172df659e21ce88d 100644 (file)
 
 #include <types/map.h>
 
+/* maps output sample parser */
+int map_parse_ip(const char *text, struct sample_storage *smp);
+int map_parse_ip6(const char *text, struct sample_storage *smp);
+int map_parse_str(const char *text, struct sample_storage *smp);
+int map_parse_int(const char *text, struct sample_storage *smp);
+
 struct map_reference *map_get_reference(const char *reference);
 
 #endif /* _PROTO_PATTERN_H */
index b1fa7f672d336a46aec5b1dcf7eaf795a5e1b2bb..28908c534f43477809135fcdda9078e93090a7a2 100644 (file)
--- a/src/map.c
+++ b/src/map.c
@@ -19,6 +19,7 @@
 #include <types/map.h>
 
 #include <proto/arg.h>
+#include <proto/map.h>
 #include <proto/pattern.h>
 #include <proto/sample.h>
 
@@ -39,7 +40,7 @@ struct map_reference *map_get_reference(const char *reference)
 /* Parse an IPv4 address and store it into the sample.
  * The output type is IPV4.
  */
-static int map_parse_ip(const char *text, struct sample_storage *smp)
+int map_parse_ip(const char *text, struct sample_storage *smp)
 {
        if (!buf2ip(text, strlen(text), &smp->data.ipv4))
                return 0;
@@ -50,7 +51,7 @@ static int map_parse_ip(const char *text, struct sample_storage *smp)
 /* Parse an IPv6 address and store it into the sample.
  * The output type is IPV6.
  */
-static int map_parse_ip6(const char *text, struct sample_storage *smp)
+int map_parse_ip6(const char *text, struct sample_storage *smp)
 {
        if (!buf2ip6(text, strlen(text), &smp->data.ipv6))
                return 0;
@@ -62,7 +63,7 @@ static int map_parse_ip6(const char *text, struct sample_storage *smp)
  * string must be left in memory because we return a direct memory reference.
  * The output type is CSTR.
  */
-static int map_parse_str(const char *text, struct sample_storage *smp)
+int map_parse_str(const char *text, struct sample_storage *smp)
 {
        /* The loose of the "const" is balanced by the SMP_T_CSTR type */
        smp->data.str.str = (char *)text;
@@ -76,7 +77,7 @@ static int map_parse_str(const char *text, struct sample_storage *smp)
  * number is negative, or UINT if it is positive or null. The function returns
  * zero (error) if the number is too large.
  */
-static int map_parse_int(const char *text, struct sample_storage *smp)
+int map_parse_int(const char *text, struct sample_storage *smp)
 {
        long long int value;
        char *error;