Blob Blame History Raw
---
 libmultipath/parser.c |  103 +++-----------------------------------------------
 libmultipath/parser.h |    6 --
 2 files changed, 8 insertions(+), 101 deletions(-)

Index: multipath-tools-130222/libmultipath/parser.c
===================================================================
--- multipath-tools-130222.orig/libmultipath/parser.c
+++ multipath-tools-130222/libmultipath/parser.c
@@ -280,8 +280,8 @@ out:
 	return NULL;
 }
 
-int
-read_line(char *buf, int size)
+static int
+read_line(FILE *stream, char *buf, int size)
 {
 	int ch;
 	int count = 0;
@@ -297,95 +297,6 @@ read_line(char *buf, int size)
 	return (ch == EOF) ? 0 : 1;
 }
 
-vector
-read_value_block(void)
-{
-	char *buf;
-	int i;
-	char *str = NULL;
-	char *dup;
-	vector vec = NULL;
-	vector elements = vector_alloc();
-
-	if (!elements)
-		return NULL;
-
-	buf = (char *) MALLOC(MAXBUF);
-
-	if (!buf) {
-		vector_free(elements);
-		return NULL;
-	}
-
-	while (read_line(buf, MAXBUF)) {
-		vec = alloc_strvec(buf);
-		if (vec) {
-			str = VECTOR_SLOT(vec, 0);
-			if (!strcmp(str, EOB)) {
-				free_strvec(vec);
-				break;
-			}
-
-			for (i = 0; i < VECTOR_SIZE(vec); i++) {
-				str = VECTOR_SLOT(vec, i);
-				dup = (char *) MALLOC(strlen(str) + 1);
-				if (!dup)
-					goto out;
-				memcpy(dup, str, strlen(str));
-
-				if (!vector_alloc_slot(elements)) {
-					free_strvec(vec);
-					goto out1;
-				}
-
-				vector_set_slot(elements, dup);
-			}
-			free_strvec(vec);
-		}
-		memset(buf, 0, MAXBUF);
-	}
-	FREE(buf);
-	return elements;
-out1:
-	FREE(dup);
-out:
-	FREE(buf);
-	vector_free(elements);
-	return NULL;
-}
-
-int
-alloc_value_block(vector strvec, void (*alloc_func) (vector))
-{
-	char *buf;
-	char *str = NULL;
-	vector vec = NULL;
-
-	buf = (char *) MALLOC(MAXBUF);
-
-	if (!buf)
-		return 1;
-
-	while (read_line(buf, MAXBUF)) {
-		vec = alloc_strvec(buf);
-		if (vec) {
-			str = VECTOR_SLOT(vec, 0);
-			if (!strcmp(str, EOB)) {
-				free_strvec(vec);
-				break;
-			}
-
-			if (VECTOR_SIZE(vec))
-				(*alloc_func) (vec);
-
-			free_strvec(vec);
-		}
-		memset(buf, 0, MAXBUF);
-	}
-	FREE(buf);
-	return 0;
-}
-
 void *
 set_value(vector strvec)
 {
@@ -561,7 +472,7 @@ validate_config_strvec(vector strvec, ch
 }
 
 static int
-process_stream(vector keywords, char *file)
+process_stream(FILE *stream, vector keywords, char *file)
 {
 	int i;
 	int r = 0;
@@ -582,7 +493,7 @@ process_stream(vector keywords, char *fi
 		return 1;
 	}
 
-	while (read_line(buf, MAXBUF)) {
+	while (read_line(stream, buf, MAXBUF)) {
 		line_nr++;
 		strvec = alloc_strvec(buf);
 		memset(buf,0, MAXBUF);
@@ -621,7 +532,8 @@ process_stream(vector keywords, char *fi
 
 				if (keyword->sub) {
 					kw_level++;
-					r += process_stream(keyword->sub, file);
+					r += process_stream(stream,
+							    keyword->sub, file);
 					kw_level--;
 				}
 				break;
@@ -656,6 +568,7 @@ int
 process_file(char *file)
 {
 	int r;
+	FILE *stream;
 
 	if (!keywords) {
 		condlog(0, "No keywords alocated");
@@ -670,7 +583,7 @@ process_file(char *file)
 
 	/* Stream handling */
 	line_nr = 0;
-	r = process_stream(keywords, file);
+	r = process_stream(stream, keywords, file);
 	fclose(stream);
 	//free_keywords(keywords);
 
Index: multipath-tools-130222/libmultipath/parser.h
===================================================================
--- multipath-tools-130222.orig/libmultipath/parser.h
+++ multipath-tools-130222/libmultipath/parser.h
@@ -47,9 +47,6 @@ struct keyword {
 	int unique;
 };
 
-/* global var exported */
-FILE *stream;
-
 /* Reloading helpers */
 #define SET_RELOAD      (reload = 1)
 #define UNSET_RELOAD    (reload = 0)
@@ -72,9 +69,6 @@ extern int _install_keyword(char *string
 extern void dump_keywords(vector keydump, int level);
 extern void free_keywords(vector keywords);
 extern vector alloc_strvec(char *string);
-extern int read_line(char *buf, int size);
-extern vector read_value_block(void);
-extern int alloc_value_block(vector strvec, void (*alloc_func) (vector));
 extern void *set_value(vector strvec);
 extern int alloc_keywords(void);
 extern int process_file(char *conf_file);