#define HASH_GIVE_EQ
#define HASH_GIVE_EXTRA_SIZE
#define HASH_GIVE_INIT_KEY
-#define HASH_GIVE_ALLOC
+#define HASH_USE_POOL cfpool
static inline uns
pxtab_hash(HASH_KEY_DECL)
node->rhs = NULL;
}
-static inline void *
-pxtab_alloc(uns size)
-{
- return cfg_malloc(size);
-}
-
#include "lib/hashtable.h"
static inline byte *
url = buf;
buf += MAX_URL_SIZE;
}
- url = url_key_remove_www(url, &buf);
DBG("\tOutput: %s", url);
return url;
}
url_fingerprint(byte *url, struct fingerprint *fp)
{
byte buf[URL_KEY_BUF_SIZE];
- return fingerprint(url_key(url, buf), fp);
+ fingerprint(url_key(url, buf), fp);
}
+
+#ifdef TEST
+
+int main(int argc, char **argv)
+{
+ cf_read(cfdeffile);
+ url_key_init();
+ for (int i=1; i<argc; i++)
+ {
+ byte buf[URL_KEY_BUF_SIZE];
+ struct fingerprint fp;
+ byte *key = url_key(argv[i], buf);
+ fingerprint(key, &fp);
+ for (int j=0; j<12; j++)
+ printf("%02x", fp.hash[j]);
+ printf(" %s\n", key);
+ }
+ return 0;
+}
+
+#endif