%SS_GETSERVBYPORT
Return the service name given the port number
WSupported on Windows
|
USupported on Unix
|
VSupported on OpenVMS
|
NSupported in Synergy .NET
|
status = %SS_GETSERVBYPORT(port, [type], service, protocol)
Return value
status
Returns SS_SUCCESS (0) or one of the errors in Error codes returned by %SS_GETSERVBYPORT below. (n)
Arguments
port
The port number for which to return a service name. (n)
type
(optional) One of the following types of protocols to access the service: (a)
tcp = Transmission control protocol.
udp = User datagram protocol.
service
Returned with the name of the service on the specified port. (a)
protocol
Returned with the name of the network protocol on the specified port. (a)
Discussion
%SS_GETSERVBYPORT gets the service name and network protocol from the services file for the specified port number (and optional protocol type). This file is the TCP/IP services file on Windows; the /etc/services file on Unix; and sys$system:tcpip$services.dat on OpenVMS. (On OpenVMS, this is not a text file that you can edit directly as is the case on Windows and Unix; rather it’s a binary file, which can be edited with sys$manager:tcpip$config.com.)
If type is not specified, the first match is returned, and protocol will be either “tcp” or “udp.”
If SS_ENULL is returned, the system error code can be returned by immediately calling %SYSERR.
Error codes returned by %SS_GETSERVBYPORT
See the Socket Errors table for additional information about these errors.
SS_EINTR
SS_ENETDOWN
SS_ENULL
SS_HOST_NOT_FOUND
SS_NO_DATA
SS_NO_RECOVERY
SS_TRY_AGAIN
Examples
The example below returns the service name and protocol for port 5555.
status = %ss_getservbyport(5555, tcp, name, proto)