Specifying A Default Socket Address - HP Rp3440-4 - 9000 - 0 MB RAM Programmer's Manual

Bsd sockets interface programmer’s guide
Hide thumbs Also See for Rp3440-4 - 9000 - 0 MB RAM:
Table of Contents

Advertisement

Advanced Topics for Internet Datagram Sockets

Specifying a Default Socket Address

Specifying a Default Socket Address
It is possible (but not required) to specify a default address for a remote
datagram socket.
This allows you to send messages without specifying the remote address
each time. In fact, if you use sendto or sendmsg, an error occurs if you
enter any value other than 0 for the socket address after the default
address has been recorded. You can use send or write instead of
sendto or sendmsg once you have specified the default address.
Use recv for receiving messages. Although recvfrom can be used, it is
not necessary, because you already know that the message came from the
default remote socket. (Messages from sockets other than the default
socket are discarded without notice.) read(2) can also be used, but does
not allow you to use the MSG_PEEK flag.
Specify the default address with the connect system call. connect
recognizes two special default addresses, INADDR_ANY and
INADDR_BROADCAST. Using INADDR_ANY connects your socket to
the IP address of your local host's primary LAN interface (for loopback
connections). Using INADDR_BROADCAST connects your socket to the
subnet broadcast address for your primary LAN interface; it allows you
to send out broadcast packets that interface without specifying the
subnet broadcast address.
When a datagram socket descriptor is specified in a connect call,
connect associates the specified socket with a particular remote socket
address. connect returns immediately because it only records the peer's
socket address. After connect records the default address, any message
sent from that socket is automatically addressed to the peer process and
only messages from that peer are delivered to the socket.
connect may be called any number of times to change the associated
destination address.
This call does not behave the same as a connect for stream sockets.
NOTE
There is no connection, just a default destination. The remote host that
you specify as the default may or may not use connect to specify your
local host as its default remote host. The default remote host is not
notified if your local socket is destroyed.
connect and its parameters are described in the following table.
112
Chapter 5

Advertisement

Table of Contents
loading

Table of Contents