Honoring Asian Pacific American Heritage Month. See how.

fuchsia.net.mdns

Added: 7

PROTOCOLS

HostNameResolver

Defined in fuchsia.net.mdns/host_name_resolver.fidl

Discoverable protocol for resolving host names to IP addresses.

Added: HEAD

ResolveHostName

Gets the addresses for the specified host.

  • request host the simple name of the host.
  • request timeout specifies how long the service should wait before giving up when waiting for a response to a resolution query. In typical use, a timeout of two or three seconds is recommended.
  • request options options to be applied to the resolution.
  • response addresses the addresses of the specified host, if it was found, an empty vector if not.

Request

NameType
host host_name
timeout zx/duration
options HostNameResolutionOptions

Response

NameType
addresses vector<HostAddress>[64]

HostNameSubscriber

Defined in fuchsia.net.mdns/host_name_subscriber.fidl

Discoverable protocol for subscribing to address changes for given host names.

Added: HEAD

SubscribeToHostName

Gets the addresses for the specified host.

  • request host the simple name of the host.
  • request options options to be applied to the subscription.
  • request listener client end of the HostNameSubscriptionListener channel.

Request

NameType
host host_name
options HostNameSubscriptionOptions
listener HostNameSubscriptionListener

HostNameSubscriptionListener

Defined in fuchsia.net.mdns/host_name_subscriber.fidl

Client-implemented interface for subscribers. Method replies are used to throttle traffic. The service won't necessarily wait for a reply before calling another method.

Added: HEAD

OnAddressesChanged

Notifies the subscriber that the addresses associated with a host name have changed.

Request

NameType
addresses vector<HostAddress>[64]

Response

<EMPTY>

ProxyHostPublisher

Defined in fuchsia.net.mdns/proxy_host_publisher.fidl

Discoverable protocol for publishing on behalf of another host.

Added: HEAD

PublishProxyHost

Publishes a host name on behalf of a remote host and provides a ServiceInstancePublisher for publishing service instances on behalf of that host.

  • request host host name to publish.
  • request addresses addresses to publish for the host name.
  • request options options to be applied to the publication.
  • request service_instance_publisher server end of the ServiceInstancePublisher for the proxied host.

This method causes the service to publish the host name at the specified addresses. The actual host must not be present on any relevant links or there will be a conflict. If the perform_probe option is true or not supplied (true by default), a probe will occur to verify that the host name isn't otherwise published.

Request

NameType
host host_name
addresses vector<fuchsia.net/IpAddress>[64]
options ProxyHostPublicationOptions
service_instance_publisher request<ServiceInstancePublisher>

Response

NameType
result ProxyHostPublisher_PublishProxyHost_Result

PublicationResponder

Defined in fuchsia.net.mdns/mdns.fidl

Client-supplied publication responder interface.

Deprecated: HEAD

OnPublication

Provides instance information for initial announcements and query responses relating to the service instance specified in ServiceInstancePublisher.PublishServiceInstance. If the publication relates to a subtype of the service, subtype contains the subtype, otherwise it is null. If publication is null, no announcement or response is transmitted. Strings in text are transmitted in the TXT record.

Request

NameType
publication_cause PublicationCause
subtype subtype_name
source_addresses vector<fuchsia.net/IpAddress>[64]

Response

NameType
publication Publication?

Reannounce

Initiates reannouncement of the service instance due to a change in the instance's port number or text strings. All announcements are filtered through OnPublication, which replies with the new port and text values.

Response

<EMPTY>

SetSubtypes

Sets the subtypes for the service instance. The specified subtypes will be announced subject to filtering through the responder. The initial subtype collection is empty.

Response

NameType
subtypes vector<string>[256]

Publisher

Defined in fuchsia.net.mdns/mdns.fidl

Discoverable protocol for publishing service instances. Deprecated: use ServiceInstancePublisher.

Deprecated: HEAD

PublishServiceInstance

Publishes a service instance. publication_responder is consulted via its OnPublication method for initial announcements and to answer queries. The service is published until the publication_responder channel closes. In addition to announcements and queries for the service type, all queries for subtypes are answered subject to filtering through the responder. perform_probe indicates whether a probe for a conflicting instance should be performed before publishing the instance. This value should be true unless the instance name is known to be unique.

