summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2007-03-01 08:06:24 +0100
committerJim Meyering <jim@meyering.net>2007-03-01 08:06:24 +0100
commitf6f2846bd8aba934fd823e71d1de66f0d2806756 (patch)
tree0e99879409bea2527445aebab975e392f575ce61 /src
parente5dbc718410926dac32cf55dc3061c4b9e6c4946 (diff)
downloadcoreutils-f6f2846bd8aba934fd823e71d1de66f0d2806756.tar.xz
* bootstrap.conf (gnulib_modules): Replace xreadlink with
xreadlink-with-size. Add xreadlink. * src/copy.c (copy_internal): Update. * src/ls.c (is_directory): Update. * src/stat.c (print_stat): Update. * src/readlink.c (main): Use the one-argument xreadlink function.
Diffstat (limited to 'src')
-rw-r--r--src/copy.c5
-rw-r--r--src/ls.c2
-rw-r--r--src/readlink.c4
-rw-r--r--src/stat.c4
4 files changed, 8 insertions, 7 deletions
diff --git a/src/copy.c b/src/copy.c
index 99e2ca40c..000c248eb 100644
--- a/src/copy.c
+++ b/src/copy.c
@@ -1720,7 +1720,7 @@ copy_internal (char const *src_name, char const *dst_name,
}
else if (S_ISLNK (src_mode))
{
- char *src_link_val = xreadlink (src_name, src_sb.st_size);
+ char *src_link_val = xreadlink_with_size (src_name, src_sb.st_size);
if (src_link_val == NULL)
{
error (0, errno, _("cannot read symbolic link %s"), quote (src_name));
@@ -1740,7 +1740,8 @@ copy_internal (char const *src_name, char const *dst_name,
FIXME: This behavior isn't documented, and seems wrong
in some cases, e.g., if the destination symlink has the
wrong ownership, permissions, or time stamps. */
- char *dest_link_val = xreadlink (dst_name, dst_sb.st_size);
+ char *dest_link_val =
+ xreadlink_with_size (dst_name, dst_sb.st_size);
if (STREQ (dest_link_val, src_link_val))
same_link = true;
free (dest_link_val);
diff --git a/src/ls.c b/src/ls.c
index 364ea9140..3d4890080 100644
--- a/src/ls.c
+++ b/src/ls.c
@@ -2798,7 +2798,7 @@ is_directory (const struct fileinfo *f)
static void
get_link_name (char const *filename, struct fileinfo *f, bool command_line_arg)
{
- f->linkname = xreadlink (filename, f->stat.st_size);
+ f->linkname = xreadlink_with_size (filename, f->stat.st_size);
if (f->linkname == NULL)
file_failure (command_line_arg, _("cannot read symbolic link %s"),
filename);
diff --git a/src/readlink.c b/src/readlink.c
index 800d235b4..121c7ffcf 100644
--- a/src/readlink.c
+++ b/src/readlink.c
@@ -1,5 +1,5 @@
/* readlink -- display value of a symbolic link.
- Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -159,7 +159,7 @@ main (int argc, char **argv)
value = (can_mode != -1
? canonicalize_filename_mode (fname, can_mode)
- : xreadlink (fname, 1024));
+ : xreadlink (fname));
if (value)
{
printf ("%s%s", value, (no_newline ? "" : "\n"));
diff --git a/src/stat.c b/src/stat.c
index 315fe0c65..ca8423677 100644
--- a/src/stat.c
+++ b/src/stat.c
@@ -1,5 +1,5 @@
/* stat.c -- display file or file system status
- Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation.
+ Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -497,7 +497,7 @@ print_stat (char *pformat, size_t prefix_len, char m,
out_string (pformat, prefix_len, quote (filename));
if (S_ISLNK (statbuf->st_mode))
{
- char *linkname = xreadlink (filename, statbuf->st_size);
+ char *linkname = xreadlink_with_size (filename, statbuf->st_size);
if (linkname == NULL)
{
error (0, errno, _("cannot read symbolic link %s"),