Pike 8.0.1738 Release notes
Changes since Pike 8.0.1116 (release 14)
New Features
- Calendar Updated to use tzdata2021e.
- Parser.XML.Tree Added set_text() to update the contents of a text node.
- Sql.Sql Add query_db() to API.
- SSL.SSLFile Add {query,set}_timeout(). This adds an API to set an optional timeout to be used for blocking operations. When the timeout expires it is handled as if the peer sent a fatal internal error alert.
- Standards.PEM Added helper methods, including: get_certificates() , get_private_keys(), get_private_key() and decrypt_fragment().
- Runtime and EFUNS
- describe_backtrace() now reports cpu time –with-profiling.
- decode_value can be called with codec -1, which disables decoding of functions, objects, programs and types.
Bug Fixes
- crypt Fixed a bug which caused crypt() with a random salt to sometimes return “*0” instead of an encrypted password.
- Concurrent
- The future generated by ->timeout() would not necessarily resolve with the fullfilled or rejected values if the original Promise/Future was resolved or rejected before hitting the timeout.
- If the original promise resolves or rejects, we now attempt to unschedule the timeout call_out from the backend we scheduled it in, not the one (now) configured in the Future.
- Critbit
- Fix a number of memory and behavior errors.
- Inotify add_watch() now returns -1 for filsystem-related failures that may be due to the filsystem being in flux.
- Image.BMP Improved size check better detects malformed BMP images.
- Image.GIF
- Improve detection of malformed LZW bit sizes.
- Improve detection of malformed LZW dictionary extensions.
- Image.ILBM
- Guard alloca() allocations with check_c_stack().
- Improved length accounting in unpackByteRun1().
- Image.JPEG
- Do not over-allocate memory for decoded image.
- Limit decoded size of images to 2 GB.
- Image.PCX Improved size checks better detect malformed PCX images.
- Image.PNG Improved size check better detects malformed PNG images.
- Image.PSD Improved size check better detects malformed PSD images.
- Image.TGA
- Improve detection of malformed TGA images.
- Correctly update pointer when horizontal or vertical flipping is requested by the TGA image.
- Image.TIFF Improved size checks in image decoding
- Image.TIM Improved size checks better detect malformed TIM images.
- Image.WBF Improved size check better detects malformed WBF images.
- Image.X Guard alloca() allocations with check_c_stack().
- Image.XCF Fixed to properly initialize the layer mask structure.
- Image.XWD Improved size check better detects malformed XWD images.
- Protocols.LDAP.client LDAP connections secured with TLS/SSL now timeout if the server does not respond within 10 seconds.
- Sql.mysql Improved character set handling
- Sql.pgsql Numerous bug fixes.
Building & Tools
- Improved check for stack direction to also report correct results when compiling with Clang 11.
- _TIME_BITS is now set to 64, to get a 64-bit time_t on 32-bit systems running glibc 2.34 or newer.
- Improvements to building and installer code signing on macOS.
- Fixes to better support building with future versions of GNU make.
- Use updated FFI API in Java module, to better support recent libffi.
- Fix testsuite generation for BSD m4 users; POSIX systems must continue to use GNU m4 (gm4).