X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=daemon%2Flink.c;h=a77c2e8a85b57ba4fa858378219069977002fe64;hp=9129b5c99863781933889321440cf323528b6597;hb=13432f02ca29eecaa61c8d66c7c52f9b70b2b3be;hpb=6bda071b5cd8393b37653687027c4ae6c6cf3804 diff --git a/daemon/link.c b/daemon/link.c index 9129b5c..a77c2e8 100644 --- a/daemon/link.c +++ b/daemon/link.c @@ -28,15 +28,12 @@ #include "actions.h" char * -do_readlink (char *path) +do_readlink (const char *path) { ssize_t r; char *ret; char link[PATH_MAX]; - NEED_ROOT (return NULL); - ABS_PATH (path, return NULL); - CHROOT_IN; r = readlink (path, link, sizeof link); CHROOT_OUT; @@ -62,10 +59,6 @@ _link (const char *flag, int symbolic, const char *target, const char *linkname) char *buf_linkname; char *buf_target; - NEED_ROOT (return -1); - ABS_PATH (linkname, return -1); - /* but target does not need to be absolute */ - /* Prefix linkname with sysroot. */ buf_linkname = sysroot_path (linkname); if (!buf_linkname) { @@ -113,25 +106,25 @@ _link (const char *flag, int symbolic, const char *target, const char *linkname) } int -do_ln (char *target, char *linkname) +do_ln (const char *target, const char *linkname) { return _link (NULL, 0, target, linkname); } int -do_ln_f (char *target, char *linkname) +do_ln_f (const char *target, const char *linkname) { return _link ("-f", 0, target, linkname); } int -do_ln_s (char *target, char *linkname) +do_ln_s (const char *target, const char *linkname) { return _link ("-s", 1, target, linkname); } int -do_ln_sf (char *target, char *linkname) +do_ln_sf (const char *target, const char *linkname) { return _link ("-sf", 1, target, linkname); }