If a service with the same service and instance names is already published, the old publication will be terminated, and the responder channel for the old publication will be closed.

Request

NameType
service service_name
instance instance_name
media Media
perform_probe bool
publication_responder PublicationResponder

Response

NameType
result Publisher_PublishServiceInstance_Result

Resolver

Defined in fuchsia.net.mdns/mdns.fidl

Discoverable protocol for resolving host names to IP addresses. Deprecated: use HostNameResolver.

Deprecated: HEAD

ResolveHostName

Gets the addresses for the specified host. timeout specifies how long the service should wait before giving up when waiting for a response to a resolution query. In typical use, a timeout of two or three seconds is recommended.

A successful resolution may return one or both addresses. An unsuccessful resolution is indicated when both addresses are null.

Request

NameType
host host_name
timeout zx/duration

Response

NameType
v4_address fuchsia.net/Ipv4Address?
v6_address fuchsia.net/Ipv6Address?

ServiceInstancePublicationResponder

Defined in fuchsia.net.mdns/service_instance_publisher.fidl

Client-supplied publication responder interface.

Added: HEAD

OnPublication

Provides instance information for initial announcements and query responses relating to the service instance specified in ServiceInstancePublisher.PublishServiceInstance.

  • request publication_cause the action that motivates this publication.
  • request subtype the subtype if the publication relates to a subtype of the service, otherwise null.
  • request source_addresses addresses from which queries arrived, if applicable.
  • response publication the desired publication. Strings in publication.text are sent in the TXT resource.
  • error indicates the publication should not be sent.

If no publication should be sent, this method should return a DO_NOT_RESPOND error.

Request

NameType
publication_cause ServiceInstancePublicationCause
subtype subtype_name
source_addresses vector<fuchsia.net/IpAddress>[64]

Response

NameType
result ServiceInstancePublicationResponder_OnPublication_Result

Reannounce

Initiates reannouncement of the service instance due to a change in the instance's port number or text strings. All announcements are filtered through OnPublication, which replies with the new port and text values.

Response

<EMPTY>

SetSubtypes

Sets the subtypes for the service instance. The specified subtypes will be announced subject to filtering through the responder. The initial subtype collection is empty.

Response

NameType
subtypes vector<string>[256]

ServiceInstancePublisher

Defined in fuchsia.net.mdns/service_instance_publisher.fidl

Discoverable protocol for publishing service instances.

Added: HEAD

PublishServiceInstance

Publishes a service instance. publication_responder is consulted via its OnPublication method for initial announcements and to answer queries. The service is published until the publication_responder channel closes. In addition to announcements and queries for the service type, all queries for subtypes are answered subject to filtering through the responder.

  • request service name of the type of service to be published. For example, cast uses '_googlecast._tcp.'.
  • request instance name of the instance to be published. This is often a descriptive name such as Office Printer or a name containing a large random number.
  • request options options to be applied to the publication.
  • request publication_responder client end of the ServiceInstancePublicationResponder channel consulted when formulating service instance announcements and query responses.
  • error reason the requested operation failed.

If a service with the same service and instance names is already published, the old publication will be terminated, and the responder channel for the old publication will be closed.

Request

NameType
service service_name
instance instance_name
options ServiceInstancePublicationOptions
publication_responder ServiceInstancePublicationResponder

Response

NameType
result ServiceInstancePublisher_PublishServiceInstance_Result

ServiceInstanceResolver

Defined in fuchsia.net.mdns/service_instance_resolver.fidl

Discoverable protocol for resolving service instances.

ResolveServiceInstance

Resolves a specific service instance by sending an SRV query and returns the endpoints, target and text records.

  • request service name of the type of service to be resolved. For example, cast uses '_googlecast._tcp.'.
  • request instance name of the instance to be resolved. This is often a descriptive name such as Office Printer or a name containing a large random number.
  • request timeout specifies how long the service should wait before giving up when waiting for a response to a resolution query.
  • request options options to be applied to the resolution.

A successful resolution will return target and at least one endpoint. Unsuccessful resolution occurs when either the service instance doesn't respond or there is no endpoint (IP & port).

Request

NameType
service service_name
instance instance_name
timeout zx/duration
options ServiceInstanceResolutionOptions

