socket_equal(3ncs)socket_equal(3ncs)Namesocket_equal - compare two socket addresses
Syntax
#include <idl/c/socket.h>
boolean socket_$equal(sockaddr1, s1length, sockaddr2, s2length, flags,
status)
socket_$addr_t *sockaddr1;
unsigned long s1length;
socket_$addr_t *sockaddr2;
unsigned long s2length;
unsigned long flags;
status_$t *status;
Arguments
sockaddr1 A socket address. The socket address is the struc‐
ture returned by either or
s1length The length, in bytes, of sockaddr1.
sockaddr2 A socket address. The socket address is the struc‐
ture returned by either or
s2length The length, in bytes, of sockaddr2.
flags The logical OR of values selected from the follow‐
ing:
socket_$eq_hostid Indicates that the host IDs are
to be compared.
socket_$eq_netaddr Indicates that the network
addresses are to be compared.
socket_$eq_port Indicates that the port numbers
are to be compared.
socket_$eq_network Indicates that the network IDs
are to be compared.
status The completion status. If the completion status
returned in is equal to status_$ok , then the rou‐
tine that supplied it was successful.
Description
The routine compares two socket addresses. The flags parameter deter‐
mines which fields of the socket addresses are compared. The call
returns `true' (not zero) if all of the fields compared are equal,
`false' (zero) if not.
Examples
The following routine compares the network and host IDs in the socket
addresses sockaddr1 and sockaddr2:
if (socket_$equal (&sockaddr1, s1length, &sockaddr2, s2length,
socket_$eq_network | socket_$eq_hostid, &status))
printf ("sockaddrs have equal network and host IDs\n");
FilesSee Alsointro(3ncs)socket_equal(3ncs)