IPC@CHIP® RTOS-Linux – API Documentation |
![]() |
The tickets are grouped by component and then sorted by type and ticket number.
Ticket: | #129 |
Component: | RTX-native |
Type: | defect |
Summary: | Wait for semaphore is affected when time/date changes |
Description: | The wait time when calling e.g. RTX_Reserve_Sem()/RTX_Sem_Timeout() is affected when the system time/date is changed. |
Solution: | Patched Kernel and GLIBC in order to make the monotonic clock available for semaphores. |
Ticket: | #177 |
Component: | RTX-native |
Type: | defect |
Summary: | Suspend/resume operation does not work in all cases |
Description: | The suspend/resume operation does not work in all cases. Sometimes the signal is delivered to the wrong task. |
Solution: | Fixed. |
Ticket: | #365 |
Component: | RTX-native |
Type: | defect |
Summary: | RTX layer is initialized too late in startup code for some C++ programs |
Description: | During the loading of an application BEX file, the startup code will call an internal RTX function that initializes the RTX layer for this program, making it an IPC@CHIP application. This initialization function is called in a too late stage for some C++ programs, which use static objects. |
Solution: | Fixed. |
Ticket: | #103 |
Component: | RTX-native |
Type: | enhancement |
Summary: | RTX_Task_Info() API and "tasks" command does not report CPU usage |
Description: | The CPU usage measurement (tiTaskMonStatus, tiDutyTime, tiElapsedTime) is currently not implemented for this task status API. The RTOS shell command "tasks" should be adapted to show the tasks CPU usage. |
Solution: | Implemented. |
Ticket: | #362 |
Component: | RTX-native |
Type: | enhancement |
Summary: | Check if additional signals need to be captured that would lead to program termination |
Description: | The RTX layer needs to be informed when a program is terminated by a signal. Otherwise a RTX zombie task remains. Need to check if we catch all necessary signals. |
Solution: | Add more signals that lead by default to program termination. |
Ticket: | #115 |
Component: | SSH server |
Type: | enhancement |
Summary: | Should implement SSH server |
Description: | Should provide support to login via the SSH protocol. |
Solution: | Implemented. |
Ticket: | #336 |
Component: | Shell |
Type: | defect |
Summary: | CHKDSK does not work for external FAT drives |
Description: | The CHKDSK command does not work for external FAT drives, as it assumes an EXT2/EXT3/EXT4 filesystem. Additionally, the CHKDSK command should pay attention to the /F parameter and should only modify the filesystem if this parameter is given. |
Solution: | Fixed. |
Ticket: | #342 |
Component: | Shell |
Type: | defect |
Summary: | Insufficient command line length for BIOS_Execute() |
Description: | Should increase the maximum command line length that can be used with BIOS_Execute(). |
Solution: | Increased maximum command line length from 81 to 264 characters (including NULL termination). |
Ticket: | #357 |
Component: | Shell |
Type: | defect |
Summary: | Lines in batch files with no trailing newline are not executed correctly |
Description: | Lines in a batch file which have no trailing newline character were not executed correctly by the command shell interpreter. |
Solution: | Fixed. |
Ticket: | #358 |
Component: | Shell |
Type: | defect |
Summary: | Batch files could only be started by giving the full file name with extension |
Description: | The command shell interpreter should also try to execute a batch file if only the base name (without the .bat extension) in given. |
Solution: | Fixed. |
Ticket: | #122 |
Component: | Shell |
Type: | enhancement |
Summary: | Shell's IPETH-command does not pay attention to DHCP state in reconfiguration process |
Description: | When DHCP is on shell's IPETH-command does not pay attention to DHCP state and does not wait until a valid ip is given by DHCP server as known from RTOS-PPC or RTOS-x86. |
Solution: | Implemented. |
Ticket: | #284 |
Component: | Shell |
Type: | enhancement |
Summary: | Some shell commands do not support wildcards yet. |
Description: | Should add support for wildcard in some shell commands (e.g. del *.txt). |
Solution: | Implemented. |
Ticket: | #300 |
Component: | Shell |
Type: | enhancement |
Summary: | Add an editor to the RTOS shell |
Description: | The RTOS shell should provide an integrated text editor, like the RTOS-PPC did. |
Solution: | Implemented "edit" shell command. |
Ticket: | #349 |
Component: | Shell |
Type: | enhancement |
Summary: | Implement IPV6CFG command |
Description: | Implement the IPV6CFG command to display the IPv6 configuration of the device. |
Solution: | Implemented. |
Ticket: | #374 |
Component: | Shell |
Type: | enhancement |
Summary: | Provide a way to load kernel modules from the RTOS shell |
Description: | Should provide a way to load kernel modules from the RTOS shell. |
Solution: | Add the KMOD shell command for this purpose. |
Ticket: | #386 |
Component: | Shell |
Type: | enhancement |
Summary: | Shell should feature a command history |
Description: | Implement a command history that can be accessed with the cursor up/down keys. |
Solution: | Implemented. |
Ticket: | #168 |
Component: | File system |
Type: | defect |
Summary: | Filesystem emulation does not work with C++ |
Description: | All C++ classes that doing file access (e.g. file in streams, file out streams) bypassing FS emulation. Filesystem emulation means the emulation of DOS drive letters and path names. |
Solution: | Fixed. |
Ticket: | #265 |
Component: | System |
Type: | enhancement |
Summary: | Add support for IPv6 |
Description: | Should add support for IPv6. |
Solution: | Implemented. |
Ticket: | #266 |
Component: | TCP/IP |
Type: | enhancement |
Summary: | Add support for NAT/Firewall |
Description: | Should add support for NAT/Firewall. |
Solution: | Implemented. |
Ticket: | #246 |
Component: | Clib |
Type: | defect |
Summary: | Cast-align warning in socket header file when using BSD socket API style and optimizations |
Description: | When the BSD44_SOCKET_API_STYLE define is set before including clib.h and optimizations are enabled, a warning like below is produced: C:\ONE-Workbench\/tc-sc1x8/sysroot-arm-v5te-linux-gnueabi/usr/include/bits/socket.h:286:42: warning: cast from 'unsigned char*' to 'cmsghdr*' increases required alignment of target type [-Wcast-align] |
Solution: | Fixed. |
Ticket: | #346 |
Component: | Clib |
Type: | defect |
Summary: | Stdlib function remove() does not work as expected |
Description: | The file system emulation code misses the remove() function. Therefore this function does not handle the DOS paths correctly. |
Solution: | Solved. |
Ticket: | #355 |
Component: | Clib |
Type: | defect |
Summary: | Ethernet link status not reported correctly |
Description: | The API functions ethGetMode() and ethGetModeExt() do not deliver the Ethernet link status correctly. Therefore the Ethernet link status is not displayed inside the Shell's ipcfg command. |
Solution: | Fixed. |
Ticket: | #356 |
Component: | Clib |
Type: | defect |
Summary: | CGI_SetRootDir() function should check for a leading backslash |
Description: | The CGI_SetRootDir() function should check for a leading backslash in the given directory name to avoid that a duplicated leading backslash is added to this name. |
Solution: | Fixed. |
Ticket: | #359 |
Component: | Clib |
Type: | defect |
Summary: | Different definitions for getdate() |
Description: | The CLIB STDLIB extension function getdate(), which was added for compatibility to the legacy systems, clashes with the definition of the same function name in time.h from the GNU GLIBC. |
Solution: | Rename CLIB version of getdate() to getdate_beck(). |
Ticket: | #377 |
Component: | Clib |
Type: | defect |
Summary: | Add missing shutdown_bsd() and shutdown_beck() functions |
Description: | These socket functions were already documented but not implemented. |
Solution: | Fixed. |
Ticket: | #338 |
Component: | Clib |
Type: | enhancement |
Summary: | Define likely/unlikely macros only if needed |
Description: | Should define the likely/unlikely macros in the CLIB headers only when these macros are not already defined. |
Solution: | Implemented. |
Ticket: | #343 |
Component: | Clib |
Type: | enhancement |
Summary: | Should provide strlwr()/strupr() functions |
Description: | Should provide the functions strlwr()/strupr() for compatibility to the Paradigm C standard library. |
Solution: | Implemented. |
Ticket: | #345 |
Component: | Clib |
Type: | enhancement |
Summary: | Implement the RTX_Kill_Program() function and KILL shell command |
Description: | Implement the RTX_Kill_Program() function as defined in the other RTOS APIs and the KILL shell command. |
Solution: | Implemented. |
Ticket: | #347 |
Component: | Clib |
Type: | enhancement |
Summary: | Implement Dev_Config_Iface_IPv6 and Dev_Get_IfaceEntries_IPv6 functions |
Description: | Implement the Dev_Config_Iface_IPv6 and Dev_Get_IfaceEntries_IPv6 functions. |
Solution: | Implemented. |
Ticket: | #353 |
Component: | Clib |
Type: | enhancement |
Summary: | Increase max allowed CGI functions |
Description: | Currently, only 32 CGI functions can be installed. Should increase this value to the 128, like on the legacy RTOS versions. |
Solution: | Implemented. |
Ticket: | #354 |
Component: | Clib |
Type: | enhancement |
Summary: | Increase task priority of error callback thread |
Description: | Should increase the task priority of the thread that is created when a fatal error callback is installed. Changed also the name of this system thread. |
Solution: | Implemented. |
Ticket: | #364 |
Component: | Clib |
Type: | enhancement |
Summary: | Ethernet packet driver receiver task priority should be configurable |
Description: | The Ethernet packet driver receiver task priority should be configurable. Add [IP] ETH_PRIO and [IP_ETH1] ETH_PRIO CHIP.INI entries. |
Solution: | Implemented. |
Ticket: | #368 |
Component: | Clib |
Type: | enhancement |
Summary: | Implement RegisterUdpCfgCbHandler function |
Description: | Implement the RegisterUdpCfgCbHandler function (descendant of the deprecated BIOS_Install_UDP_Cfg_Callback function) |
Solution: | Implemented. |
Ticket: | #373 |
Component: | Clib |
Type: | enhancement |
Summary: | Support TUN and TAP interfaces |
Description: | The TUN and TAP interfaces that OpenVPN generates should be "findable" from the clib e.g. Dev_Find_Iface_By_Name() etc. |
Solution: | Implemented. |
Ticket: | #360 |
Component: | FTP server |
Type: | defect |
Summary: | Suspending the FTP server leaves a RTX zombie task behind |
Description: | Suspending the FTP server with ServerControl()/BIOS_Server_On_Off() leaves the @FTP task as a RTX zombie task behind. This is can be seen in the "tasks" command, where the @FTP task is marked with a "!" sign. |
Solution: | Fixed. |
Ticket: | #376 |
Component: | HW-API |
Type: | defect |
Summary: | Function isrSetTaskPriority() not working in all cases |
Description: | The isrSetTaskPriority() function does not work in all cases and for all SC1x8 targets, due to differences in the internal IRQ numbers for the specific interrupt devices, caused by individual device trees. |
Solution: | Fixed, also add some more interrupts to the list. |
Ticket: | #383 |
Component: | HW-API |
Type: | defect |
Summary: | isrInstall() does not work if gpioEnable() has not been called previously |
Description: | The function isrInstall() does not work if gpioEnable() has not been called previously. Should accept also the opposite order of calling these functions. |
Solution: | Fixed. |
Ticket: | #379 |
Component: | UDPCfg server |
Type: | defect |
Summary: | The udpCfgSrv should send broadcasts to all configured interfaces |
Description: | The udpCfgSrv does not send broadcasts to all configured interfaces. Modify its behavior so that broadcasts are send to all interfaces with the exception of: * The loopback interface. * PPP interfaces if so configured in the CHIP.INI |
Solution: | Fixed. |
Ticket: | #382 |
Component: | SSL |
Type: | enhancement |
Summary: | Should update to OpenSSL 1.0.2j |
Description: | Due to fixed security issues, the new OpenSSL release 1.0.2j should be used. |
Solution: | Implemented. |
Ticket: | #387 |
Component: | Telnet server |
Type: | defect |
Summary: | Terminating a telnet connection from the client side does not lead to a sever side termination as well |
Description: | If the telnet client terminates a connection from his side without the server "knowing" it, the connection remains alive for the server. A re-connect attempt leads to a "telnet already in use by another client" message. |
Solution: | Set some more TCP socket options to detect connection loss earlier. |