Response

NameType
instance ServiceInstance

ServiceSubscriber

Defined in fuchsia.net.mdns/mdns.fidl

Client-implemented interface for subscribers. Method replies are used to throttle traffic. The service won't necessarily wait for a reply before calling another method.

Deprecated: HEAD

OnInstanceChanged

Notifies the subscriber that addresses or text for a known service instance have changed.

Request

NameType
instance ServiceInstance

Response

<EMPTY>

OnInstanceDiscovered

Notifies the subscriber that a service instance has been discovered.

Request

NameType
instance ServiceInstance

Response

<EMPTY>

OnInstanceLost

Notifies the subscriber that a known service instance has been lost.

Request

NameType
service service_name
instance instance_name

Response

<EMPTY>

OnQuery

Notifies the subscriber that a PTR query has been sent.

Request

NameType
resource_type ResourceType

Response

<EMPTY>

ServiceSubscriber2

Defined in fuchsia.net.mdns/service_subscriber.fidl

Discoverable protocol for finding service instances.

Added: HEAD

SubscribeToService

Subscribes to a service. The subscription lasts until subscriber is unbound.

  • request service name of the type of service to which to subscribe. For example, cast uses '_googlecast._tcp.'. If this value is not a valid service name, subscriber is closed immediately and an error message is logged.
  • request options options to be applied to the subscription.
  • request listener client end of the ServiceSubscriptionListener channel.

Request

NameType
service service_name
options ServiceSubscriptionOptions
listener ServiceSubscriptionListener

ServiceSubscriptionListener

Defined in fuchsia.net.mdns/service_subscriber.fidl

Client-implemented interface for subscribers. Method replies are used to throttle traffic. The service won't necessarily wait for a reply before calling another method.

Added: HEAD

OnInstanceChanged

Notifies the subscriber that addresses or text for a known service instance have changed.

Request

NameType
instance ServiceInstance

Response

<EMPTY>

OnInstanceDiscovered

Notifies the subscriber that a service instance has been discovered.

Request

NameType
instance ServiceInstance

Response

<EMPTY>

OnInstanceLost

Notifies the subscriber that a known service instance has been lost.

Request

NameType
service service_name
instance instance_name

Response

<EMPTY>

OnQuery

Notifies the subscriber that a PTR query has been sent.

Request

NameType
resource_type ResourceType

Response

<EMPTY>

Subscriber

Defined in fuchsia.net.mdns/mdns.fidl

Discoverable protocol for finding service instances. Deprecated: use ServiceInstanceSubscriber.

Deprecated: HEAD

SubscribeToService

Subscribes to a service. The subscription lasts until subscriber is unbound.

Request

NameType
service service_name
subscriber ServiceSubscriber

STRUCTS

HostAddress

Defined in fuchsia.net.mdns/host_name_resolver.fidl

An IPv4 or IPv6 host address with the id of the interface through which the address was received.

Added: HEAD
FieldTypeDescriptionDefault
address fuchsia.net/IpAddress

IPv4 or IPv6 host address.

No default
interface fuchsia.net/interface_id

Interface through which the address was received.

No default
ttl zx/duration

Time-to-live of the relevant A or AAAA resource.

No default

ProxyHostPublisher_PublishProxyHost_Response

Defined in fuchsia.net.mdns/proxy_host_publisher.fidl

<EMPTY>

Publication

Defined in fuchsia.net.mdns/mdns.fidl

Describes an initial instance announcement or query response. In typical use, the default SRV priority, SRV weight and TTL values should be used. TTL values are rounded down to the nearest second. TTL values less than one second are not permitted and will result in the PublicationResponder channel being closed.

Deprecated: HEAD
FieldTypeDescriptionDefault
port uint16

The port at which the service instance is addressable.

No default
text vector<string>[256]

Text strings describing the instance.

No default
srv_priority uint16

The priority of the SRV resource record for this publication. See RFC6763 for details.

DEFAULT_SRV_PRIORITY
srv_weight uint16

The weight of the SRV resource record for this publication. See RFC6763 for details.

DEFAULT_SRV_WEIGHT
ptr_ttl zx/duration

Time-to-live for PTR resource records.

DEFAULT_PTR_TTL
srv_ttl zx/duration

