Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove config CHIP_DEVICE_CONFIG_ENABLE_DNSSD #15733

Merged
merged 5 commits into from
Mar 3, 2022
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 1 addition & 5 deletions src/app/server/Server.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -139,9 +139,7 @@ CHIP_ERROR Server::Init(AppDelegate * delegate, uint16_t secureServicePort, uint
err = mFabrics.Init(&mDeviceStorage);
SuccessOrExit(err);

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
app::DnssdServer::Instance().SetFabricTable(&mFabrics);
#endif // CHIP_DEVICE_CONFIG_ENABLE_DNSSD

// Group data provider must be initialized after mDeviceStorage
err = mGroupsProvider.Init();
Expand Down Expand Up @@ -237,15 +235,13 @@ CHIP_ERROR Server::Init(AppDelegate * delegate, uint16_t secureServicePort, uint
#endif
}

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
app::DnssdServer::Instance().SetSecuredPort(mSecuredServicePort);
app::DnssdServer::Instance().SetUnsecuredPort(mUnsecuredServicePort);
app::DnssdServer::Instance().SetInterfaceId(mInterfaceId);
#endif // CHIP_DEVICE_CONFIG_ENABLE_DNSSD

// TODO @bzbarsky-apple @cecille Move to examples
// ESP32 and Mbed OS examples have a custom logic for enabling DNS-SD
#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD && !CHIP_DEVICE_LAYER_TARGET_ESP32 && !CHIP_DEVICE_LAYER_TARGET_MBED && \
#if !CHIP_DEVICE_LAYER_TARGET_ESP32 && !CHIP_DEVICE_LAYER_TARGET_MBED && \
(!CHIP_DEVICE_LAYER_TARGET_AMEBA || !CHIP_DEVICE_CONFIG_ENABLE_CHIPOBLE)
// StartServer only enables commissioning mode if device has not been commissioned
app::DnssdServer::Instance().StartServer();
Expand Down
10 changes: 0 additions & 10 deletions src/controller/AutoCommissioner.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -157,12 +157,7 @@ CommissioningStage AutoCommissioner::GetNextCommissioningStage(CommissioningStag
}
else
{
// TODO: I dont think this is to spec - not sure where we'd have a commissioner that doesn't have dnssd.
#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
return CommissioningStage::kFindOperational;
#else
return CommissioningStage::kSendComplete;
#endif
}
case CommissioningStage::kWiFiNetworkSetup:
if (mParams.GetThreadOperationalDataset().HasValue() && mDeviceCommissioningInfo.network.thread != kInvalidEndpointId)
Expand Down Expand Up @@ -193,12 +188,7 @@ CommissioningStage AutoCommissioner::GetNextCommissioningStage(CommissioningStag
return CommissioningStage::kFindOperational;
}
case CommissioningStage::kThreadNetworkEnable:
// TODO: I dont think this is to spec - not sure where we'd have a commissioner that doesn't have dnssd.
#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
return CommissioningStage::kFindOperational;
#else
return CommissioningStage::kSendComplete;
#endif
case CommissioningStage::kFindOperational:
return CommissioningStage::kSendComplete;
case CommissioningStage::kSendComplete:
Expand Down
27 changes: 3 additions & 24 deletions src/controller/CHIPDeviceController.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -126,13 +126,11 @@ CHIP_ERROR DeviceController::Init(ControllerInitParams params)

VerifyOrReturnError(params.systemState->TransportMgr() != nullptr, CHIP_ERROR_INVALID_ARGUMENT);

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
ReturnErrorOnFailure(mDNSResolver.Init(params.systemState->UDPEndPointManager()));
mDNSResolver.SetOperationalDelegate(this);
mDNSResolver.SetCommissioningDelegate(this);
RegisterDeviceAddressUpdateDelegate(params.deviceAddressUpdateDelegate);
RegisterDeviceDiscoveryDelegate(params.deviceDiscoveryDelegate);
#endif // CHIP_DEVICE_CONFIG_ENABLE_DNSSD

VerifyOrReturnError(params.operationalCredentialsDelegate != nullptr, CHIP_ERROR_INVALID_ARGUMENT);
mOperationalCredentialsDelegate = params.operationalCredentialsDelegate;
Expand Down Expand Up @@ -165,11 +163,7 @@ CHIP_ERROR DeviceController::Init(ControllerInitParams params)
.sessionInitParams = deviceInitParams,
.dnsCache = &mDNSCache,
.devicePool = &mDevicePool,
#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
.dnsResolver = &mDNSResolver,
#else
.dnsResolver = nullptr,
#endif
.dnsResolver = &mDNSResolver,
};

