Move copy_all_fd from dvm_file_editor.c to ioall.c

It is useful in e.g. qfile-agent-dvm.
This commit is contained in:
Rafal Wojtczuk 2011-03-11 11:57:16 +01:00
父節點 64bce77ef7
當前提交 bd89fa0631
共有 3 個檔案被更改,包括 22 行新增21 行删除

查看文件

@ -21,27 +21,6 @@ char *get_filename()
return retname;
}
int copy_fd_all(int fdout, int fdin)
{
int ret;
char buf[4096];
for (;;) {
ret = read(fdin, buf, sizeof(buf));
if (!ret)
break;
if (ret < 0) {
perror("read");
return 0;
}
if (!write_all(fdout, buf, ret)) {
perror("write");
return 0;
}
}
return 1;
}
void copy_file(char *filename)
{
int fd = open(filename, O_WRONLY | O_CREAT, 0600);

查看文件

@ -59,3 +59,24 @@ int read_all(int fd, void *buf, int size)
// fprintf(stderr, "read %d bytes\n", size);
return 1;
}
int copy_fd_all(int fdout, int fdin)
{
int ret;
char buf[4096];
for (;;) {
ret = read(fdin, buf, sizeof(buf));
if (!ret)
break;
if (ret < 0) {
perror("read");
return 0;
}
if (!write_all(fdout, buf, ret)) {
perror("write");
return 0;
}
}
return 1;
}

查看文件

@ -1,2 +1,3 @@
int write_all(int fd, void *buf, int size);
int read_all(int fd, void *buf, int size);
int copy_fd_all(int fdout, int fdin);