2024-06-05 20:10:03 +00:00
|
|
|
// SPDX-FileCopyrightText: 2023 The Pion community <https://pion.ly>
|
|
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
|
2022-03-10 09:44:48 +00:00
|
|
|
package mdns
|
|
|
|
|
|
|
|
import (
|
2024-06-05 20:10:03 +00:00
|
|
|
"net"
|
2022-03-10 09:44:48 +00:00
|
|
|
"time"
|
|
|
|
|
|
|
|
"github.com/pion/logging"
|
|
|
|
)
|
|
|
|
|
|
|
|
const (
|
|
|
|
// DefaultAddress is the default used by mDNS
|
|
|
|
// and in most cases should be the address that the
|
|
|
|
// net.Conn passed to Server is bound to
|
|
|
|
DefaultAddress = "224.0.0.0:5353"
|
|
|
|
)
|
|
|
|
|
|
|
|
// Config is used to configure a mDNS client or server.
|
|
|
|
type Config struct {
|
|
|
|
// QueryInterval controls how often we sends Queries until we
|
|
|
|
// get a response for the requested name
|
|
|
|
QueryInterval time.Duration
|
|
|
|
|
|
|
|
// LocalNames are the names that we will generate answers for
|
|
|
|
// when we get questions
|
|
|
|
LocalNames []string
|
|
|
|
|
2024-06-05 20:10:03 +00:00
|
|
|
// LocalAddress will override the published address with the given IP
|
|
|
|
// when set. Otherwise, the automatically determined address will be used.
|
|
|
|
LocalAddress net.IP
|
|
|
|
|
2022-03-10 09:44:48 +00:00
|
|
|
LoggerFactory logging.LoggerFactory
|
2024-06-05 20:10:03 +00:00
|
|
|
|
|
|
|
// IncludeLoopback will include loopback interfaces to be eligble for queries and answers.
|
|
|
|
IncludeLoopback bool
|
|
|
|
|
|
|
|
// Interfaces will override the interfaces used for queries and answers.
|
|
|
|
Interfaces []net.Interface
|
2022-03-10 09:44:48 +00:00
|
|
|
}
|