mCASESessionManager = chip::Platform::New<CASESessionManager>(sessionManagerConfig);
Expand Down Expand Up @@ -255,11 +249,9 @@ CHIP_ERROR DeviceController::Shutdown()
mSystemState->Release();
mSystemState = nullptr;

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
mDNSResolver.Shutdown();
mDeviceAddressUpdateDelegate = nullptr;
mDeviceDiscoveryDelegate = nullptr;
#endif // CHIP_DEVICE_CONFIG_ENABLE_DNSSD

chip::Platform::Delete(mCASESessionManager);
mCASESessionManager = nullptr;
Expand Down Expand Up @@ -554,8 +546,6 @@ CHIP_ERROR DeviceController::OpenCommissioningWindowInternal()
return CHIP_NO_ERROR;
}

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD

void DeviceController::OnOperationalNodeResolved(const chip::Dnssd::ResolvedNodeData & nodeData)
{
VerifyOrReturn(mState == State::Initialized,
Expand All @@ -565,7 +555,7 @@ void DeviceController::OnOperationalNodeResolved(const chip::Dnssd::ResolvedNode
{
mDeviceAddressUpdateDelegate->OnAddressUpdateComplete(nodeData.mPeerId.GetNodeId(), CHIP_NO_ERROR);
}
};
}

void DeviceController::OnOperationalNodeResolutionFailed(const chip::PeerId & peer, CHIP_ERROR error)
{
Expand All @@ -578,9 +568,7 @@ void DeviceController::OnOperationalNodeResolutionFailed(const chip::PeerId & pe
{
mDeviceAddressUpdateDelegate->OnAddressUpdateComplete(peer.GetNodeId(), error);
}
};

#endif // CHIP_DEVICE_CONFIG_ENABLE_DNSSD
}

ControllerDeviceInitParams DeviceController::GetControllerDeviceInitParams()
{
Expand Down Expand Up @@ -1355,7 +1343,6 @@ void DeviceCommissioner::OnSessionEstablishmentTimeoutCallback(System::Layer * a
static_cast<DeviceCommissioner *>(aAppState)->OnSessionEstablishmentTimeout();
}

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
CHIP_ERROR DeviceCommissioner::DiscoverCommissionableNodes(Dnssd::DiscoveryFilter filter)
{
ReturnErrorOnFailure(SetUpNodeDiscovery());
Expand All @@ -1367,8 +1354,6 @@ const Dnssd::DiscoveredNodeData * DeviceCommissioner::GetDiscoveredDevice(int id
return GetDiscoveredNode(idx);
}

#endif // CHIP_DEVICE_CONFIG_ENABLE_DNSSD

#if CHIP_DEVICE_CONFIG_ENABLE_COMMISSIONER_DISCOVERY // make this commissioner discoverable

CHIP_ERROR DeviceCommissioner::SetUdcListenPort(uint16_t listenPort)
Expand All @@ -1390,8 +1375,6 @@ void DeviceCommissioner::FindCommissionableNode(char * instanceName)

#endif // CHIP_DEVICE_CONFIG_ENABLE_COMMISSIONER_DISCOVERY

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD

void DeviceCommissioner::OnNodeDiscovered(const chip::Dnssd::DiscoveredNodeData & nodeData)
{
#if CHIP_DEVICE_CONFIG_ENABLE_COMMISSIONER_DISCOVERY
Expand All @@ -1403,7 +1386,6 @@ void DeviceCommissioner::OnNodeDiscovered(const chip::Dnssd::DiscoveredNodeData
AbstractDnssdDiscoveryController::OnNodeDiscovered(nodeData);
mSetUpCodePairer.NotifyCommissionableDeviceDiscovered(nodeData);
}
#endif // CHIP_DEVICE_CONFIG_ENABLE_DNSSD

void OnBasicFailure(void * context, CHIP_ERROR error)
{
Expand Down Expand Up @@ -1431,7 +1413,6 @@ void DeviceCommissioner::CommissioningStageComplete(CHIP_ERROR err, Commissionin
}
}

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
void DeviceCommissioner::OnOperationalNodeResolved(const chip::Dnssd::ResolvedNodeData & nodeData)
{
ChipLogProgress(Controller, "OperationalDiscoveryComplete for device ID 0x" ChipLogFormatX64,
Expand All @@ -1457,8 +1438,6 @@ void DeviceCommissioner::OnOperationalNodeResolutionFailed(const chip::PeerId &
DeviceController::OnOperationalNodeResolutionFailed(peer, error);
}

#endif

void DeviceCommissioner::OnDeviceConnectedFn(void * context, OperationalDeviceProxy * device)
{
// CASE session established.
Expand Down
30 changes: 7 additions & 23 deletions src/controller/CHIPDeviceController.h
Original file line number Diff line number Diff line change
Expand Up @@ -70,12 +70,10 @@
#if CONFIG_NETWORK_LAYER_BLE
#include <ble/BleLayer.h>
#endif
#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
#include <controller/DeviceAddressUpdateDelegate.h>
#include <controller/DeviceDiscoveryDelegate.h>
#include <lib/dnssd/Resolver.h>
#include <lib/dnssd/ResolverProxy.h>
#endif

namespace chip {

Expand All @@ -91,12 +89,10 @@ void OnBasicFailure(void * context, CHIP_ERROR err);

struct ControllerInitParams
{
PersistentStorageDelegate * storageDelegate = nullptr;
DeviceControllerSystemState * systemState = nullptr;
#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
DeviceAddressUpdateDelegate * deviceAddressUpdateDelegate = nullptr;
DeviceDiscoveryDelegate * deviceDiscoveryDelegate = nullptr;
#endif
PersistentStorageDelegate * storageDelegate = nullptr;
DeviceControllerSystemState * systemState = nullptr;
DeviceAddressUpdateDelegate * deviceAddressUpdateDelegate = nullptr;
DeviceDiscoveryDelegate * deviceDiscoveryDelegate = nullptr;
OperationalCredentialsDelegate * operationalCredentialsDelegate = nullptr;

/* The following keypair must correspond to the public key used for generating
Expand Down Expand Up @@ -176,12 +172,9 @@ typedef void (*OnOpenCommissioningWindow)(void * context, NodeId deviceId, CHIP_
* and device pairing information for individual devices). Alternatively, this class can retrieve the
* relevant information when the application tries to communicate with the device
*/
class DLL_EXPORT DeviceController : public SessionRecoveryDelegate
#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
,
class DLL_EXPORT DeviceController : public SessionRecoveryDelegate,
public AbstractDnssdDiscoveryController,
public Dnssd::OperationalResolveDelegate
#endif
{
public:
DeviceController();
Expand Down Expand Up @@ -315,10 +308,8 @@ class DLL_EXPORT DeviceController : public SessionRecoveryDelegate
Callback::Callback<OnOpenCommissioningWindow> * callback,
bool readVIDPIDAttributes = false);

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
void RegisterDeviceAddressUpdateDelegate(DeviceAddressUpdateDelegate * delegate) { mDeviceAddressUpdateDelegate = delegate; }
void RegisterDeviceDiscoveryDelegate(DeviceDiscoveryDelegate * delegate) { mDeviceDiscoveryDelegate = delegate; }
#endif

/**
* @brief Get the Compressed Fabric ID assigned to the device.
Expand Down Expand Up @@ -361,13 +352,11 @@ class DLL_EXPORT DeviceController : public SessionRecoveryDelegate
FabricId mFabricId = kUndefinedFabricId;
FabricInfo * mFabricInfo = nullptr;

PersistentStorageDelegate * mStorageDelegate = nullptr;
#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
PersistentStorageDelegate * mStorageDelegate = nullptr;
DeviceAddressUpdateDelegate * mDeviceAddressUpdateDelegate = nullptr;
// TODO(cecille): Make this configuarable.
static constexpr int kMaxCommissionableNodes = 10;
Dnssd::DiscoveredNodeData mCommissionableNodes[kMaxCommissionableNodes];
#endif
DeviceControllerSystemState * mSystemState = nullptr;

CHIP_ERROR InitializePairedDeviceList();
Expand All @@ -383,12 +372,10 @@ class DLL_EXPORT DeviceController : public SessionRecoveryDelegate
//////////// SessionRecoveryDelegate Implementation ///////////////
void OnFirstMessageDeliveryFailed(const SessionHandle & session) override;

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
//////////// OperationalResolveDelegate Implementation ///////////////
void OnOperationalNodeResolved(const chip::Dnssd::ResolvedNodeData & nodeData) override;
void OnOperationalNodeResolutionFailed(const chip::PeerId & peerId, CHIP_ERROR error) override;
DiscoveredNodeList GetDiscoveredNodes() override { return DiscoveredNodeList(mCommissionableNodes); }
#endif // CHIP_DEVICE_CONFIG_ENABLE_DNSSD

private:
void ReleaseOperationalDevice(OperationalDeviceProxy * device);
Expand Down Expand Up @@ -605,7 +592,6 @@ class DLL_EXPORT DeviceCommissioner : public DeviceController,
*/
CHIP_ERROR CloseBleConnection();
#endif
#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
/**
* @brief
* Discover all devices advertising as commissionable.
Expand All @@ -632,7 +618,7 @@ class DLL_EXPORT DeviceCommissioner : public DeviceController,

void OnOperationalNodeResolved(const chip::Dnssd::ResolvedNodeData & nodeData) override;
void OnOperationalNodeResolutionFailed(const chip::PeerId & peerId, CHIP_ERROR error) override;
#endif

#if CHIP_DEVICE_CONFIG_ENABLE_COMMISSIONER_DISCOVERY // make this commissioner discoverable
/**
* @brief
Expand All @@ -653,7 +639,6 @@ class DLL_EXPORT DeviceCommissioner : public DeviceController,
UserDirectedCommissioningServer * GetUserDirectedCommissioningServer() { return mUdcServer; }
#endif // CHIP_DEVICE_CONFIG_ENABLE_COMMISSIONER_DISCOVERY

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
/**
* @brief
* Overrides method from AbstractDnssdDiscoveryController
Expand All @@ -662,7 +647,6 @@ class DLL_EXPORT DeviceCommissioner : public DeviceController,
*
*/
void OnNodeDiscovered(const chip::Dnssd::DiscoveredNodeData & nodeData) override;
#endif

void RegisterPairingDelegate(DevicePairingDelegate * pairingDelegate) { mPairingDelegate = pairingDelegate; }

Expand Down
8 changes: 1 addition & 7 deletions src/controller/CHIPDeviceControllerFactory.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -156,9 +156,7 @@ CHIP_ERROR DeviceControllerFactory::InitSystemState(FactoryInitParams params)

ReturnErrorOnFailure(chip::app::InteractionModelEngine::GetInstance()->Init(stateParams.exchangeMgr));

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
ReturnErrorOnFailure(Dnssd::Resolver::Instance().Init(stateParams.udpEndPointManager));
#endif // CHIP_DEVICE_CONFIG_ENABLE_DNSSD

if (params.enableServerInteractions)
{
Expand Down Expand Up @@ -205,9 +203,7 @@ CHIP_ERROR DeviceControllerFactory::InitSystemState(FactoryInitParams params)

void DeviceControllerFactory::PopulateInitParams(ControllerInitParams & controllerParams, const SetupParams & params)
{
#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
controllerParams.deviceAddressUpdateDelegate = params.deviceAddressUpdateDelegate;
#endif
controllerParams.deviceAddressUpdateDelegate = params.deviceAddressUpdateDelegate;
controllerParams.operationalCredentialsDelegate = params.operationalCredentialsDelegate;
controllerParams.operationalKeypair = params.operationalKeypair;
controllerParams.controllerNOC = params.controllerNOC;
Expand Down Expand Up @@ -287,9 +283,7 @@ CHIP_ERROR DeviceControllerSystemState::Shutdown()
mCASEServer = nullptr;
}

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
Dnssd::Resolver::Instance().Shutdown();
#endif // CHIP_DEVICE_CONFIG_ENABLE_DNSSD

// Shut down the interaction model
app::InteractionModelEngine::GetInstance()->Shutdown();
Expand Down
4 changes: 1 addition & 3 deletions src/controller/CHIPDeviceControllerFactory.h
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,7 @@ namespace Controller {

struct SetupParams
{
#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
DeviceAddressUpdateDelegate * deviceAddressUpdateDelegate = nullptr;
#endif
DeviceAddressUpdateDelegate * deviceAddressUpdateDelegate = nullptr;
OperationalCredentialsDelegate * operationalCredentialsDelegate = nullptr;

PersistentStorageDelegate * storageDelegate = nullptr;
Expand Down
10 changes: 0 additions & 10 deletions src/controller/SetUpCodePairer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -105,23 +105,16 @@ CHIP_ERROR SetUpCodePairer::StopConnectOverBle()

CHIP_ERROR SetUpCodePairer::StartDiscoverOverIP(SetupPayload & payload)
{
#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
currentFilter.type = payload.isShortDiscriminator ? Dnssd::DiscoveryFilterType::kShortDiscriminator
: Dnssd::DiscoveryFilterType::kLongDiscriminator;
currentFilter.code =
payload.isShortDiscriminator ? static_cast<uint16_t>((payload.discriminator >> 8) & 0x0F) : payload.discriminator;
return mCommissioner->DiscoverCommissionableNodes(currentFilter);
#else
return CHIP_ERROR_UNSUPPORTED_CHIP_FEATURE;
#endif // CHIP_DEVICE_CONFIG_ENABLE_DNSSD
}

CHIP_ERROR SetUpCodePairer::StopConnectOverIP()
{
#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD
currentFilter.type = Dnssd::DiscoveryFilterType::kNone;
#endif // CHIP_DEVICE_CONFIG_ENABLE_DNSSD
return CHIP_NO_ERROR;
}

CHIP_ERROR SetUpCodePairer::StartDiscoverOverSoftAP(SetupPayload & payload)
Expand Down Expand Up @@ -163,8 +156,6 @@ void SetUpCodePairer::OnDiscoveredDeviceOverBleError(void * appState, CHIP_ERROR
}
#endif // CONFIG_NETWORK_LAYER_BLE

#if CHIP_DEVICE_CONFIG_ENABLE_DNSSD

bool SetUpCodePairer::NodeMatchesCurrentFilter(const Dnssd::DiscoveredNodeData & nodeData)
{
if (nodeData.commissioningMode == 0)
Expand Down Expand Up @@ -199,7 +190,6 @@ void SetUpCodePairer::NotifyCommissionableDeviceDiscovered(const Dnssd::Discover
RendezvousParameters params = RendezvousParameters().SetPeerAddress(peerAddress);
OnDeviceDiscovered(params);
}
#endif // CHIP_DEVICE_CONFIG_ENABLE_DNSSD

} // namespace Controller
} // namespace chip
Loading