IPC@CHIP® RTOS – API Documentation

Header image

Main page

Release Notes – SC2x @CHIP-RTOS V2.04

The tickets are grouped by component and then sorted by type and ticket number.

Ticket: #2388
Component: RTOS - TCP/IP
Type: defect
Summary: Other tasks can be blocked during the SSL handshake
Description: During a tasks performs the SSL handshake, other tasks that also access the TCP/IP stack can get blocked during this period. Also Ethernet pings are not answered during this time.

Solution: 1) During long RSA modular exponent computations, set a "IN RSA" flag and then release the socket lock.
2) Prevent all socket API functions from locking this socket when the "IN RSA" flag for this socket is set. They will instead spin in a sleep loop, periodically polling for this flag to go away.

This solution allows the internal TCP/IP stack's timer task and device driver tasks to still access this socket during the time consuming RSA computation, thereby avoiding a TCP/IP stack deadlock during this period.

Ticket: #2392
Component: RTOS - TCP/IP
Type: defect
Summary: Dev_PPP_Get_Peer_IPv6() API dynamic link entry missing
Description: Although the C-Library offers a dynamic link for Dev_PPP_Get_Peer_IPv6() API at index 0xB1, the RTOS-x86 has no entry for this API in its linking table.
Solution: Add the vector to this API's implementation to the dynamic link table.

Ticket: #2402
Component: RTOS - TCP/IP
Type: defect
Summary: SSL zero size certificate message contains garbage
Description: When the SSL client tries to reply with an empty certificate (ticket 2352), it is sending garbage bytes in the SSL reply message.
Solution: Send zero certificate data bytes for empty certificate.

Ticket: #2389
Component: RTOS - TCP/IP
Type: enhancement
Summary: Get details about SSL handshake error
Description: In case of an SSL handshake error, the function SSL_HandshakeComplete() delivers just a single error code. It would be helpful if another function can be called in this case, which delivers more details why the handshake has failed.
Solution: Added SSL_CheckProblem() API.

Ticket: #2393
Component: RTOS - TCP/IP
Type: enhancement
Summary: Should increase the ephemeral Diffie-Hellman key size used by the SSL server
Description: We should increase the ephemeral Diffie-Hellman key size used by the SSL server, because recent OpenSSL versions do no longer accept keys below 1024 bits.
Solution: Implemented.

RTOS - System
Ticket: #2390
Component: RTOS - System
Type: defect
Summary: Time slicing does not work
Description: The time slicing feature did not work as expected. Instead of the user specified time slice value, always the maximum value of 65535 ms/rti ticks was used.
Solution: Fixed.

Ticket: #2394
Component: RTOS - System
Type: enhancement
Summary: Interrupt 21h service 2Ch/2Dh does not get/set hundredths of seconds
Description: The DOS interrupt 21h services 2Ch/2Dh, which get/set the system time do not deliver/adapt the hundredths of seconds in the DL parameter.
Solution: Implemented.

Ticket: #2399
Component: RTOS - System
Type: enhancement
Summary: Should implement RTX_Task_Info_By_Id() API function
Description: Should implement the RTX_Task_Info_By_Id() API function, like known from the RTOS-LNX.
Solution: Added RTX_Task_Info() and RTX_Task_Info_By_Id() to C-Library and RTOS API.

RTOS - IPsec/IKE/Crypt
Ticket: #2391
Component: RTOS - IPsec/IKE/Crypt
Type: defect
Summary: RSA key cannot be read
Description: Some RSA keys cannot be read by the @CHIP-RTOS. Re-coding them with
openssl.exe rsa -in oldkey.pem -out newkey.pem
was a workaround for this problem.
Solution: Add handling for extracting RSA key data from a PKCS#8 format private key file. The oldkey.pem used this alternative private key format.

RTOS - File system
Ticket: #2396
Component: RTOS - File system
Type: defect
Summary: File read can fail when same file is being written
Description: The wrong cluster will be read out when a previous read ended at the tail of a cluster (cluster boundary) and this was the end of that file at that time.

Then when more data is written to that file using some other file handle and another read is made with the same open file handle as the first read, what was the last cluster will be read again instead of data from the new cluster that some writer had just added.
Solution: When reading from a file note when end of file has been reached so that the cluster chain in the File Allocation Table (FAT) can be consulted on a subsequent read to see if any new cluster had been appended to that chain.

RTOS - Config server
Ticket: #2386
Component: RTOS - Config server
Type: enhancement
Summary: Configuring a multi-home index via Chiptool should store this configuration in CHIP.INI
Description: Currently, when a multi-home index is configured via the Chiptool IP configuration, the made changes are not stored in the CHIP.INI. The configuration is volatile. We should store the new configuration so that it is applied automatically at next boot.
Solution: Implemented.

RTOS - Ethernet
Ticket: #2398
Component: RTOS - Ethernet
Type: enhancement
Summary: Should increase the number of RX descriptor ring buffers
Description: To reduce Ethernet packet drops under heavy broadcast load, we should increase the number of RX descriptor buffers from 16 to 32 (next possible number). Higher numbers are not possible due to lack of fast SRAM space.
Solution: Implemented.

Top of page | Main page

Copyright © Beck IPC GmbH