summaryrefslogtreecommitdiff
path: root/src/util.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/util.c')
-rw-r--r--src/util.c26
1 files changed, 5 insertions, 21 deletions
diff --git a/src/util.c b/src/util.c
index 7e62755..c88eb7b 100644
--- a/src/util.c
+++ b/src/util.c
@@ -1,4 +1,4 @@
-#include "config.h"
+#include <s.h>
#include <errno.h>
#include <stdio.h>
@@ -11,26 +11,8 @@
-const size_t
-NULL_TERMINATOR = sizeof((char)'\0');
-
-const int
-EXIT_USAGE = 2;
-
-
-
-void
-freeit(const void **const ptr) {
- if (ptr == NULL) {
- return;
- }
-
- free((void *)*ptr);
- *ptr = NULL;
-}
-
int
-slurp(const char *const filename, char **out) {
+slurp(const char *const filename, size_t *const outlen, char **out) {
int rc = -1;
FILE *file = NULL;
@@ -73,6 +55,7 @@ slurp(const char *const filename, char **out) {
}
str[size] = '\0';
*out = str;
+ *outlen = size;
rc = 0;
out:
@@ -84,7 +67,8 @@ out:
}
if (rc) {
if (str != NULL) {
- freeit((void *)&str);
+ free(str);
+ str = NULL;
}
}
return rc;