Sisyphus repositório
Última atualização: 1 outubro 2023 | SRPMs: 18631 | Visitas: 37402167
en ru br
ALT Linux repositórios
S:3.11.4-alt3

Group :: Development/Python3
RPM: python3

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs e FR  Repocop 

Patch: python3-ignore-env-trust-security.patch
Download


diff --git a/python3/Python/pylifecycle.c b/python3/Python/pylifecycle.c
index 960a38ae..84524b48 100644
--- a/python3/Python/pylifecycle.c
+++ b/python3/Python/pylifecycle.c
@@ -33,6 +33,7 @@ extern void _PyIO_Fini(void);
 
 #include <locale.h>               // setlocale()
 #include <stdlib.h>               // getenv()
+#include <sys/stat.h>
 
 #if defined(__APPLE__)
 #include <mach-o/loader.h>
@@ -141,6 +142,17 @@ _Py_IsFinalizing(void)
 int (*_PyOS_mystrnicmp_hack)(const char *, const char *, Py_ssize_t) = \
     PyOS_mystrnicmp; /* Python/pystrcmp.o */
 
+static const char *trust_path = "/etc/alt/security/python-trust";
+
+void
+get_py_trust(int *Py_IgnoreEnvironmentFlag)
+{
+    struct stat buffer;
+    int exist = stat(trust_path, &buffer);
+
+    if (exist == 0)
+        *Py_IgnoreEnvironmentFlag = 1;
+}
 
 /* APIs to access the initialization flags
  *
@@ -1297,6 +1309,7 @@ Py_InitializeEx(int install_sigs)
 void
 Py_Initialize(void)
 {
+    get_py_trust(&Py_IgnoreEnvironmentFlag);
     Py_InitializeEx(1);
 }
 
 
projeto & código: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
mantenedor atual: Michael Shigorin
mantenedor da tradução: Fernando Martini aka fmartini © 2009