(_nl_find_locale): Use _nl_find_locale to get language part it drop

the value is path element is contained.
This commit is contained in:
Ulrich Drepper 1998-05-20 12:10:21 +00:00
parent 523cf3e81d
commit 97373eb4d3

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1996 Free Software Foundation, Inc.
/* Copyright (C) 1996, 1998 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1996.
@ -20,6 +20,7 @@
#include <locale.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include "localeinfo.h"
@ -61,7 +62,11 @@ _nl_find_locale (const char *locale_path, size_t locale_path_len,
const char *revision;
struct loaded_l10nfile *locale_file;
if ((*name)[0] == '\0')
if ((*name)[0] == '\0'
/* In SUID binaries we must not allow people to access files
outside the dedicated locale directories. */
|| (__libc_enable_secure
&& memchr (*name, '/', _nl_find_language (*name) - *name) != NULL))
{
/* The user decides which locale to use by setting environment
variables. */