python-nss-ng 1.0.2__tar.gz → 1.0.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/PKG-INFO +6 -6
  2. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/QUICKSTART.md +3 -3
  3. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/README.md +5 -5
  4. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/MIGRATION.md +5 -5
  5. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/pyproject.toml +1 -1
  6. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/py_nspr_common.h +3 -3
  7. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/py_nss.c +4 -0
  8. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/.clangd +0 -0
  9. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/CONTRIBUTING.md +0 -0
  10. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/LICENSE +0 -0
  11. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/LICENSE.gpl +0 -0
  12. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/LICENSE.lgpl +0 -0
  13. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/LICENSE.mpl +0 -0
  14. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/LICENSES/Apache-2.0.txt +0 -0
  15. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/LICENSES/MPL-2.0.txt +0 -0
  16. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/MANIFEST.in +0 -0
  17. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/Makefile +0 -0
  18. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/REUSE.toml +0 -0
  19. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/ChangeLog +0 -0
  20. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/MAKEFILE_MIGRATION.md +0 -0
  21. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/MANYLINUX_CONFIG.md +0 -0
  22. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/MUTATION_TESTING.md +0 -0
  23. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/TESTING.md +0 -0
  24. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/examples/cert_dump.py +0 -0
  25. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/examples/cert_trust.py +0 -0
  26. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/examples/httplib_example.py +0 -0
  27. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/examples/pbkdf2_example.py +0 -0
  28. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/examples/ssl_cipher_info.py +0 -0
  29. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/examples/ssl_example.py +0 -0
  30. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/examples/ssl_version_range.py +0 -0
  31. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/examples/verify_cert.py +0 -0
  32. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/examples/verify_server.py +0 -0
  33. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/doc/get_api +0 -0
  34. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/meson.build +0 -0
  35. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/pyproject.toml +0 -0
  36. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/src/deprecations.py +0 -0
  37. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/src/deprecations.py.meta +0 -0
  38. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/src/nss_context.py +0 -0
  39. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/src/nss_context.py.meta +0 -0
  40. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/src/secure_logging.py +0 -0
  41. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/src/secure_logging.py.meta +0 -0
  42. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/conftest.py +0 -0
  43. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/exceptions.py +0 -0
  44. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/run_tests +0 -0
  45. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/setup_certs.py +0 -0
  46. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_cert_components.py +0 -0
  47. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_cert_request.py +0 -0
  48. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_certificate_advanced.py +0 -0
  49. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_cipher.py +0 -0
  50. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_client_server.py +0 -0
  51. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_deprecations.py +0 -0
  52. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_digest.py +0 -0
  53. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_documentation_accuracy.py +0 -0
  54. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_error_messages.py +0 -0
  55. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_examples.py +0 -0
  56. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_integration.py +0 -0
  57. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_misc.py +0 -0
  58. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_nss_context.py +0 -0
  59. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_ocsp.py +0 -0
  60. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_performance.py +0 -0
  61. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_pkcs12.py +0 -0
  62. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_platform_specific.py +0 -0
  63. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_property_based.py +0 -0
  64. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_secure_logging.py +0 -0
  65. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_security.py +0 -0
  66. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_thread_safety.py +0 -0
  67. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_type_hints.py +0 -0
  68. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/test_util.py +0 -0
  69. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/mutants/test/util.py +0 -0
  70. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/pyrightconfig.json +0 -0
  71. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/scripts/README.md +0 -0
  72. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/scripts/run-all-tests.sh +0 -0
  73. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/NSPRerrs.h +0 -0
  74. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/SECerrs.h +0 -0
  75. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/SSLerrs.h +0 -0
  76. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/__init__.py +0 -0
  77. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/deprecations.py +0 -0
  78. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/io.pyi +0 -0
  79. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/nss.pyi +0 -0
  80. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/nss_context.py +0 -0
  81. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/py_nspr_error.c +0 -0
  82. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/py_nspr_error.h +0 -0
  83. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/py_nspr_io.c +0 -0
  84. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/py_nspr_io.h +0 -0
  85. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/py_nss.h +0 -0
  86. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/py_shared_doc.h +0 -0
  87. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/py_ssl.c +0 -0
  88. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/py_ssl.h +0 -0
  89. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/py_traceback.h +0 -0
  90. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/secure_logging.py +0 -0
  91. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/src/ssl.pyi +0 -0
  92. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/conftest.py +0 -0
  93. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/exceptions.py +0 -0
  94. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/run_tests +0 -0
  95. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/setup_certs.py +0 -0
  96. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_cert_components.py +0 -0
  97. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_cert_request.py +0 -0
  98. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_certificate_advanced.py +0 -0
  99. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_cipher.py +0 -0
  100. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_client_server.py +0 -0
  101. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_deprecations.py +0 -0
  102. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_digest.py +0 -0
  103. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_documentation_accuracy.py +0 -0
  104. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_examples.py +0 -0
  105. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_misc.py +0 -0
  106. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_performance.py +0 -0
  107. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_pkcs12.py +0 -0
  108. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_platform_specific.py +0 -0
  109. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_property_based.py +0 -0
  110. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_secure_logging.py +0 -0
  111. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_security.py +0 -0
  112. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_thread_safety.py +0 -0
  113. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_type_hints.py +0 -0
  114. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_util.py +0 -0
  115. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_zzz_error_messages.py +0 -0
  116. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_zzz_integration.py +0 -0
  117. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_zzz_nonexistent_certs.py +0 -0
  118. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_zzz_nss_context.py +0 -0
  119. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/test_zzz_ocsp.py +0 -0
  120. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/test/util.py +0 -0
  121. {python_nss_ng-1.0.2 → python_nss_ng-1.0.4}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-nss-ng
