broadcast attribute
The keyword [broadcast] specifies that remote procedure calls be sent to all servers on a local network.
[
interface-attribute-list
]
interface interface-name
{
[broadcast [, attribute-list]] returntype function-name(params)
}
-
interface-attribute-list
-
Specifies a list of zero or more IDL attributes that apply to the interface as a whole. When two or more interface attributes are present, they must be separated by commas.
-
interface-name
-
Specifies the name of the interface.
-
attribute-list
-
Specifies additional attributes to be applied to the function. Separate multiple attributes with commas.
-
returntype
-
Specifies the return type of the function.
-
function-name
-
Specifies the name of the function to which the [broadcast] attribute will be applied.
-
params
-
Function parameter list.
The [broadcast] keyword specifies that the routine is always broadcasted to all the servers on the network, rather than being delivered to one particular server.The client receives output from the first reply to return successfully, while subsequent replies are discarded.
An operation with the [broadcast] attribute is implicitly an [idempotent] operation. However, the [broadcast] attribute specifies additional properties that functions with the [idempotent] attribute don't have. Specifically, functions using the [broadcast] attribute specify that the routine can be called multiple times as the result of one remote procedure call. At the same time, they can be sent to multiple servers. This is different from the [idempotent] attribute, which specifies only that a call can be retried if it is not completed.
If a remote procedure broadcasts its call to all hosts on a local network, it must use either the ncadg_ip_udp or the ncadg_ipx protocol sequence. Note that the size of a [broadcast] packet is determined by the datagram service in use.