Group :: Development/Python3
RPM: python3
Main Changelog Spec Patches Sources Download Gear Bugs e FR Repocop
Patch: python3-ignore-env-trust-security.patch
Download
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);
}