A module specified as a
Start a transport process.
Called by diameter as a consequence of a call to
The first argument indicates whether the transport process in question
is being started for a connecting (
A transport process must implement the message interface documented below. It should retain the pid of its parent, monitor the parent and terminate if it dies. It should not link to the parent. It should exit if its transport connection with its peer is lost.
Transport processes for a given service are started sequentially.
The start function should use the 'Host-IP-Address' list on the service,
namely
All messages sent over the transport interface are of the
form
A transport process can expect the following messages from diameter.
An outbound Diameter message.
Packet can be either
A request to close the transport connection. The transport process should terminate after closing the connection. Pid is the pid() of the parent process.
Indication of whether or not capabilities exchange has selected
inband security using TLS.
Ref is a reference() that must be included in the
If TLS is requested (Bool = true) then a connecting process should
initiate a TLS handshake with the peer and an accepting process should
prepare to accept a handshake.
A successful handshake should be followed by a
This message is only sent to a transport process over whose
A transport process should send the following messages to its parent.
Inform the parent that the transport process with Type = accept has established a connection with the peer. Not sent if the transport process has Type = connect.
Inform the parent that the transport process with Type = connect has established a connection with a peer. Not sent if the transport process has Type = accept. Remote is an arbitrary term that uniquely identifies the remote endpoint to which the transport has connected.
An inbound Diameter message.
Packet can be either
Acknowledgment of a successful TLS handshake.
Ref is the reference() received in the