bpo-31904: Add _crypt module support for VxWorks RTOS by pxinwr · Pull Request #12321 · python/cpython
This is the successive PR after #11968. This PR adds _crypt module support for VxWorks RTOS.
VxWorks has no APIs crypt() and crypt_r() provided. Instead, DES_crypt() is defined in openssl/des.h to replace the crypt(). It has the same prototype as crypt(). This extension module _crypt will not be built if VxWorks users don't enable the OPENSSL features. See
| def detect_crypt(self): | |
| # crypt module. | |
| if self.compiler.find_library_file(self.lib_dirs, 'crypt'): | |
| libs = ['crypt'] | |
| else: | |
| libs = [] | |
| if not VXWORKS: | |
| self.add(Extension('_crypt', ['_cryptmodule.c'], | |
| libraries=libs)) | |
| elif self.compiler.find_library_file(self.lib_dirs, 'OPENSSL'): | |
| libs = ['OPENSSL'] | |
| self.add(Extension('_crypt', ['_cryptmodule.c'], | |
| libraries=libs)) |
More and full support on modules for VxWorks will continuously be added by the coming PRs.
VxWorks is a product developed and owned by Wind River. For VxWorks introduction or more details, go to https://www.windriver.com/products/vxworks/
Wind River will have a dedicated engineering team to contribute to the support as maintainers.
We already have a working buildbot worker internally, but has not bound to master. We will check the process for the buildbot, then add it.