efl/src/lib/ecore_con/efl_net_server_udp.eo

60 lines
1.9 KiB
Plaintext

class Efl.Net.Server.Udp (Efl.Net.Server.Fd) {
[[A UDP server.
@since 1.19
]]
methods {
@property ipv6_only {
[[Whenever IPv6 listen address will accept only same-family clients or will allow IPv4 to connect as well.
Since Linux 2.4.21, Windows Vista and MacOS X these
control whenever a server that did bind to an IPv6
address will accept only IPv6 clients or will also
accept IPv4 by automatically converting them in an IPv6
address, allowing a single socket to handle both
protocols.
If an IPv6 address was used in @Efl.Net.Server.address,
this property is $false and an IPv4 connects, then an
address such as [::ffff:IPv4]:PORT will be used, such as
[::ffff:192.168.0.2]:1234, where the IPv4 address can be
extracted.
If an IPv4 address was used in @Efl.Net.Server.address,
this has no effect.
Systems can configure their default value, usually true
(allows only IPv6 clients).
]]
values {
ipv6_only: bool;
}
}
@property dont_route {
[[Avoid sent UDP packets being routed by a gateway, limiting them to the local network.
This will use SO_DONTROUTE option to avoid gateways
routing sent packets to outside of local network. It's
useful for some protocols that only want local area to
be affected.
]]
get { }
set {
return: bool (false); [[$true on success]]
}
values {
dont_route: bool;
}
}
}
implements {
Efl.Object.constructor;
Efl.Object.destructor;
Efl.Net.Server.serve;
Efl.Net.Server.Fd.process_incoming_data;
}
}