3
- Version: 1.0.2
3
+ Version: 1.0.4
4
4
  Summary: Python bindings for Network Security Services (NSS) and Netscape Portable Runtime (NSPR)
5
5
  Keywords: nss,nspr,cryptography,ssl,tls,pki,x509,security
6
6
  Author-Email: John Dennis <jdennis@redhat.com>, Matthew Watkins <mwatkins@linuxfoundation.org>
@@ -64,7 +64,7 @@ SPDX-FileCopyrightText: 2025 The Linux Foundation
64
64
 
65
65
  [![Platform Compatibility](https://github.com/ModeSevenIndustrialSolutions/python-nss-ng/actions/workflows/compatibility.yaml/badge.svg)](https://github.com/ModeSevenIndustrialSolutions/python-nss-ng/actions/workflows/compatibility.yaml)
66
66
  [![CI/CD Pipeline](https://github.com/ModeSevenIndustrialSolutions/python-nss-ng/actions/workflows/build-test.yaml/badge.svg)](https://github.com/ModeSevenIndustrialSolutions/python-nss-ng/actions/workflows/build-test.yaml)
67
- [![Python 3.9+](https://img.shields.io/badge/python-3.9+-blue.svg)](https://www.python.org/downloads/)
67
+ [![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)
68
68
  [![License: MPL-2.0](https://img.shields.io/badge/License-MPL%202.0-brightgreen.svg)](https://opensource.org/licenses/MPL-2.0)
69
69
 
70
70
  Python bindings for Network Security Services (NSS) and Netscape Portable
@@ -99,7 +99,7 @@ and build standards:
99
99
 
100
100
  ### Changes Made
101
101
 
102
- - **Python Support**: Now supports Python 3.9, 3.10, 3.11, 3.12, 3.13, and 3.14
102
+ - **Python Support**: Now supports Python 3.10, 3.11, 3.12, 3.13, and 3.14
103
103
  - **Build System**: Migrated from legacy `distutils` to modern `setuptools`
104
104
  with `pyproject.toml`
105
105
  - **Version Management**: Implemented dynamic versioning using
@@ -124,7 +124,7 @@ works with NSS 3.117.
124
124
 
125
125
  - NSS 3.117
126
126
  - NSPR 4.38.2
127
- - Python 3.9, 3.10, 3.11, 3.12, 3.13, 3.14
127
+ - Python 3.10, 3.11, 3.12, 3.13, 3.14
128
128
 
129
129
  ## System Requirements
130
130
 
@@ -156,8 +156,8 @@ brew install nss nspr
156
156
  ### Using uv (Recommended)
157
157
 
158
158
  ```bash
159
- # Create a virtual environment with Python 3.9+
160
- uv venv --python 3.9
159
+ # Create a virtual environment with Python 3.10+
160
+ uv venv --python 3.10
161
161
 
162
162
  # Activate the environment
163
163
  source .venv/bin/activate # Linux/macOS
@@ -34,7 +34,7 @@ brew install nss nspr pkg-config
34
34
 
35
35
  ### Python Requirements
36
36
 
37
- - Python 3.9 or later
37
+ - Python 3.10 or later
38
38
  - pip or uv package manager
39
39
 
40
40
  ## Quick Setup
@@ -50,7 +50,7 @@ git clone https://github.com/ModeSevenIndustrialSolutions/python-nss-ng.git
50
50
  cd python-nss-ng
51
51
 
52
52
  # Create virtual environment and install dependencies
53
- uv venv --python 3.9
53
+ uv venv --python 3.10
54
54
  source .venv/bin/activate # Linux/macOS
55
55
  # or
56
56
  .venv\Scripts\activate # Windows
@@ -78,7 +78,7 @@ pip install -e ".[dev]"
78
78
 
79
79
  ```bash
80
80
  # Check Python version
81
- python --version # Should be 3.9+
81
+ python --version # Should be 3.10+
82
82
 
83
83
  # Check NSS/NSPR installation
84
84
  pkg-config --modversion nss
@@ -7,7 +7,7 @@ SPDX-FileCopyrightText: 2025 The Linux Foundation
7
7
 
8
8
  [![Platform Compatibility](https://github.com/ModeSevenIndustrialSolutions/python-nss-ng/actions/workflows/compatibility.yaml/badge.svg)](https://github.com/ModeSevenIndustrialSolutions/python-nss-ng/actions/workflows/compatibility.yaml)
9
9
  [![CI/CD Pipeline](https://github.com/ModeSevenIndustrialSolutions/python-nss-ng/actions/workflows/build-test.yaml/badge.svg)](https://github.com/ModeSevenIndustrialSolutions/python-nss-ng/actions/workflows/build-test.yaml)
10
- [![Python 3.9+](https://img.shields.io/badge/python-3.9+-blue.svg)](https://www.python.org/downloads/)
10
+ [![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)
11
11
  [![License: MPL-2.0](https://img.shields.io/badge/License-MPL%202.0-brightgreen.svg)](https://opensource.org/licenses/MPL-2.0)
12
12
 
13
13
  Python bindings for Network Security Services (NSS) and Netscape Portable
@@ -42,7 +42,7 @@ and build standards:
42
42
 
43
43
  ### Changes Made
44
44
 
45
- - **Python Support**: Now supports Python 3.9, 3.10, 3.11, 3.12, 3.13, and 3.14
45
+ - **Python Support**: Now supports Python 3.10, 3.11, 3.12, 3.13, and 3.14
46
46
  - **Build System**: Migrated from legacy `distutils` to modern `setuptools`
47
47
  with `pyproject.toml`
48
48
  - **Version Management**: Implemented dynamic versioning using
@@ -67,7 +67,7 @@ works with NSS 3.117.
67
67
 
68
68
  - NSS 3.117
69
69
  - NSPR 4.38.2
70
- - Python 3.9, 3.10, 3.11, 3.12, 3.13, 3.14
70
+ - Python 3.10, 3.11, 3.12, 3.13, 3.14
71
71
 
72
72
  ## System Requirements
73
73
 
@@ -99,8 +99,8 @@ brew install nss nspr
99
99
  ### Using uv (Recommended)
100
100
 
101
101
  ```bash
102
- # Create a virtual environment with Python 3.9+
103
- uv venv --python 3.9
102
+ # Create a virtual environment with Python 3.10+
103
+ uv venv --python 3.10
104
104
 
105
105
  # Activate the environment
106
106
  source .venv/bin/activate # Linux/macOS
@@ -13,7 +13,7 @@ project to bring it up to current Python packaging standards (2025).
13
13
  The python-nss-ng project was originally built with the legacy
14
14
  `distutils` build system. This migration updates the project to:
15
15
 
16
- - Support Python 3.9+ (3.9, 3.10, 3.11, 3.12, 3.13, 3.14)
16
+ - Support Python 3.10+ (3.10, 3.11, 3.12, 3.13, 3.14)
17
17
  - Use modern packaging standards (PEP 517, PEP 518, PEP 621)
18
18
  - Use dynamic versioning from git tags
19
19
  - Support modern development tools (uv, pytest, ruff)
@@ -53,7 +53,7 @@ build-backend = "setuptools.build_meta"
53
53
  [project]
54
54
  name = "python-nss-ng"
55
55
  dynamic = ["version"]
56
- requires-python = ">=3.9"
56
+ requires-python = ">=3.10"
57
57
  # ... modern metadata
58
58
  ```
59
59
 
@@ -155,7 +155,7 @@ dev = [
155
155
 
156
156
  #### Modern Support
157
157
 
158
- - Explicit support: Python 3.9, 3.10, 3.11, 3.12, 3.13, 3.14
158
+ - Explicit support: Python 3.10, 3.11, 3.12, 3.13, 3.14
159
159
  - Modern `setuptools` build backend
160
160
  - Compatible with PEP 517/518 build frontends (pip, build, uv)
161
161
 
@@ -270,7 +270,7 @@ branch = true
270
270
 
271
271
  ```bash
272
272
  # Development environment
273
- uv venv --python 3.9
273
+ uv venv --python 3.10
274
274
  source .venv/bin/activate
275
275
  uv pip install -e ".[dev]"
276
276
  ```
@@ -293,7 +293,7 @@ python -m build
293
293
 
294
294
  ### Breaking Changes
295
295
 
296
- - **Lower Bound Python version**: Now requires Python 3.9+
296
+ - **Lower Bound Python version**: Now requires Python 3.10+
297
297
  - **Build system**: `python setup.py install` no longer recommended
298
298
  - **Import changes**: None (backward compatible)
299
299
 
@@ -11,7 +11,7 @@ build-backend = "mesonpy"
11
11
 
12
12
  [project]
13
13
  name = "python-nss-ng"
14
- version = "1.0.2"
14
+ version = "1.0.4"
15
15
  description = "Python bindings for Network Security Services (NSS) and Netscape Portable Runtime (NSPR)"
16
16
  readme = "README.md"
17
17
  license = "MPL-2.0 OR GPL-2.0-or-later OR LGPL-2.0-or-later"
@@ -9,14 +9,14 @@
9
9
 
10
10
  #define PACKAGE_NAME "nss"
11
11
 
12
- #if PY_VERSION_HEX < 0x03090000
13
- #error "Python version must be at least 3.9"
12
+ #if PY_VERSION_HEX < 0x030A0000
13
+ #error "Python version must be at least 3.10"
14
14
  #endif
15
15
 
16
16
  #define PyNone_Check(x) ((x) == Py_None)
17
17
 
18
18
  /******************************************************************************
19
- * Python 3.9+ *
19
+ * Python 3.10+ *
20
20
  ******************************************************************************/
21
21
 
22
22
  #define IS_PY3K
@@ -1989,6 +1989,7 @@ SECItemConvert(PyObject *obj, SECItem_param **param)
1989
1989
 
1990
1990
  if (PySecItem_Check(obj)) {
1991
1991
  if ((ip = PyMem_MALLOC(sizeof(SECItem_param))) == NULL) {
1992
+ PyErr_NoMemory();
1992
1993
  return 0;
1993
1994
  }
1994
1995
  ip->item = ((SecItem *)obj)->item;
@@ -1997,6 +1998,7 @@ SECItemConvert(PyObject *obj, SECItem_param **param)
1997
1998
  return 1;
1998
1999
  } else if (PyObject_CheckBuffer(obj)) {
1999
2000
  if ((ip = PyMem_MALLOC(sizeof(SECItem_param))) == NULL) {
2001
+ PyErr_NoMemory();
2000
2002
  return 0;
2001
2003
  }
2002
2004
 
@@ -2028,6 +2030,7 @@ SECItemOrNoneConvert(PyObject *obj, SECItem_param **param)
2028
2030
 
2029
2031
  if (PySecItem_Check(obj)) {
2030
2032
  if ((ip = PyMem_MALLOC(sizeof(SECItem_param))) == NULL) {
2033
+ PyErr_NoMemory();
2031
2034
  return 0;
2032
2035
  }
2033
2036
  ip->item = ((SecItem *)obj)->item;
@@ -2036,6 +2039,7 @@ SECItemOrNoneConvert(PyObject *obj, SECItem_param **param)
2036
2039
  return 1;
2037
2040
  } else if (PyObject_CheckBuffer(obj)) {
2038
2041
  if ((ip = PyMem_MALLOC(sizeof(SECItem_param))) == NULL) {
2042
+ PyErr_NoMemory();
2039
2043
  return 0;
2040
2044
  }
2041
2045
 
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes