I am sponsoring this automatic case for myself. The kernel function ssig() came with SVr3 from AT&T during the days of the development of SVr4 (merged SunOS4.x and SVr3). In SunOS5.0 (Solaris 2.0), it was the system call used to implement the functions: signal() sigset() sighold() sigrelse() sigignore() sigpause()
During the development of SunOS5.1 (Solaris 2.1), these functions were reimplemented in libc using more modern interfaces: sigaction() sigprocmask() sigsuspend() In SunOS5.1, ssig() was retained in the kernel entirely for the benefit of programs that had been statically linked with libc in the previous release, SunOS2.0. These are the comments in usr/src/uts/common/syscall/ssig.c : /* * ssig() is the old common entry for signal, sigset, sighold, * sigrelse, sigignore and sigpause. * * All of these interfaces have been reimplemented in libc using * calls to sigaction, sigsuspend and sigprocmask. * * This kernel interface is no longer called by any application * that is dynamically linked with libc. It exists solely for * the benefit of really old statically-linked applications. * It should be removed from the system. */ The "really old statically-linked applications" are entirely those created in SunOS2.0 (in 1991). No such applications exist today (even if they existed then, which is doubtful). Over the years, ssig() has been blindly carried forward from release to release, even though it is entirely dead code. The latest twist to the story is that in the development of Solaris 8 and Solaris 9 branded zones, code was created to emulate this system call on Solaris 10 (to map signal numbers between the native Solaris 10 and the emulated Solaris 8 and Solaris 9 environments). The continued existence of ssig() in the kernel is proving to be a hinderance to further development. It should be expunged. See the bugid: 6896743 The ancient SVR3 ssig() system call trap should be deleted No interfaces are changing, so there is no documentation change. The release binding is "minor", so it can be done in solaris_nevada (Solaris Next, OpenSolaris) Roger Faulkner