summaryrefslogtreecommitdiff
path: root/epan/asm_utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'epan/asm_utils.c')
-rw-r--r--epan/asm_utils.c67
1 files changed, 67 insertions, 0 deletions
diff --git a/epan/asm_utils.c b/epan/asm_utils.c
new file mode 100644
index 0000000000..98044c14bc
--- /dev/null
+++ b/epan/asm_utils.c
@@ -0,0 +1,67 @@
+/* asm_utils.c
+ * Functions optionally implemented in assembler
+ *
+ * $Id$
+ *
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
+ * Copyright 1998 Gerald Combs
+ *
+ * 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#include <string.h>
+#include <ctype.h>
+#include <glib.h>
+
+#include "asm_utils.h"
+
+/* String comparison func for dfilter_token GTree */
+int
+wrs_strcmp(gconstpointer a, gconstpointer b)
+{
+ return strcmp((const char*)a, (const char*)b);
+}
+
+int
+wrs_strcmp_with_data(gconstpointer a, gconstpointer b, gpointer user_data _U_)
+{
+ return strcmp((const char*)a, (const char*)b);
+}
+
+guchar
+wrs_check_charset(const guchar table[256], const char *str)
+{
+ const char *p = str;
+ guchar c;
+
+ do {
+ c = *(p++);
+ } while (table[c]);
+ return c;
+}
+
+guint
+wrs_str_hash(gconstpointer v)
+{
+ /* 31 bit hash function */
+ const signed char *p = v;
+ guint32 h = *p;
+ if (h)
+ for (p += 1; *p != '\0'; p++)
+ h = (h << 5) - h + *p;
+ return h;
+}
+