From b49a4a8ee6dc8a32039f3044f252bad89885b674 Mon Sep 17 00:00:00 2001 From: Alan Cox Date: Wed, 20 May 2015 23:30:47 +0100 Subject: [PATCH] rm: downsize, fix buffers --- Applications/util/rm.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Applications/util/rm.c b/Applications/util/rm.c index 6fc45566..9280c487 100644 --- a/Applications/util/rm.c +++ b/Applications/util/rm.c @@ -3,6 +3,12 @@ #include #include +/* FIXME: need -r -v -i etc */ +static void writes(int fd, const char *p) +{ + write(fd, p, strlen(p)); +} + char *basename(char *name) { char *base = rindex(name, '/'); @@ -14,12 +20,16 @@ int main(int argc, const char *argv[]) { int i /*, recurse = 0, interact =0 */ ; struct stat sbuf; + int err = 1; for (i = 1; i < argc; i++) { if (argv[i][0] != '-') { if (!lstat(argv[i], &sbuf)) { if (unlink(argv[i])) { - fprintf(stderr, "rm: could not remove %s\n", argv[i]); + writes(2, argv[0]); + writes(2, ": cannot remove '"); + writes(2, argv[i]); + perror("': "); } } } -- 2.34.1