Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37793779
en ru br
Репозитории ALT

Группа :: Development/Python3
Пакет: python3

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: python3-ignore-env-trust-security.patch
Скачать


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);
 }
 
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin