%SS_FATAL
Notify server that program is terminating abnormally
WSupported on Windows
|
USupported on Unix
|
VSupported on OpenVMS
|
|
status = %SS_FATAL(socket, message)
Return value
status
Returns SS_SUCCESS (0) or one of the errors in Error codes returned by %SS_FATAL below. (n)
Arguments
socket
A descriptor of an open socket created by %SS_SOCKET. (i4)
message
A string to send through the socket if the program ends before the socket is properly closed. (a)
Discussion
%SS_FATAL provides the ability to send a final error packet to the other end of a socket if the program ends before the socket is properly closed. Thus, if a broken socket occurs, the other end of the socket doesn’t have to continue to wait indefinitely.
Message can contain two %s and three %d specifiers. For example,
"some message text %s %s %d %d %d some more message text"
The %s and %d specifiers can occur anywhere in the string and be delimited by any or no characters, but they must be specified in the order shown above. The %s and %d specifiers are replaced with the following, in this order:
- program name
- module in which the program terminated
- line number where the program terminated
- number of the Synergy DBL error that terminated the program
- system error number
You don’t have to use all five specifiers, but if you don’t use them all, you can truncate the string only from the right. For example, “%s %s %d %d”, “%s %s %d”, “%s %s”, and “%s” are all valid, but “%s %d” and “%d %d” are not valid. If these specifiers are not in the proper order, or if the string contains other % specifiers, an error is generated.
Error codes returned by %SS_FATAL
See the Socket Errors table for additional information about these errors.
SS_EBADF
SS_ENOTSOCK