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

[pull] master from project-chip:master #574

Merged
merged 17 commits into from
May 15, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
c291336
Updating documentation to make this more clear how to use CHIPTool (#…
woody-apple May 14, 2024
b653e8e
Updating code autocomplete (#33432)
woody-apple May 14, 2024
3219a5f
Ember compatibility layer - split out GlobalAttributeAccessInterface …
andy31415 May 14, 2024
d594086
Make test suite setup and teardown functions static (#33330)
mbknust May 14, 2024
052f162
[openthread] Fixed potential usage fault (#33434)
kkasperczyk-no May 14, 2024
0608519
Change MRP config depends for esp platform (#33433)
DejinChen May 14, 2024
cf2d2bd
[Silabs]Fix efr32 test driver event loop, run gtests, enable more tes…
jmartinez-silabs May 14, 2024
878fbb7
Enable FPU support for freeRTOS (#33443)
jmartinez-silabs May 14, 2024
3fe770c
[Linux] Initial implementation of fabric-admin to facilitate Fabric S…
yufengwangca May 14, 2024
85295b5
Updated chip-cert-bins Dockerfile (#33448)
rquidute May 14, 2024
4299e18
Delete ICDM 2.2 (#33453)
mkardous-silabs May 14, 2024
c7f7984
Fix crash caused by reading beyond the buffer. (#33449)
yufengwangca May 14, 2024
517d5cb
Fix Darwin tests in newer Xcode versions. (#33456)
bzbarsky-apple May 14, 2024
61dd4f7
Make AddToRetransTable in the wrong state non-fatal (#33461)
ksperling-apple May 15, 2024
8224308
[NXP][example][common] OTA requestor flag update (#33331)
Martin-NXP May 15, 2024
42c0aa5
[Darwin] Disable metric collector debug logging (#33458)
anush-apple May 15, 2024
eef8ea4
Improve BTP engine logging by using ChipLogByteSpan (#33435)
arkq May 15, 2024
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
4 changes: 4 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,10 @@ jobs:
--known-failure app/util/DataModelHandler.h \
--known-failure app/util/ember-compatibility-functions.cpp \
--known-failure app/util/ember-compatibility-functions.h \
--known-failure app/util/ember-global-attribute-access-interface.cpp \
--known-failure app/util/ember-global-attribute-access-interface.h \
--known-failure app/util/ember-io-storage.cpp \
--known-failure app/util/ember-io-storage.h \
--known-failure app/util/endpoint-config-api.h \
--known-failure app/util/generic-callbacks.h \
--known-failure app/util/generic-callback-stubs.cpp \
Expand Down
14 changes: 13 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,18 @@
"${workspaceFolder}/src/lib/**",
"${workspaceFolder}/src/system/**",
"${workspaceFolder}/third_party/nlassert/repo/include/**",
"${workspaceFolder}/third_party/nlio/repo/include/**"
"${workspaceFolder}/third_party/nlio/repo/include/**",
"${workspaceFolder}/darwin/Framework/CHIP/**",
"${workspaceFolder}/src/messaging/**",
"${workspaceFolder}/src/protocols/**",
"${workspaceFolder}/src/tracing/**",
"${workspaceFolder}/src/transport/**",
"${workspaceFolder}/src/inet/**",
"${workspaceFolder}/src/credentials/**",
"${workspaceFolder}/src/data_model/**",
"${workspaceFolder}/src/app/**",
"${workspaceFolder}/src/crytpo/**",
"${workspaceFolder}/src/platform/**"
],
"[cpp]": {
"editor.defaultFormatter": "xaver.clang-format"
Expand All @@ -35,6 +46,7 @@
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"files.associations": {
"*.mm": "cpp",
"iostream": "cpp",
"array": "cpp",
"atomic": "cpp",
Expand Down
12 changes: 6 additions & 6 deletions config/esp32/components/chip/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -1232,47 +1232,47 @@ menu "CHIP Device Layer"
menu "Message Reliable Protocol Options"
config MRP_LOCAL_ACTIVE_RETRY_INTERVAL_FOR_THREAD
int "MRP local active retry interval for Thread network in milliseconds"
depends on OPENTHREAD_ENABLED
depends on ENABLE_MATTER_OVER_THREAD
range 0 3600000
default 800
help
Base retry interval of the present Thread node when it is in the active state.

config MRP_LOCAL_ACTIVE_RETRY_INTERVAL_FOR_WIFI_ETHERNET
int "MRP local active retry interval for WIFI or ETHERNET network in milliseconds"
depends on !OPENTHREAD_ENABLED
depends on !ENABLE_MATTER_OVER_THREAD
range 0 3600000
default 300
help
Base retry interval of the present node (WIFI or ETHERNET) when it is in the active state.

config MRP_LOCAL_IDLE_RETRY_INTERVAL_FOR_THREAD
int "MRP local idle retry interval for Thread network in milliseconds"
depends on OPENTHREAD_ENABLED
depends on ENABLE_MATTER_OVER_THREAD
range 0 3600000
default 800
help
Base retry interval of the present Thread node when it is in the idle state.

config MRP_LOCAL_IDLE_RETRY_INTERVAL_FOR_WIFI_ETHERNET
int "MRP local idle retry interval for WIFI or ETHERNET network in milliseconds"
depends on !OPENTHREAD_ENABLED
depends on !ENABLE_MATTER_OVER_THREAD
range 0 3600000
default 500
help
Base retry interval of the present node (WIFI or ETHERNET) when it is in the idle state.

config MRP_RETRY_INTERVAL_SENDER_BOOST_FOR_THREAD
int "MRP retransmission delta timeout for Thread network in milliseconds"
depends on OPENTHREAD_ENABLED
depends on ENABLE_MATTER_OVER_THREAD
range 0 3600000
default 500
help
A constant value added to the calculated retransmission timeout.

config MRP_RETRY_INTERVAL_SENDER_BOOST_FOR_WIFI_ETHERNET
int "MRP retransmission delta timeout for WIFI or ETHERNET network in milliseconds"
depends on !OPENTHREAD_ENABLED
depends on !ENABLE_MATTER_OVER_THREAD
range 0 3600000
default 0
help
Expand Down
2 changes: 1 addition & 1 deletion examples/chip-tool/commands/common/Command.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,7 @@ bool HandleNullableOptional(Argument & arg, char * argValue, std::function<bool(
if (arg.isNullable())
{
auto * nullable = reinterpret_cast<chip::app::DataModel::Nullable<T> *>(arg.value);
if (strcmp(argValue, "null") == 0)
if (argValue != nullptr && strncmp(argValue, "null", 4) == 0)
{
nullable->SetNull();
return true;
Expand Down
25 changes: 25 additions & 0 deletions examples/fabric-admin/.gn
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Copyright (c) 2024 Project CHIP Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

import("//build_overrides/build.gni")

# The location of the build configuration file.
buildconfig = "${build_root}/config/BUILDCONFIG.gn"

# CHIP uses angle bracket includes.
check_system_includes = true

default_args = {
import("//args.gni")
}
120 changes: 120 additions & 0 deletions examples/fabric-admin/BUILD.gn
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
# Copyright (c) 2024 Project CHIP Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

import("//build_overrides/build.gni")
import("//build_overrides/chip.gni")

import("//build_overrides/editline.gni")
import("${chip_root}/build/chip/tools.gni")
import("${chip_root}/examples/fabric-admin/fabric-admin.gni")
import("${chip_root}/src/lib/core/core.gni")

assert(chip_build_tools)

config("config") {
include_dirs = [
".",
"${chip_root}/examples/common",
"${chip_root}/zzz_generated/app-common/app-common",
"${chip_root}/zzz_generated/chip-tool",
"${chip_root}/src/lib",
]

defines = [ "CONFIG_USE_SEPARATE_EVENTLOOP=${config_use_separate_eventloop}" ]

# Note: CONFIG_USE_LOCAL_STORAGE is tested for via #ifdef, not #if.
if (config_use_local_storage) {
defines += [ "CONFIG_USE_LOCAL_STORAGE" ]
}

cflags = [ "-Wconversion" ]
}

static_library("fabric-admin-utils") {
sources = [
"${chip_root}/src/controller/ExamplePersistentStorage.cpp",
"${chip_root}/src/controller/ExamplePersistentStorage.h",
"${chip_root}/zzz_generated/chip-tool/zap-generated/cluster/ComplexArgumentParser.cpp",
"${chip_root}/zzz_generated/chip-tool/zap-generated/cluster/logging/DataModelLogger.cpp",
"commands/clusters/ModelCommand.cpp",
"commands/clusters/ModelCommand.h",
"commands/common/CHIPCommand.cpp",
"commands/common/CHIPCommand.h",
"commands/common/Command.cpp",
"commands/common/Command.h",
"commands/common/Commands.cpp",
"commands/common/Commands.h",
"commands/common/CredentialIssuerCommands.h",
"commands/common/HexConversion.h",
"commands/common/RemoteDataModelLogger.cpp",
"commands/common/RemoteDataModelLogger.h",
"commands/pairing/OpenCommissioningWindowCommand.cpp",
"commands/pairing/OpenCommissioningWindowCommand.h",
"commands/pairing/PairingCommand.cpp",
"commands/pairing/ToTLVCert.cpp",
]

deps = [ "${chip_root}/src/app:events" ]

sources += [ "commands/interactive/InteractiveCommands.cpp" ]
deps += [
"${chip_root}/examples/common/websocket-server",
"${chip_root}/src/platform/logging:headers",
"${editline_root}:editline",
]

if (chip_device_platform == "darwin") {
sources += [ "commands/common/DeviceScanner.cpp" ]
}

public_deps = [
"${chip_root}/examples/common/tracing:commandline",
"${chip_root}/src/app/icd/client:handler",
"${chip_root}/src/app/icd/client:manager",
"${chip_root}/src/app/server",
"${chip_root}/src/app/tests/suites/commands/interaction_model",
"${chip_root}/src/controller/data_model",
"${chip_root}/src/credentials:file_attestation_trust_store",
"${chip_root}/src/lib",
"${chip_root}/src/lib/core:types",
"${chip_root}/src/lib/support/jsontlv",
"${chip_root}/src/platform",
"${chip_root}/third_party/inipp",
"${chip_root}/third_party/jsoncpp",
]

public_configs = [ ":config" ]

if (chip_enable_transport_trace) {
public_deps +=
[ "${chip_root}/examples/common/tracing:trace_handlers_decoder" ]
}

output_dir = root_out_dir
}

executable("fabric-admin") {
sources = [ "main.cpp" ]

deps = [
":fabric-admin-utils",
"${chip_root}/src/platform/logging:force_stdio",
]

output_dir = root_out_dir
}

group("default") {
deps = [ ":fabric-admin" ]
}
34 changes: 34 additions & 0 deletions examples/fabric-admin/args.gni
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Copyright (c) 2024 Project CHIP Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

import("//build_overrides/chip.gni")

import("${chip_root}/config/standalone/args.gni")

chip_device_project_config_include = "<CHIPProjectAppConfig.h>"
chip_project_config_include = "<CHIPProjectAppConfig.h>"
chip_system_project_config_include = "<SystemProjectConfig.h>"

chip_project_config_include_dirs =
[ "${chip_root}/examples/fabric-admin/include" ]
chip_project_config_include_dirs += [ "${chip_root}/config/standalone" ]

matter_enable_tracing_support = true

matter_log_json_payload_hex = true
matter_log_json_payload_decode_full = true

# make fabric-admin very strict by default
chip_tlv_validate_char_string_on_read = true
chip_tlv_validate_char_string_on_write = true
1 change: 1 addition & 0 deletions examples/fabric-admin/build_overrides
Loading
Loading