X-Git-Url: http://git.bytex64.net/?a=blobdiff_plain;f=database%2Ftags.c;fp=database%2Ftags.c;h=07aa0e9e252336ee73fa1b92473c195c898c64a9;hb=299baeb1e1f2599aec5f6d2dd229f2bf0a1922b7;hp=0d7a27f141b5062997214a741c44ed2c00c81170;hpb=e6dca775a923fa76d62b3ea420fd8b7bae3c420b;p=blerg.git diff --git a/database/tags.c b/database/tags.c index 0d7a27f..07aa0e9 100644 --- a/database/tags.c +++ b/database/tags.c @@ -14,6 +14,7 @@ #include "util.h" #include "database.h" #include "config.h" +#include "configuration.h" int tag_scan(const char *author, const char *data, int len, uint64_t record) { @@ -61,7 +62,7 @@ tag_scan_start: } int tag_add(const char *author, const char *tag, uint64_t record) { - char filename[512]; + char filename[FILENAME_MAX]; struct blergref t; memset(t.author, 0, 32); @@ -70,10 +71,10 @@ int tag_add(const char *author, const char *tag, uint64_t record) { switch(tag[0]) { case '#': - snprintf(filename, 512, "%s/%s", HASH_TAGS_PATH, tag + 1); + snprintf(filename, FILENAME_MAX, "%s/%s", blergconf.hash_tags_path, tag + 1); break; case '@': - snprintf(filename, 512, "%s/%s", REF_TAGS_PATH, tag + 1); + snprintf(filename, FILENAME_MAX, "%s/%s", blergconf.ref_tags_path, tag + 1); break; default: fprintf(stderr, "Invalid tag type: %s\n", tag); @@ -98,7 +99,7 @@ int tag_add(const char *author, const char *tag, uint64_t record) { } struct blergref * tag_list(const char *tag, uint64_t offset, int *count, int direction) { - char filename[512]; + char filename[FILENAME_MAX]; struct stat st; struct blergref *taglist; struct blergref *retlist; @@ -114,10 +115,10 @@ struct blergref * tag_list(const char *tag, uint64_t offset, int *count, int dir switch(tag[0]) { case '#': - snprintf(filename, 512, "%s/%s", HASH_TAGS_PATH, tag + 1); + snprintf(filename, FILENAME_MAX, "%s/%s", blergconf.hash_tags_path, tag + 1); break; case '@': - snprintf(filename, 512, "%s/%s", REF_TAGS_PATH, tag + 1); + snprintf(filename, FILENAME_MAX, "%s/%s", blergconf.ref_tags_path, tag + 1); break; default: fprintf(stderr, "Invalid tag type: %s\n", tag); @@ -175,7 +176,7 @@ tag_list_open_failed: } int tag_exists(const char *tag) { - char filename[512]; + char filename[FILENAME_MAX]; if (!valid_tag_name(tag + 1)) return 0; @@ -187,10 +188,10 @@ int tag_exists(const char *tag) { switch(tag[0]) { case '#': - snprintf(filename, 512, "%s/%s", HASH_TAGS_PATH, tag + 1); + snprintf(filename, FILENAME_MAX, "%s/%s", blergconf.hash_tags_path, tag + 1); break; case '@': - snprintf(filename, 512, "%s/%s", REF_TAGS_PATH, tag + 1); + snprintf(filename, FILENAME_MAX, "%s/%s", blergconf.ref_tags_path, tag + 1); break; default: fprintf(stderr, "Invalid tag type: %s\n", tag);