summaryrefslogtreecommitdiffstats
path: root/libglusterfs
diff options
context:
space:
mode:
Diffstat (limited to 'libglusterfs')
-rw-r--r--libglusterfs/src/store.c6
-rw-r--r--libglusterfs/src/store.h2
2 files changed, 5 insertions, 3 deletions
diff --git a/libglusterfs/src/store.c b/libglusterfs/src/store.c
index 3da82a4768d..53b44b1e1c8 100644
--- a/libglusterfs/src/store.c
+++ b/libglusterfs/src/store.c
@@ -181,7 +181,7 @@ out:
}
int
-gf_store_read_and_tokenize (FILE *file, char *str, char **iter_key,
+gf_store_read_and_tokenize (FILE *file, char *str, int size, char **iter_key,
char **iter_val, gf_store_op_errno_t *store_errno)
{
int32_t ret = -1;
@@ -197,7 +197,7 @@ gf_store_read_and_tokenize (FILE *file, char *str, char **iter_key,
GF_ASSERT (iter_val);
GF_ASSERT (store_errno);
- temp = fgets (str, PATH_MAX, file);
+ temp = fgets (str, size, file);
if (temp == NULL || feof (file)) {
ret = -1;
*store_errno = GD_STORE_EOF;
@@ -292,6 +292,7 @@ gf_store_retrieve_value (gf_store_handle_t *handle, char *key, char **value)
do {
ret = gf_store_read_and_tokenize (handle->read, scan_str,
+ st.st_size + 1,
&iter_key, &iter_val,
&store_errno);
if (ret < 0) {
@@ -574,6 +575,7 @@ gf_store_iter_get_next (gf_store_iter_t *iter, char **key, char **value,
}
ret = gf_store_read_and_tokenize (iter->file, scan_str,
+ st.st_size + 1,
&iter_key, &iter_val,
&store_errno);
if (ret < 0) {
diff --git a/libglusterfs/src/store.h b/libglusterfs/src/store.h
index 6b7c98a3547..44af117f48c 100644
--- a/libglusterfs/src/store.h
+++ b/libglusterfs/src/store.h
@@ -64,7 +64,7 @@ int32_t
gf_store_unlink_tmppath (gf_store_handle_t *shandle);
int
-gf_store_read_and_tokenize (FILE *file, char *str, char **iter_key,
+gf_store_read_and_tokenize (FILE *file, char *str, int size, char **iter_key,
char **iter_val, gf_store_op_errno_t *store_errno);
int32_t