https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65018

            Bug ID: 65018
           Summary: Use secure_getenv when available
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: redi at gcc dot gnu.org

The calls to getenv in the following files should use the GNU extension
secure_getenv:

include/ext/mt_allocator.h:      _M_force_new(std::getenv("GLIBCXX_FORCE_NEW")
? true : false)
include/ext/mt_allocator.h:                         
std::getenv("GLIBCXX_FORCE_NEW") ? true : false);
include/ext/pool_allocator.h:         if (std::getenv("GLIBCXX_FORCE_NEW"))
include/profile/impl/profiler_trace.h:    char* __env_value =
std::getenv(__env_var);
include/profile/impl/profiler_trace.h:    char* __env_trace_file_name =
std::getenv(_GLIBCXX_PROFILE_TRACE_ENV_VAR);
include/profile/impl/profiler_trace.h:      =
std::getenv(_GLIBCXX_PROFILE_MAX_WARN_COUNT_ENV_VAR);
include/profile/impl/profiler_trace.h:      const char* __env_value =
std::getenv(__factor->__env_var);
src/c++11/debug.cc:    const char* __nptr =
std::getenv("GLIBCXX_DEBUG_MESSAGE_LENGTH");
src/c++98/localename.cc:            char* __env = std::getenv("LC_ALL");
src/c++98/localename.cc:                __env = std::getenv("LANG");
src/c++98/localename.cc:                      __env =
std::getenv(_S_categories[__i]);
src/c++98/localename.cc:                      __env =
std::getenv(_S_categories[__i]);
src/c++98/localename.cc:                        __env =
std::getenv(_S_categories[__i]);


>From Jakub on IRC: "note that at some point, there used to be __secure_getenv
instead. perhaps look at libgfortran configury what it does for this"

Reply via email to