summaryrefslogtreecommitdiffstats
path: root/daemon/link.c
diff options
context:
space:
mode:
authorJim Meyering <meyering@redhat.com>2009-08-11 15:59:56 +0200
committerJim Meyering <meyering@redhat.com>2009-08-13 14:45:34 +0200
commit84fc760439e82e6b3616abd0d1f9bd7d7eb01ec0 (patch)
tree5ac525b34b3bf5b3ef336f567c72cd8859b18ab6 /daemon/link.c
parent79b5084f70cb67c37dd7cbe60821a78981fd8d59 (diff)
downloadlibguestfs-84fc760439e82e6b3616abd0d1f9bd7d7eb01ec0.tar.gz
libguestfs-84fc760439e82e6b3616abd0d1f9bd7d7eb01ec0.tar.xz
libguestfs-84fc760439e82e6b3616abd0d1f9bd7d7eb01ec0.zip
generator.ml: use new "Pathname" designation
Nearly every file-related function in daemons/*.c is affected: Remove this pair of statements from each affected do_* function: - NEED_ROOT (return -1); - ABS_PATH (dir, return -1); and change the type of the corresponding parameter to "const char *". * src/generator.ml: Emit NEED_ROOT just once, even when there are two or more Pathname args.
Diffstat (limited to 'daemon/link.c')
-rw-r--r--daemon/link.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/daemon/link.c b/daemon/link.c
index 9129b5c9..a77c2e8a 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);
}