Linux vps-61133.fhnet.fr 4.9.0-19-amd64 #1 SMP Debian 4.9.320-2 (2022-06-30) x86_64
Apache/2.4.25 (Debian)
Server IP : 93.113.207.21 & Your IP : 216.73.216.122
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
local /
lib /
python3.10 /
ctypes /
test /
Delete
Unzip
Name
Size
Permission
Date
Action
__pycache__
[ DIR ]
drwxr-sr-x
2025-06-04 09:23
__init__.py
445
B
-rw-r--r--
2025-06-04 09:23
__main__.py
68
B
-rw-r--r--
2025-06-04 09:23
test_anon.py
2.48
KB
-rw-r--r--
2025-06-04 09:23
test_array_in_pointer.py
1.7
KB
-rw-r--r--
2025-06-04 09:23
test_arrays.py
7.33
KB
-rw-r--r--
2025-06-04 09:23
test_as_parameter.py
6.76
KB
-rw-r--r--
2025-06-04 09:23
test_bitfields.py
10.11
KB
-rw-r--r--
2025-06-04 09:23
test_buffers.py
2.55
KB
-rw-r--r--
2025-06-04 09:23
test_bytes.py
1.94
KB
-rw-r--r--
2025-06-04 09:23
test_byteswap.py
11.14
KB
-rw-r--r--
2025-06-04 09:23
test_callbacks.py
10.33
KB
-rw-r--r--
2025-06-04 09:23
test_cast.py
3.64
KB
-rw-r--r--
2025-06-04 09:23
test_cfuncs.py
7.5
KB
-rw-r--r--
2025-06-04 09:23
test_checkretval.py
968
B
-rw-r--r--
2025-06-04 09:23
test_delattr.py
533
B
-rw-r--r--
2025-06-04 09:23
test_errno.py
2.12
KB
-rw-r--r--
2025-06-04 09:23
test_find.py
4.36
KB
-rw-r--r--
2025-06-04 09:23
test_frombuffer.py
5.09
KB
-rw-r--r--
2025-06-04 09:23
test_funcptr.py
3.93
KB
-rw-r--r--
2025-06-04 09:23
test_functions.py
12.21
KB
-rw-r--r--
2025-06-04 09:23
test_incomplete.py
1023
B
-rw-r--r--
2025-06-04 09:23
test_init.py
1.01
KB
-rw-r--r--
2025-06-04 09:23
test_internals.py
2.57
KB
-rw-r--r--
2025-06-04 09:23
test_keeprefs.py
3.96
KB
-rw-r--r--
2025-06-04 09:23
test_libc.py
1005
B
-rw-r--r--
2025-06-04 09:23
test_loading.py
6.97
KB
-rw-r--r--
2025-06-04 09:23
test_macholib.py
2.07
KB
-rw-r--r--
2025-06-04 09:23
test_memfunctions.py
3.22
KB
-rw-r--r--
2025-06-04 09:23
test_numbers.py
9.25
KB
-rw-r--r--
2025-06-04 09:23
test_objects.py
1.64
KB
-rw-r--r--
2025-06-04 09:23
test_parameters.py
10.83
KB
-rw-r--r--
2025-06-04 09:23
test_pep3118.py
8.48
KB
-rw-r--r--
2025-06-04 09:23
test_pickling.py
2.17
KB
-rw-r--r--
2025-06-04 09:23
test_pointers.py
7.07
KB
-rw-r--r--
2025-06-04 09:23
test_prototypes.py
6.68
KB
-rw-r--r--
2025-06-04 09:23
test_python_api.py
2.7
KB
-rw-r--r--
2025-06-04 09:23
test_random_things.py
2.77
KB
-rw-r--r--
2025-06-04 09:23
test_refcounts.py
3.06
KB
-rw-r--r--
2025-06-04 09:23
test_repr.py
842
B
-rw-r--r--
2025-06-04 09:23
test_returnfuncptrs.py
2.83
KB
-rw-r--r--
2025-06-04 09:23
test_simplesubclasses.py
1.26
KB
-rw-r--r--
2025-06-04 09:23
test_sizes.py
804
B
-rw-r--r--
2025-06-04 09:23
test_slicing.py
5.88
KB
-rw-r--r--
2025-06-04 09:23
test_stringptr.py
2.54
KB
-rw-r--r--
2025-06-04 09:23
test_strings.py
7.13
KB
-rw-r--r--
2025-06-04 09:23
test_struct_fields.py
2.92
KB
-rw-r--r--
2025-06-04 09:23
test_structures.py
26.77
KB
-rw-r--r--
2025-06-04 09:23
test_unaligned_structures.py
1.11
KB
-rw-r--r--
2025-06-04 09:23
test_unicode.py
1.95
KB
-rw-r--r--
2025-06-04 09:23
test_values.py
3.78
KB
-rw-r--r--
2025-06-04 09:23
test_varsize_struct.py
1.8
KB
-rw-r--r--
2025-06-04 09:23
test_win32.py
4.91
KB
-rw-r--r--
2025-06-04 09:23
test_wintypes.py
1.36
KB
-rw-r--r--
2025-06-04 09:23
Save
Rename
from ctypes import * import os import shutil import subprocess import sys import unittest import test.support from test.support import import_helper from test.support import os_helper from ctypes.util import find_library libc_name = None def setUpModule(): global libc_name if os.name == "nt": libc_name = find_library("c") elif sys.platform == "cygwin": libc_name = "cygwin1.dll" else: libc_name = find_library("c") if test.support.verbose: print("libc_name is", libc_name) class LoaderTest(unittest.TestCase): unknowndll = "xxrandomnamexx" def test_load(self): if libc_name is None: self.skipTest('could not find libc') CDLL(libc_name) CDLL(os.path.basename(libc_name)) self.assertRaises(OSError, CDLL, self.unknowndll) def test_load_version(self): if libc_name is None: self.skipTest('could not find libc') if os.path.basename(libc_name) != 'libc.so.6': self.skipTest('wrong libc path for test') cdll.LoadLibrary("libc.so.6") # linux uses version, libc 9 should not exist self.assertRaises(OSError, cdll.LoadLibrary, "libc.so.9") self.assertRaises(OSError, cdll.LoadLibrary, self.unknowndll) def test_find(self): for name in ("c", "m"): lib = find_library(name) if lib: cdll.LoadLibrary(lib) CDLL(lib) @unittest.skipUnless(os.name == "nt", 'test specific to Windows') def test_load_library(self): # CRT is no longer directly loadable. See issue23606 for the # discussion about alternative approaches. #self.assertIsNotNone(libc_name) if test.support.verbose: print(find_library("kernel32")) print(find_library("user32")) if os.name == "nt": windll.kernel32.GetModuleHandleW windll["kernel32"].GetModuleHandleW windll.LoadLibrary("kernel32").GetModuleHandleW WinDLL("kernel32").GetModuleHandleW # embedded null character self.assertRaises(ValueError, windll.LoadLibrary, "kernel32\0") @unittest.skipUnless(os.name == "nt", 'test specific to Windows') def test_load_ordinal_functions(self): import _ctypes_test dll = WinDLL(_ctypes_test.__file__) # We load the same function both via ordinal and name func_ord = dll[2] func_name = dll.GetString # addressof gets the address where the function pointer is stored a_ord = addressof(func_ord) a_name = addressof(func_name) f_ord_addr = c_void_p.from_address(a_ord).value f_name_addr = c_void_p.from_address(a_name).value self.assertEqual(hex(f_ord_addr), hex(f_name_addr)) self.assertRaises(AttributeError, dll.__getitem__, 1234) @unittest.skipUnless(os.name == "nt", 'Windows-specific test') def test_1703286_A(self): from _ctypes import LoadLibrary, FreeLibrary # On winXP 64-bit, advapi32 loads at an address that does # NOT fit into a 32-bit integer. FreeLibrary must be able # to accept this address. # These are tests for https://www.python.org/sf/1703286 handle = LoadLibrary("advapi32") FreeLibrary(handle) @unittest.skipUnless(os.name == "nt", 'Windows-specific test') def test_1703286_B(self): # Since on winXP 64-bit advapi32 loads like described # above, the (arbitrarily selected) CloseEventLog function # also has a high address. 'call_function' should accept # addresses so large. from _ctypes import call_function advapi32 = windll.advapi32 # Calling CloseEventLog with a NULL argument should fail, # but the call should not segfault or so. self.assertEqual(0, advapi32.CloseEventLog(None)) windll.kernel32.GetProcAddress.argtypes = c_void_p, c_char_p windll.kernel32.GetProcAddress.restype = c_void_p proc = windll.kernel32.GetProcAddress(advapi32._handle, b"CloseEventLog") self.assertTrue(proc) # This is the real test: call the function via 'call_function' self.assertEqual(0, call_function(proc, (None,))) @unittest.skipUnless(os.name == "nt", 'test specific to Windows') def test_load_dll_with_flags(self): _sqlite3 = import_helper.import_module("_sqlite3") src = _sqlite3.__file__ if src.lower().endswith("_d.pyd"): ext = "_d.dll" else: ext = ".dll" with os_helper.temp_dir() as tmp: # We copy two files and load _sqlite3.dll (formerly .pyd), # which has a dependency on sqlite3.dll. Then we test # loading it in subprocesses to avoid it starting in memory # for each test. target = os.path.join(tmp, "_sqlite3.dll") shutil.copy(src, target) shutil.copy(os.path.join(os.path.dirname(src), "sqlite3" + ext), os.path.join(tmp, "sqlite3" + ext)) def should_pass(command): with self.subTest(command): subprocess.check_output( [sys.executable, "-c", "from ctypes import *; import nt;" + command], cwd=tmp ) def should_fail(command): with self.subTest(command): with self.assertRaises(subprocess.CalledProcessError): subprocess.check_output( [sys.executable, "-c", "from ctypes import *; import nt;" + command], cwd=tmp, stderr=subprocess.STDOUT, ) # Default load should not find this in CWD should_fail("WinDLL('_sqlite3.dll')") # Relative path (but not just filename) should succeed should_pass("WinDLL('./_sqlite3.dll')") # Insecure load flags should succeed # Clear the DLL directory to avoid safe search settings propagating should_pass("windll.kernel32.SetDllDirectoryW(None); WinDLL('_sqlite3.dll', winmode=0)") # Full path load without DLL_LOAD_DIR shouldn't find dependency should_fail("WinDLL(nt._getfullpathname('_sqlite3.dll'), " + "winmode=nt._LOAD_LIBRARY_SEARCH_SYSTEM32)") # Full path load with DLL_LOAD_DIR should succeed should_pass("WinDLL(nt._getfullpathname('_sqlite3.dll'), " + "winmode=nt._LOAD_LIBRARY_SEARCH_SYSTEM32|" + "nt._LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR)") # User-specified directory should succeed should_pass("import os; p = os.add_dll_directory(os.getcwd());" + "WinDLL('_sqlite3.dll'); p.close()") if __name__ == "__main__": unittest.main()