Fixed newline characters throughout the code
[com/gs-lite.git] / include / hfta / hfta_runtime_library.h
index 7ed2b3e..3a20ff3 100644 (file)
-/* ------------------------------------------------\r
-Copyright 2014 AT&T Intellectual Property\r
-   Licensed under the Apache License, Version 2.0 (the "License");\r
-   you may not use this file except in compliance with the License.\r
-   You may obtain a copy of the License at\r
-\r
-     http://www.apache.org/licenses/LICENSE-2.0\r
-\r
-   Unless required by applicable law or agreed to in writing, software\r
-   distributed under the License is distributed on an "AS IS" BASIS,\r
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
-   See the License for the specific language governing permissions and\r
-   limitations under the License.\r
- ------------------------------------------- */\r
-\r
-#ifndef __HFTA_RUNTIME_LIBRARY__\r
-#define __HFTA_RUNTIME_LIBRARY__\r
-#include "host_tuple.h"\r
-#include "gsconfig.h"\r
-#include "gstypes.h"\r
-\r
-#define DNS_SAMPLE_HASH_SZ 50000000\r
-#define DNS_HITLIST_HASH_SZ 50000000\r
-#define DNS_HITLIST_ENTRY_SZ 500000\r
-\r
-\r
-//             Internal functions\r
-gs_retval_t Vstring_Constructor(vstring *, gs_csp_t);\r
-gs_retval_t hfta_vstr_length(vstring *);\r
-void hfta_vstr_assign_with_copy_in_tuple(vstring32 *, vstring *, gs_sp_t, int);\r
-void hfta_vstr_assign_with_copy(vstring *, vstring *);\r
-void hfta_vstr_destroy(vstring *);\r
-void hfta_vstr_replace(vstring *, vstring *);\r
-\r
-gs_uint32_t hfta_vstr_hashfunc(const vstring *);\r
-gs_retval_t hfta_vstr_compare(const vstring *, const vstring *);\r
-\r
-gs_retval_t hfta_ipv6_compare(const hfta_ipv6_str &i1, const hfta_ipv6_str &i2);\r
-hfta_ipv6_str And_Ipv6(const hfta_ipv6_str &i1, const hfta_ipv6_str &i2);\r
-hfta_ipv6_str Or_Ipv6(const hfta_ipv6_str &i1, const hfta_ipv6_str &i2);\r
-gs_uint32_t hfta_ipv6_hashfunc(const hfta_ipv6_str *s) ;\r
-hfta_ipv6_str hton_ipv6(hfta_ipv6_str s);\r
-hfta_ipv6_str ntoh_ipv6(hfta_ipv6_str s);\r
-gs_retval_t HFTA_Ipv6_Constructor(hfta_ipv6_str *s, gs_csp_t l) ;\r
-\r
-\r
-\r
-\r
-//             External functions\r
-\r
-inline static gs_retval_t str_truncate(vstring * result, vstring *str, gs_uint32_t length) {\r
-       result->offset=str->offset;\r
-       result->length=(str->length<length)?str->length:length;\r
-       result->reserved=SHALLOW_COPY;\r
-       return 0;\r
-}\r
-\r
-gs_retval_t str_exists_substr(vstring * s1, vstring * s2);\r
-gs_retval_t str_compare(vstring * s1, vstring * s2);\r
-\r
-gs_uint32_t str_match_offset(gs_uint32_t offset,vstring *s1,vstring *s2);\r
-gs_uint32_t byte_match_offset( gs_uint32_t offset, gs_uint32_t val,vstring *s2);\r
-\r
-\r
-// REGEX functions\r
-\r
-gs_retval_t str_regex_match(vstring* str, gs_param_handle_t pattern_handle);\r
-gs_param_handle_t register_handle_for_str_regex_match_slot_1(vstring* pattern);\r
-gs_retval_t deregister_handle_for_str_regex_match_slot_1(gs_param_handle_t handle);\r
-\r
-gs_retval_t str_partial_regex_match(vstring* str, gs_param_handle_t pattern_handle);\r
-gs_param_handle_t register_handle_for_str_partial_regex_match_slot_1(vstring* pattern);\r
-gs_retval_t deregister_handle_for_str_partial_regex_match_slot_1(gs_param_handle_t handle);\r
-\r
-gs_param_handle_t register_handle_for_str_extract_regex_slot_1(vstring* pattern);\r
-gs_retval_t str_extract_regex( vstring * result, vstring * str, gs_param_handle_t handle);\r
-gs_retval_t deregister_handle_for_str_extract_regex_slot_1(gs_param_handle_t handle);\r
-\r
-\r
-\r
-\r
-// type conversion\r
-#define INT(c) ((int)(c))\r
-#define UINT(c) ((gs_uint32_t)(c))\r
-#define FLOAT(c) ((gs_float_t)(c))\r
-#define ULLONG(c) ((gs_uint64_t)(c))\r
-\r
-// string conversions\r
-\r
-gs_uint32_t strtoi(gs_uint32_t * r, struct vstring *data);\r
-gs_uint32_t strtoip(gs_uint32_t * r, struct vstring *data);\r
-\r
-//     constant string conversions\r
-gs_param_handle_t register_handle_for_strtoi_c_slot_0(vstring* istr) ;\r
-gs_retval_t deregister_handle_for_strtoi_c_slot_0(gs_param_handle_t h) ;\r
-#define strtoi_c(h) ((gs_uint32_t)(h))\r
-\r
-gs_param_handle_t register_handle_for_strtoip_c_slot_0(vstring* istr) ;\r
-gs_retval_t deregister_handle_for_strtoip_c_slot_0(gs_param_handle_t h) ;\r
-#define strtoip_c(h) ((gs_uint32_t)(h))\r
-\r
-\r
-inline gs_uint32_t str_match_offset( gs_uint32_t offset, struct vstring * s1, struct vstring * s2) {\r
-       register gs_uint8_t *st1 = (gs_uint8_t *) s1->offset;\r
-       register gs_uint8_t *st2 = (gs_uint8_t *) (s2->offset+offset);\r
-       register gs_int32_t x;\r
-       register gs_int32_t len2 = s2->length-offset;\r
-       register gs_int32_t len1 = s1->length;\r
-       if (len2<len1) return 0;\r
-       for(x=0; x<len1; x++) {\r
-               if (st1[x]!=st2[x]) return 0;\r
-       }\r
-       return 1;\r
-}\r
-\r
-\r
-\r
-#endif\r
+/* ------------------------------------------------
+Copyright 2014 AT&T Intellectual Property
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+ ------------------------------------------- */
+
+#ifndef __HFTA_RUNTIME_LIBRARY__
+#define __HFTA_RUNTIME_LIBRARY__
+#include "host_tuple.h"
+#include "gsconfig.h"
+#include "gstypes.h"
+
+#define DNS_SAMPLE_HASH_SZ 50000000
+#define DNS_HITLIST_HASH_SZ 50000000
+#define DNS_HITLIST_ENTRY_SZ 500000
+
+
+//             Internal functions
+gs_retval_t Vstring_Constructor(vstring *, gs_csp_t);
+gs_retval_t hfta_vstr_length(vstring *);
+void hfta_vstr_assign_with_copy_in_tuple(vstring32 *, vstring *, gs_sp_t, int);
+void hfta_vstr_assign_with_copy(vstring *, vstring *);
+void hfta_vstr_destroy(vstring *);
+void hfta_vstr_replace(vstring *, vstring *);
+
+gs_uint32_t hfta_vstr_hashfunc(const vstring *);
+gs_retval_t hfta_vstr_compare(const vstring *, const vstring *);
+
+gs_retval_t hfta_ipv6_compare(const hfta_ipv6_str &i1, const hfta_ipv6_str &i2);
+hfta_ipv6_str And_Ipv6(const hfta_ipv6_str &i1, const hfta_ipv6_str &i2);
+hfta_ipv6_str Or_Ipv6(const hfta_ipv6_str &i1, const hfta_ipv6_str &i2);
+gs_uint32_t hfta_ipv6_hashfunc(const hfta_ipv6_str *s) ;
+hfta_ipv6_str hton_ipv6(hfta_ipv6_str s);
+hfta_ipv6_str ntoh_ipv6(hfta_ipv6_str s);
+gs_retval_t HFTA_Ipv6_Constructor(hfta_ipv6_str *s, gs_csp_t l) ;
+
+
+
+
+//             External functions
+
+inline static gs_retval_t str_truncate(vstring * result, vstring *str, gs_uint32_t length) {
+       result->offset=str->offset;
+       result->length=(str->length<length)?str->length:length;
+       result->reserved=SHALLOW_COPY;
+       return 0;
+}
+
+gs_retval_t str_exists_substr(vstring * s1, vstring * s2);
+gs_retval_t str_compare(vstring * s1, vstring * s2);
+
+gs_uint32_t str_match_offset(gs_uint32_t offset,vstring *s1,vstring *s2);
+gs_uint32_t byte_match_offset( gs_uint32_t offset, gs_uint32_t val,vstring *s2);
+
+
+// REGEX functions
+
+gs_retval_t str_regex_match(vstring* str, gs_param_handle_t pattern_handle);
+gs_param_handle_t register_handle_for_str_regex_match_slot_1(vstring* pattern);
+gs_retval_t deregister_handle_for_str_regex_match_slot_1(gs_param_handle_t handle);
+
+gs_retval_t str_partial_regex_match(vstring* str, gs_param_handle_t pattern_handle);
+gs_param_handle_t register_handle_for_str_partial_regex_match_slot_1(vstring* pattern);
+gs_retval_t deregister_handle_for_str_partial_regex_match_slot_1(gs_param_handle_t handle);
+
+gs_param_handle_t register_handle_for_str_extract_regex_slot_1(vstring* pattern);
+gs_retval_t str_extract_regex( vstring * result, vstring * str, gs_param_handle_t handle);
+gs_retval_t deregister_handle_for_str_extract_regex_slot_1(gs_param_handle_t handle);
+
+
+
+
+// type conversion
+#define INT(c) ((int)(c))
+#define UINT(c) ((gs_uint32_t)(c))
+#define FLOAT(c) ((gs_float_t)(c))
+#define ULLONG(c) ((gs_uint64_t)(c))
+
+// string conversions
+
+gs_uint32_t strtoi(gs_uint32_t * r, struct vstring *data);
+gs_uint32_t strtoip(gs_uint32_t * r, struct vstring *data);
+
+//     constant string conversions
+gs_param_handle_t register_handle_for_strtoi_c_slot_0(vstring* istr) ;
+gs_retval_t deregister_handle_for_strtoi_c_slot_0(gs_param_handle_t h) ;
+#define strtoi_c(h) ((gs_uint32_t)(h))
+
+gs_param_handle_t register_handle_for_strtoip_c_slot_0(vstring* istr) ;
+gs_retval_t deregister_handle_for_strtoip_c_slot_0(gs_param_handle_t h) ;
+#define strtoip_c(h) ((gs_uint32_t)(h))
+
+
+inline gs_uint32_t str_match_offset( gs_uint32_t offset, struct vstring * s1, struct vstring * s2) {
+       register gs_uint8_t *st1 = (gs_uint8_t *) s1->offset;
+       register gs_uint8_t *st2 = (gs_uint8_t *) (s2->offset+offset);
+       register gs_int32_t x;
+       register gs_int32_t len2 = s2->length-offset;
+       register gs_int32_t len1 = s1->length;
+       if (len2<len1) return 0;
+       for(x=0; x<len1; x++) {
+               if (st1[x]!=st2[x]) return 0;
+       }
+       return 1;
+}
+
+
+
+#endif