mirror of
git://sourceware.org/git/glibc.git
synced 2025-04-06 14:10:30 +08:00
(_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:
parent
523cf3e81d
commit
97373eb4d3
@ -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. */
|
||||
|
Loading…
x
Reference in New Issue
Block a user