--- /dev/null
+#ifndef COMMON_H_QPRCB1BH
+#define COMMON_H_QPRCB1BH
+
+#include <stdlib.h>
+
+struct dynamic_array {
+ size_t entry_size;
+ size_t grow_size;
+ size_t allocated;
+ size_t entries;
+ void *a;
+};
+
+#define DYNARRAY_ITEM(da, index) ( (char *)(da).a + ( (da).entry_size * index ) )
+
+int dynarray_init(struct dynamic_array *da, size_t entry_size, size_t grow_size);
+struct dynamic_array *dynarray_new(size_t entry_size, size_t grow_size);
+void *dynarray_add(struct dynamic_array *da, void *item);
+
+int str_to_word(char *s);
+
+char *strqtok_r(char *str, const char *sep, int esc, const char *quote, char **lastq, char **lasts);
+
+#endif /* COMMON_H_QPRCB1BH */