Time-to-live for SRV resource records.

DEFAULT_SRV_TTL
txt_ttl zx/duration

Time-to-live for TXT resource records.

DEFAULT_TXT_TTL

Publisher_PublishServiceInstance_Response

Defined in fuchsia.net.mdns/mdns.fidl

<EMPTY>

ServiceInstancePublicationResponder_OnPublication_Response

Defined in fuchsia.net.mdns/service_instance_publisher.fidl

FieldTypeDescriptionDefault
publication ServiceInstancePublication No default

ServiceInstancePublisher_PublishServiceInstance_Response

Defined in fuchsia.net.mdns/service_instance_publisher.fidl

<EMPTY>

ENUMS

Error strict

Type: uint32

Defined in fuchsia.net.mdns/mdns.fidl

Error values for instance publishing.

Deprecated: HEAD
NameValueDescription
1

The specified service name is invalid.

2

The specified instance name is invalid.

4

The specified service instance is already being published by another host on the subnet. This result occurs when an initial probe discovers a conflicting instance.

5

OnPublicationError strict

Type: uint32

Defined in fuchsia.net.mdns/service_instance_publisher.fidl

Error values for ServiceInstancePublicationResponder.OnPublication.

Added: HEAD
NameValueDescription
1

Indicates the publisher should not respond to this publication request.

PublicationCause strict

Type: uint32

Defined in fuchsia.net.mdns/mdns.fidl

Describes the cause of a publication.

Deprecated: HEAD
NameValueDescription
1

Indicates the publication is part of an initial announcement.

2

Indicates the publication is in response to a question that requests a multicast response.

3

Indicates the publication is in response to a question that requests a unicast response.

PublishProxyHostError flexible

Type: uint32

Defined in fuchsia.net.mdns/proxy_host_publisher.fidl

Error values for ProxyHostPublisher.PublishProxyHost.

Added: HEAD
NameValueDescription
1

The specified host name is already being published by the mDNS local implementation.

2

The specified host name is already being published by another host on the subnet. This result occurs when an initial probe discovers a conflicting host name.

PublishServiceInstanceError strict

Type: uint32

Defined in fuchsia.net.mdns/service_instance_publisher.fidl

Error values for ServiceInstancePublisher.PublishServiceInstance.

Added: HEAD
NameValueDescription
1

The specified service instance is already being published by the mDNS local implementation.

2

The specified service instance is already being published by another host on the subnet. This result occurs when an initial probe discovers a conflicting service instance.

ResourceType strict

Type: uint32

Defined in fuchsia.net.mdns/service_subscriber.fidl

DNS resource types.

NameValueDescription
12

Domain name pointer.

255

Any (wildcard) type.

ServiceInstancePublicationCause strict

Type: uint32

Defined in fuchsia.net.mdns/service_instance_publisher.fidl

Describes the cause of a publication.

Added: HEAD
NameValueDescription
1

Indicates the publication is part of an initial announcement.

2

Indicates the publication is in response to a question that requests a multicast response.

3

Indicates the publication is in response to a question that requests a unicast response.

TABLES

HostNameResolutionOptions

Defined in fuchsia.net.mdns/host_name_resolver.fidl

Options for HostNameResolver.ResolveHostName.

Added: HEAD
OrdinalFieldTypeDescription
media Media

The media (wired, wireless, both) of the interfaces on which the host name should be resolved. The default is both wired and wireless media.

ip_versions IpVersions

The IP versions (V4, V6, both) with which the host name should resolved. The default value is both IPv4 and IPv6.

HostNameSubscriptionOptions

Defined in fuchsia.net.mdns/host_name_subscriber.fidl

Options for HostNameSubscriber.SubscribeToHostName.

Added: HEAD
OrdinalFieldTypeDescription
media Media

The media (wired, wireless, both) of the interfaces on which the host name should be subscribed to. The default is both wired and wireless media.

ip_versions IpVersions

The IP versions (V4, V6, both) with which the host name should subscribe to. The default value is both IPv4 and IPv6.

ProxyHostPublicationOptions

Defined in fuchsia.net.mdns/proxy_host_publisher.fidl

Options for ProxyHostPublisher.PublishProxyHost.

