Commit e3642c43 added lxc_copy_file for use in 64e1ae63. The use of it was removed in commit 1bc60a65. Removing it reduces dead code and the footprint of liblxc.
Signed-off-by: Dwight Engen <dwight.en...@oracle.com> --- src/lxc/utils.c | 71 --------------------------------------------------------- src/lxc/utils.h | 1 - 2 files changed, 72 deletions(-) diff --git a/src/lxc/utils.c b/src/lxc/utils.c index f4ba905..ecf9d2c 100644 --- a/src/lxc/utils.c +++ b/src/lxc/utils.c @@ -39,77 +39,6 @@ lxc_log_define(lxc_utils, lxc); -int lxc_copy_file(const char *srcfile, const char *dstfile) -{ - void *srcaddr = NULL, *dstaddr; - struct stat stat; - int srcfd, dstfd, ret = -1; - char c = '\0'; - - dstfd = open(dstfile, O_CREAT | O_EXCL | O_RDWR, 0600); - if (dstfd < 0) { - SYSERROR("failed to creat '%s'", dstfile); - goto out; - } - - srcfd = open(srcfile, O_RDONLY); - if (srcfd < 0) { - SYSERROR("failed to open '%s'", srcfile); - goto err; - } - - if (fstat(srcfd, &stat)) { - SYSERROR("failed to stat '%s'", srcfile); - goto err; - } - - if (!stat.st_size) { - INFO("copy '%s' which is an empty file", srcfile); - ret = 0; - goto out_close; - } - - if (lseek(dstfd, stat.st_size - 1, SEEK_SET) < 0) { - SYSERROR("failed to seek dest file '%s'", dstfile); - goto err; - } - - /* fixup length */ - if (write(dstfd, &c, 1) < 0) { - SYSERROR("failed to write to '%s'", dstfile); - goto err; - } - - srcaddr = mmap(NULL, stat.st_size, PROT_READ, MAP_SHARED, srcfd, 0L); - if (srcaddr == MAP_FAILED) { - SYSERROR("failed to mmap '%s'", srcfile); - goto err; - } - - dstaddr = mmap(NULL, stat.st_size, PROT_WRITE, MAP_SHARED, dstfd, 0L); - if (dstaddr == MAP_FAILED) { - SYSERROR("failed to mmap '%s'", dstfile); - goto err; - } - - ret = 0; - - memcpy(dstaddr, srcaddr, stat.st_size); - - munmap(dstaddr, stat.st_size); -out_mmap: - if (srcaddr) - munmap(srcaddr, stat.st_size); -out_close: - close(dstfd); - close(srcfd); -out: - return ret; -err: - unlink(dstfile); - goto out_mmap; -} - static int mount_fs(const char *source, const char *target, const char *type) { /* the umount may fail */ diff --git a/src/lxc/utils.h b/src/lxc/utils.h index bf5b6cd..8954503 100644 --- a/src/lxc/utils.h +++ b/src/lxc/utils.h @@ -23,7 +23,6 @@ #ifndef _utils_h #define _utils_h -extern int lxc_copy_file(const char *src, const char *dst); extern int lxc_setup_fs(void); extern int get_u16(unsigned short *val, const char *arg, int base); extern int mkdir_p(const char *dir, mode_t mode); -- 1.7.12.3 ------------------------------------------------------------------------------ Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis & visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter _______________________________________________ Lxc-devel mailing list Lxc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-devel