summaryrefslogtreecommitdiff
path: root/src/minutils/s6-swapoff.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/minutils/s6-swapoff.c')
-rw-r--r--src/minutils/s6-swapoff.c54
1 files changed, 0 insertions, 54 deletions
diff --git a/src/minutils/s6-swapoff.c b/src/minutils/s6-swapoff.c
deleted file mode 100644
index 00df142..0000000
--- a/src/minutils/s6-swapoff.c
+++ /dev/null
@@ -1,54 +0,0 @@
-/* ISC license. */
-
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/swap.h>
-#include <errno.h>
-#include <skalibs/bytestr.h>
-#include <skalibs/buffer.h>
-#include <skalibs/strerr.h>
-#include <skalibs/stralloc.h>
-#include <skalibs/djbunix.h>
-#include <skalibs/skamisc.h>
-
-#define USAGE "s6-swapoff device <or> s6-swapoff -a"
-
-#define BUFSIZE 4095
-
-static int swapoffall ( )
-{
- char buf[BUFSIZE+1] ;
- buffer b ;
- stralloc sa = STRALLOC_ZERO ;
- int e = 0 ;
- int r ;
- int fd = open_readb("/proc/swaps") ;
- if (fd < 0) strerr_diefu1sys(111, "open_readb /proc/swaps") ;
- buffer_init(&b, &buffer_read, fd, buf, BUFSIZE+1) ;
- if (skagetln(&b, &sa, '\n') < 0) strerr_diefu1sys(111, "skagetln") ;
- for (;;)
- {
- size_t n ;
- sa.len = 0 ;
- r = skagetln(&b, &sa, '\n') ;
- if (r < 0) strerr_diefu1sys(111, "skagetln") ;
- if (!r) break ;
- n = byte_chr(sa.s, sa.len, ' ') ;
- if (n >= sa.len) strerr_dief1x(111, "invalid line in /proc/swaps") ;
- sa.s[n] = 0 ;
- if (swapoff(sa.s) < 0) { e++ ; strerr_warnwu2sys("swapoff ", sa.s) ; }
- }
- fd_close(fd) ;
- stralloc_free(&sa) ;
- return e ;
-}
-
-int main (int argc, char const *const *argv)
-{
- PROG = "s6-swapoff" ;
- if (argc < 2) strerr_dieusage(100, USAGE) ;
- if ((argv[1][0] == '-') && (argv[1][1] == 'a') && !argv[1][2])
- return swapoffall() ;
- if (swapoff(argv[1]) == -1) strerr_diefu2sys(111, "swapoff ", argv[1]) ;
- return 0 ;
-}