Added: HEAD
OrdinalFieldTypeDescription
media Media

The media (wired, wireless, both) of the interfaces on which the host name should be published. If this value is not supplied, the host name will be published on wired and wireless media.

ip_versions IpVersions

The IP versions (V4, V6, both) of the interfaces on which the host name should be published. If this value is not supplied, the host name will be published on interfaces of both IP versions.

perform_probe bool

Whether a probe for conflicting host names should be performed prior to publishing the host name. If this value is not supplied, probing is performed.

ServiceInstance

Defined in fuchsia.net.mdns/common.fidl

Describes a service instance.

OrdinalFieldTypeDescription
service service_name

The name of the service.

instance instance_name

The name of the service instance.

ipv4_endpoint fuchsia.net/Ipv4SocketAddress

IPv4 socket address for the service. May be empty. Deprecated: use addresses.

Deprecated: HEAD

DEPRECATED

ipv6_endpoint fuchsia.net/Ipv6SocketAddress

IPv6 socket address for the service. May be empty. Deprecated: use addresses.

Deprecated: HEAD

DEPRECATED

text vector<string>[256]

Text strings describing the instance. Deprecated: use text_strings.

Deprecated: HEAD

DEPRECATED

srv_priority uint16

The priority of the SRV resource record for this publication. See RFC6763 for details.

srv_weight uint16

The weight of the SRV resource record for this publication. See RFC6763 for details.

target host_name

The domain name of the target host.

addresses vector<fuchsia.net/SocketAddress>[64]

The socket addresses for the service instance.

Added: HEAD
text_strings vector<vector<uint8>>[256]

Text strings describing the instance.

Added: HEAD

ServiceInstancePublication

Defined in fuchsia.net.mdns/service_instance_publisher.fidl

Describes an initial instance announcement or query response. In typical use, the default SRV priority, SRV weight and TTL values should be used. TTL values are rounded down to the nearest second. TTL values less than one second are not permitted and will result in the ServiceInstancePublicationResponder channel being closed.

Added: HEAD
OrdinalFieldTypeDescription
port uint16

The port at which the service instance is addressable. This value is required.

text vector<vector<uint8>>[256]

Text strings describing the instance. If this value is not supplied, no text strings are associated with the instance in this publication.

srv_priority uint16

The priority of the SRV resource record for this publication. See RFC6763 for details. If this value is not supplied, the default SRV priority of 0 is used.

srv_weight uint16

The weight of the SRV resource record for this publication. See RFC6763 for details. If this value is not supplied, the default SRV weight of 0 is used.

ptr_ttl zx/duration

Time-to-live for PTR resource records. If this value is not supplied, the default PTR TTL of 2 minutes is used. This value is rounded down to the nearest second.

srv_ttl zx/duration

Time-to-live for SRV resource records. If this value is not supplied, the default SRV TTL of 2 minutes is used. This value is rounded down to the nearest second.

txt_ttl zx/duration

Time-to-live for TXT resource records. If this value is not supplied, the default TXT TTL of 75 minutes is used. This value is rounded down to the nearest second.

ServiceInstancePublicationOptions

Defined in fuchsia.net.mdns/service_instance_publisher.fidl

Options for ServiceInstancePublisher.PublishServiceInstance.

Added: HEAD
OrdinalFieldTypeDescription
media Media

The media (wired, wireless, both) of the interfaces on which the service instance should be published. The default media value depends on whether the ServiceInstancePublisher is associated with a proxy host. If so, the default matches the media value of the ProxyHostPublicationOptions for the proxy host. If not, the default is both wired and wireless media.

ip_versions IpVersions

The IP versions (V4, V6, both) with which the service instance should be published. The default ip_versions value depends on whether the ServiceInstancePublisher is associated with a proxy host. If so, the default matches the ip_versions value of the ProxyHostPublicationOptions for the proxy host. If not, the default value is both IPv4 and IPv6.

perform_probe bool

Whether a probe for conflicting instances should be performed prior to publishing the instance. If this value is not supplied, probing is performed.

ServiceInstanceResolutionOptions

Defined in fuchsia.net.mdns/service_instance_resolver.fidl

Options for ServiceInstanceResolver.ResolveServiceInstance.

OrdinalFieldTypeDescription
media Media

