QNX Technical Articles
QNX® Software Development Platform 6.5 SP1 Kernel and Libc Patch (Patch ID 4668): Release Notes
Date of this edition: October 17, 2017
Target OS: This patch is compatible with targets that are running the QNX® Neutrino® RTOS 6.5 SP1.
Host OS: In order to apply this patch, you must have installed the QNX Software Development Platform 6.5 SP1 on one of the following development hosts:
- as a self-hosted QNX Neutrino development system
- Microsoft Windows 7 Professional 32- and 64-bit, Vista Business 32- and 64-bit, XP Professional SP3, or 2000 SP4
- Linux Red Hat Enterprise Linux 5.4 Desktop 32- and 64-bit, Red Hat Fedora 12, Ubuntu Workstation 9.10, 11.04, and 12.04 32- and 64-bit, or openSUSE 11.2
![]() |
For the most up-to-date version of these notes, go to our website (www.qnx.com), log in to your myQNX account, and then go to the Download Center. |
Contents
Throughout this document, you may see reference numbers associated with particular issues, changes, etc. When corresponding with our Technical Support staff about a given issue, please quote the relevant reference number. You might also find the reference numbers useful for tracking issues as they become fixed.
What's in this patch?
This patch fixes issues with Kernel and Libc.
Installed files
The following files are installed under $QNX_TARGET:
- armle/boot/sys/libmod_aps.a
- armle/boot/sys/procnto-v6
- armle/boot/sys/procnto-v6-instr
- armle/boot/sys/procnto-v6-smp
- armle/boot/sys/procnto-v6-smp-instr
- armle/boot/sys/procnto
- armle/boot/sys/procnto-instr
- armle/lib/libc.a
- armle/lib/libc.so.3
- armle/lib/libcS.a
- armle-v7/boot/sys/libmod_aps.a
- armle-v7/boot/sys/procnto-smp-instr
- armle-v7/boot/sys/procnto-smp
- armle-v7/boot/sys/procnto
- armle-v7/boot/sys/procnto-instr
- armle-v7/lib/libc.a
- armle-v7/lib/libc.so.3
- armle-v7/lib/libcS.a
- ppcbe/boot/sys/procnto-600-smp-instr
- ppcbe/boot/sys/libmod_aps.a
- ppcbe/boot/sys/procnto-booke-smp-instr
- ppcbe/boot/sys/procnto-booke
- ppcbe/boot/sys/procnto-600-smp
- ppcbe/boot/sys/procnto-800-instr
- ppcbe/boot/sys/procnto-booke-smp
- ppcbe/boot/sys/procnto-booke-instr
- ppcbe/boot/sys/procnto-600-instr
- ppcbe/boot/sys/procnto-400
- ppcbe/boot/sys/procnto-400-instr
- ppcbe/boot/sys/procnto-600
- ppcbe/boot/sys/procnto-800
- ppcbe/lib/libc.a
- ppcbe/lib/libc.so.3
- ppcbe/lib/libcS.a
- x86/boot/sys/libmod_aps.a
- x86/boot/sys/procnto-smp-instr
- x86/boot/sys/procnto-smp
- x86/boot/sys/procnto
- x86/boot/sys/procnto-instr
- x86/lib/libc.a
- x86/lib/libc.so.3
- x86/lib/libcS.a
- usr/include/pthread.h
- usr/include/sys/neutrino.h
- armle/lib/libc.so
- armle-v7/lib/libc.so
- ppcbe/lib/libc.so
- x86/lib/libc.so
Fixed issues
- We've addressed these security issues (Ref# J169949, J170659, J171842, J173156, J174365, J177988, J178585, J186855, J190142, J383446, J752424, J892931, J1573709, J1692842, J2163410):
- QNX Neutrino Qnet arbitrary file disclosure
- QNX Neutrino local arbitrary user and kernel space infoleak (ASLR bypass)
- QNX Neutrino LD_DEBUG local infoleak (ASLR bypass)
- QCC configuration should enable FULL RELRO by default
- QNX Neutrino RELRO implementation defect
- QNX Neutrino weak Stack Smashing Protection (SSP) canary implementation
- /dev/urandom uses a deprecated algorithm
- Stack and heap ASLR on 6.6.0 provides insufficient entropy
- We've added support for the _NTO_COF_NOEVENT flag. This flag indicates that the server isn't permitted to send sigevents over the channel to the client. (Ref# J1653680)
- We've corrected MsgDeliverEvent(0) behavior. (Ref# J2193134)
- We've improved how MsgSendPulse() handles priority. (Ref# J1682707)
- We've improved exception handing on the ARMLE v7 platform. (Ref# J1652358)
- We've improved support for TUN interfaces. These improvements include bulk read/write support for an application reading from one TUN interface and writing to the other. We've also added support for sendmmsg() and recvmmsg() for connections between io-pkt processes using TUN interfaces. (Ref# J1588283)
- To the ldd utility, we've added the ability to trap on error. To use it, unset LD_TRAP_ON_ERROR before ldd, and then export LD_TRAP_ON_ERROR=1. (Ref # J1576843)
- The mphys() function returns a 32-bit return type when the caller is using a 32-bit physical address. We've updated this function to return a 64-bit return type in the case where the caller is using 64-bit physical address. (Ref# J1571467)
- We've corrected the error code specified for pthread_mutexattr_setpshared() and pthread_mutexattr_setrecursive() functions to indicate when the argument is invalid. (Ref# J1427711)
- We've updated how the sleepon_wait function handles the pthread_cond_wait error code. (Ref# J1364129)
- We've corrected an issue where a terminating io-pkt-v4 process may have led to undesirable results if certain conditions were met during shutdown. (Ref# J1351481)
- We've corrected an issue with an uncleared EPID bit in the strict context of an ISI exception with a P2041RDB-PC evaluation board. (Ref# J1308004)
- We've changed how space is reserved for the for the iov[] member of the dispatch_context_t structure when message_attach() alone is called for a dispatch. (Ref# J1251200)
- We've improved how the dumper utility dumps a process on the ARMLE v7 platform. (Ref# J722579)
Known issues
None currently known.
Technical support
To obtain technical support for any QNX product, visit the Support area on our website (www.qnx.com). You'll find a wide range of support options, including community forums.
