1 /* ISC license. */
2 
3 #include <skalibs/allreadwrite.h>
4 #include <skalibs/buffer.h>
5 #include <skalibs/djbunix.h>
6 #include <skalibs/skamisc.h>
7 #include <skalibs/unix-transactional.h>
8 
opengetlnclose(char const * fn,stralloc * sa,int sep)9 int opengetlnclose (char const *fn, stralloc *sa, int sep)
10 {
11   char buf[BUFFER_INSIZE] ;
12   buffer b ;
13   int r ;
14   int fd = open_readb(fn) ;
15   if (fd < 0) return -1 ;
16   buffer_init(&b, &fd_readv, fd, buf, BUFFER_INSIZE) ;
17   r = skagetln(&b, sa, sep) ;
18   fd_close(fd) ;
19   return r ;
20 }
21