The media (wired, wireless, both) of the interfaces on which the service instance should be resolved. The default is both wired and wireless media.

ip_versions IpVersions

The IP versions (V4, V6, both) with which the service instance should resolved. The default value is both IPv4 and IPv6.

ServiceSubscriptionOptions

Defined in fuchsia.net.mdns/service_subscriber.fidl

Options for ServiceSubscriber.SubscribeToService.

Added: HEAD
OrdinalFieldTypeDescription
media Media

The media (wired, wireless, both) of the interfaces on which the service should be susbsribed. The default is both wired and wireless media.

ip_versions IpVersions

The IP versions (V4, V6, both) with which the service should subscribed. The default value is both IPv4 and IPv6.

UNIONS

ProxyHostPublisher_PublishProxyHost_Result strict

Defined in fuchsia.net.mdns/proxy_host_publisher.fidl

OrdinalVariantTypeDescription
response ProxyHostPublisher_PublishProxyHost_Response
err PublishProxyHostError

Publisher_PublishServiceInstance_Result strict

Defined in fuchsia.net.mdns/mdns.fidl

OrdinalVariantTypeDescription
response Publisher_PublishServiceInstance_Response
err Error

ServiceInstancePublicationResponder_OnPublication_Result strict

Defined in fuchsia.net.mdns/service_instance_publisher.fidl

OrdinalVariantTypeDescription
response ServiceInstancePublicationResponder_OnPublication_Response
err OnPublicationError

ServiceInstancePublisher_PublishServiceInstance_Result strict

Defined in fuchsia.net.mdns/service_instance_publisher.fidl

OrdinalVariantTypeDescription
response ServiceInstancePublisher_PublishServiceInstance_Response
err PublishServiceInstanceError

BITS

IpVersions strict

Type: uint32

Defined in fuchsia.net.mdns/common.fidl

Specifies IP versions on which a service instance should be published.

NameValueDescription
1

Specifies IPv4.

2

Specifies IPv6.

Media strict

Type: uint32

Defined in fuchsia.net.mdns/common.fidl

Specifies network media on which a service instance should be published.

NameValueDescription
1

Specifies wired interfaces.

2

Specifies wireless interfaces.

CONSTANTS

NameValueTypeDescription
DEFAULT_PTR_TTL 120000000000 int64
Deprecated: HEAD
DEFAULT_SRV_PRIORITY 0 uint16
Deprecated: HEAD
DEFAULT_SRV_TTL 120000000000 int64
Deprecated: HEAD
DEFAULT_SRV_WEIGHT 0 uint16
Deprecated: HEAD
DEFAULT_TXT_TTL 4500000000000 int64
Deprecated: HEAD
MAX_ADDRESSES 64 uint32
MAX_SUBTYPES 256 uint32
MAX_TEXT_STRINGS 256 uint32

TYPE ALIASES

NameValueDescription
host_name string[255]

Identifies a host. Host names consist of one or more labels separated by '.'s. A host name must not end with a '.'. Labels must each be 63 characters or less (not including the separator) and are UTF-8-encoded. A complete host name, including separators, must be 255 characters or less.

instance_name string[63]

Identifies a specific instance of a service being published. Instance names consist of a single label, which is at most 63 characters long and which contains no '.'s. Instance names are UTF-8-encoded.

service_name string[22]

Identifies a (type of) service being published. Service names consist of two labels, both terminated with a '.'. The first label must start with an underscore and be 16 characters or less, including the underscore. The second label must be either '_tcp' or '_udp'. Labels do not contain '.'s. With underscores and terminators, that makes for a maximum of 22 characters. Service names are UTF-8-encoded.

subtype_name string[63]

Identifies a subtype of a service. Subtype names consist of a single label, which is at most 63 characters long and which contains no '.'s. Subtype names are UTF-8-encoded.

txt_character_string vector[255]

Provides description relating to a service instance. In typical use, TXT strings consist of a key and value separated by '='. TXT strings must be at most 255 characters long and are UTF-8-encoded.

Added: HEAD
txt_string string[255]

Provides description relating to a service instance. In typical use, TXT strings consist of a key and value separated by '='. TXT strings must be at most 255 characters long and are UTF-8-encoded.

Deprecated: HEAD