1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-30 22:43:12 +03:00
2000-09-29  Ulrich Drepper  <drepper@redhat.com>

	* elf/chroot_canon.c: Don't report a failure if the last path
	component is not available.
	* elf/ldconfig.c (parse_conf): Use canonicalized name when reporting
	error.

	* elf/cache.c (print_cache): Use stat64 instead of stat.
	* elf/ldconfig.c (chroot_stat): Likewise.
	(create_links): Likewise.
	(manual_link): Likewise.
	(search_dir): Likewise.
	* elf/readlib.c (process_file): Likewise.

	* Makefile (install): Set LC_ALL and LANGUAGE to C before running
	ldconfig.

2000-09-29  Jakub Jelinek  <jakub@redhat.com>

	* elf/chroot_canon.c: New file.
	* elf/Makefile: Build and distribute it.
	* elf/ldconfig.h (process_file): Add real_file_name argument.
	(chroot_canon): Add prototype.
	* elf/ldconfig.c (cache_file): Remove const.
	(chroot_stat): New.
	(create_links): Add real_path argument.
	If opt_chroot, maintain both real and given filenames.
	(manual_link): Likewise.
	(search_dir): Likewise.
	(parse_conf): If opt_chroot, use chroot_canon to find the real
	config file.
	(main): For -r, try to use chroot, if it fails, leave opt_chroot set
	and use chroot_canon where appropriate to do the same as if chroot
	succeeded.
	* elf/readlib.c (process_file): Add real_file_name argument, pass it
	to fopen.

2000-09-29  Ulrich Drepper  <drepper@redhat.com>

	* math/complex.h (_Complex): We can be more specific when _Complex
	is defined by the compiler.
This commit is contained in:
Ulrich Drepper
2000-09-30 00:54:42 +00:00
parent 955821742e
commit b4a555d6f4
9 changed files with 438 additions and 56 deletions

View File

@ -68,11 +68,11 @@ static struct known_names known_libs [] =
/* Returns 0 if everything is ok, != 0 in case of error. */
int
process_file (const char *file_name, const char *lib, int *flag,
char **soname, int is_link)
process_file (const char *real_file_name, const char *file_name,
const char *lib, int *flag, char **soname, int is_link)
{
FILE *file;
struct stat statbuf;
struct stat64 statbuf;
void *file_contents;
int ret;
@ -83,7 +83,7 @@ process_file (const char *file_name, const char *lib, int *flag,
*flag = FLAG_ANY;
*soname = NULL;
file = fopen (file_name, "rb");
file = fopen (real_file_name, "rb");
if (file == NULL)
{
/* No error for stale symlink. */
@ -93,7 +93,7 @@ process_file (const char *file_name, const char *lib, int *flag,
return 1;
}
if (fstat (fileno (file), &statbuf) < 0)
if (fstat64 (fileno (file), &statbuf) < 0)
{
error (0, 0, _("Cannot fstat file %s.\n"), file_name);
fclose (file);