source:
roaraudio/libroar/file.c
@
208:d93b6c1e83b7
Last change on this file since 208:d93b6c1e83b7 was 208:d93b6c1e83b7, checked in by phi, 16 years ago | |
---|---|
File size: 409 bytes |
Line | |
---|---|
1 | //file.c: |
2 | |
3 | #include "libroar.h" |
4 | |
5 | #define BUFSIZE 8192 |
6 | #define BUFMAX 65536 |
7 | |
8 | ssize_t roar_file_send_raw (int out, int in) { |
9 | ssize_t r = 0; |
10 | ssize_t ret; |
11 | int len; |
12 | char buf[BUFSIZE]; |
13 | |
14 | #ifdef ROAR_HAVE_LINUX_SENDFILE |
15 | while ((ret = sendfile(out, in, NULL, BUFMAX)) > 0) |
16 | r += ret; |
17 | #endif |
18 | |
19 | // TODO: try mmap here! |
20 | |
21 | while ((len = read(in, buf, BUFSIZE)) > 0) |
22 | r += write(out, buf, len); |
23 | |
24 | return r; |
25 | } |
26 | |
27 | //ll |
Note: See TracBrowser
for help on using the repository browser.