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

Reply via email to