diff options
Diffstat (limited to 'statuses/tools.c')
-rw-r--r-- | statuses/tools.c | 37 |
1 files changed, 35 insertions, 2 deletions
diff --git a/statuses/tools.c b/statuses/tools.c index 1e0385d..7a4a677 100644 --- a/statuses/tools.c +++ b/statuses/tools.c @@ -1,6 +1,9 @@ +#include <stdio.h> +#include <fcntl.h> +#include <unistd.h> #include "tools.h" -char powertochar(int power) +char powerToChar(int power) { switch(power) { @@ -19,6 +22,36 @@ char powertochar(int power) case 6: return 'E'; } - + return '?'; } + + +void statusError(char *where, char *what, char *extra) +{ + fprintf(stderr, "%s: %s", where, what); + if (extra) + fprintf(stderr, " -- %s", extra); + fputs("\n", stderr); +} + + +ssize_t fileRead(char *buf, size_t bufsize, char *file) +{ + int fd; + int readbytes; + + fd = open(file, 0); + if (fd < 0) + return -1; + + readbytes = read(fd, buf, bufsize - 1); + close(fd); + + if (readbytes > 0) + buf[readbytes] = '\0'; + else + buf[0] = '\0'; + + return readbytes; +}
\ No newline at end of file |