diff options
Diffstat (limited to 'tests/basic/gfapi/gfapi-load-volfile.c')
| -rw-r--r-- | tests/basic/gfapi/gfapi-load-volfile.c | 65 | 
1 files changed, 65 insertions, 0 deletions
diff --git a/tests/basic/gfapi/gfapi-load-volfile.c b/tests/basic/gfapi/gfapi-load-volfile.c new file mode 100644 index 00000000000..91d5677bd44 --- /dev/null +++ b/tests/basic/gfapi/gfapi-load-volfile.c @@ -0,0 +1,65 @@ +/* + * Create a glfs instance based on a .vol file + * + * This is used to measure memory leaks by initializing a graph through a .vol + * file and destroying it again. + */ + +#include <stdlib.h> +#include <stdio.h> +#include <string.h> + +#include <api/glfs.h> + +#define PROGNAME "gfapi-load-volfile" + +void +usage(FILE *output) +{ +	fprintf(output, "Usage: " PROGNAME " <volfile>\n"); +} + +void +main(int argc, char **argv) +{ +	int ret = 0; +	glfs_t *fs = NULL; + +	if (argc != 2) { +		usage(stderr); +		exit(EXIT_FAILURE); +	} + +	if (!strcmp(argv[1], "-h") || !strcmp(argv[1], "-h")) { +		usage(stdout); +		exit(EXIT_SUCCESS); +	} + +	fs = glfs_new(PROGNAME); +	if (!fs) { +		perror("glfs_new failed"); +		exit(EXIT_FAILURE); +	} + +	glfs_set_logging(fs, PROGNAME ".log", 9); + +	ret = glfs_set_volfile(fs, argv[1]); +	if (ret) { +		perror("glfs_set_volfile failed"); +		ret = EXIT_FAILURE; +		goto out; +	} + +	ret = glfs_init(fs); +	if (ret) { +		perror("glfs_init failed"); +		ret = EXIT_FAILURE; +		goto out; +	} + +	ret = EXIT_SUCCESS; +out: +	glfs_fini(fs); + +	exit(ret); +}  | 
