From bafedb022ba97ba9d031ca0ea629cc4877a6d5c6 Mon Sep 17 00:00:00 2001 From: ivmarkov Date: Sat, 22 Jul 2023 10:29:18 +0000 Subject: [PATCH] Rename matter(-iot) to rs-matter; matter_macro_derive to rs-matter-macros; tlv_tool to just tlv --- .github/workflows/build-tlv-tool.yml | 7 ++- .github/workflows/test-linux.yml | 4 +- Cargo.toml | 4 +- README.md | 2 +- examples/onoff_light/src/dev_att.rs | 4 +- examples/onoff_light/src/lib.rs | 18 -------- examples/onoff_light/src/main.rs | 44 +++++++++---------- examples/speaker/src/dev_att.rs | 4 +- examples/speaker/src/lib.rs | 18 -------- examples/speaker/src/main.rs | 10 ++--- examples/speaker/src/speaker.rs | 11 ++--- .../Cargo.toml | 2 +- rs-matter-macros/README.md | 5 +++ .../src/lib.rs | 2 +- {matter => rs-matter}/Cargo.toml | 6 +-- rs-matter/README.md | 3 ++ {matter => rs-matter}/build.rs | 0 {matter => rs-matter}/src/acl.rs | 0 {matter => rs-matter}/src/cert/asn1_writer.rs | 0 {matter => rs-matter}/src/cert/mod.rs | 0 {matter => rs-matter}/src/cert/printer.rs | 0 {matter => rs-matter}/src/codec/base38.rs | 0 {matter => rs-matter}/src/codec/mod.rs | 0 {matter => rs-matter}/src/core.rs | 0 .../src/crypto/crypto_dummy.rs | 0 .../src/crypto/crypto_esp_mbedtls.rs | 0 .../src/crypto/crypto_mbedtls.rs | 0 .../src/crypto/crypto_openssl.rs | 0 .../src/crypto/crypto_rustcrypto.rs | 0 {matter => rs-matter}/src/crypto/mod.rs | 0 .../data_model/cluster_basic_information.rs | 0 .../src/data_model/cluster_media_playback.rs | 0 .../src/data_model/cluster_on_off.rs | 0 .../src/data_model/cluster_template.rs | 0 {matter => rs-matter}/src/data_model/core.rs | 0 .../src/data_model/device_types.rs | 0 {matter => rs-matter}/src/data_model/mod.rs | 0 .../src/data_model/objects/attribute.rs | 0 .../src/data_model/objects/cluster.rs | 0 .../src/data_model/objects/dataver.rs | 0 .../src/data_model/objects/encoder.rs | 0 .../src/data_model/objects/endpoint.rs | 0 .../src/data_model/objects/handler.rs | 0 .../src/data_model/objects/metadata.rs | 0 .../src/data_model/objects/mod.rs | 0 .../src/data_model/objects/node.rs | 0 .../src/data_model/objects/privilege.rs | 0 .../src/data_model/root_endpoint.rs | 0 .../src/data_model/sdm/admin_commissioning.rs | 0 .../src/data_model/sdm/dev_att.rs | 0 .../src/data_model/sdm/failsafe.rs | 0 .../data_model/sdm/general_commissioning.rs | 0 .../src/data_model/sdm/mod.rs | 0 .../src/data_model/sdm/noc.rs | 0 .../src/data_model/sdm/nw_commissioning.rs | 0 .../data_model/system_model/access_control.rs | 0 .../src/data_model/system_model/descriptor.rs | 0 .../src/data_model/system_model/mod.rs | 0 {matter => rs-matter}/src/error.rs | 0 {matter => rs-matter}/src/fabric.rs | 0 {matter => rs-matter}/src/group_keys.rs | 0 .../src/interaction_model/core.rs | 0 .../src/interaction_model/messages.rs | 0 .../src/interaction_model/mod.rs | 0 {matter => rs-matter}/src/lib.rs | 12 ++--- {matter => rs-matter}/src/mdns.rs | 0 {matter => rs-matter}/src/mdns/astro.rs | 0 {matter => rs-matter}/src/mdns/builtin.rs | 0 {matter => rs-matter}/src/mdns/proto.rs | 0 {matter => rs-matter}/src/pairing/code.rs | 0 {matter => rs-matter}/src/pairing/mod.rs | 0 {matter => rs-matter}/src/pairing/qr.rs | 0 .../src/pairing/vendor_identifiers.rs | 0 {matter => rs-matter}/src/persist.rs | 0 .../src/secure_channel/case.rs | 0 .../src/secure_channel/common.rs | 0 .../src/secure_channel/core.rs | 0 .../src/secure_channel/crypto.rs | 0 .../src/secure_channel/crypto_dummy.rs | 0 .../src/secure_channel/crypto_esp_mbedtls.rs | 0 .../src/secure_channel/crypto_mbedtls.rs | 0 .../src/secure_channel/crypto_openssl.rs | 0 .../src/secure_channel/crypto_rustcrypto.rs | 0 .../src/secure_channel/mod.rs | 0 .../src/secure_channel/pake.rs | 0 .../src/secure_channel/spake2p.rs | 0 .../secure_channel/spake2p_test_vectors.rs | 0 .../src/secure_channel/status_report.rs | 0 {matter => rs-matter}/src/tlv/mod.rs | 2 +- {matter => rs-matter}/src/tlv/parser.rs | 0 {matter => rs-matter}/src/tlv/traits.rs | 2 +- {matter => rs-matter}/src/tlv/writer.rs | 0 {matter => rs-matter}/src/transport/core.rs | 0 {matter => rs-matter}/src/transport/dedup.rs | 0 .../src/transport/exchange.rs | 0 {matter => rs-matter}/src/transport/mod.rs | 0 {matter => rs-matter}/src/transport/mrp.rs | 0 .../src/transport/network.rs | 0 {matter => rs-matter}/src/transport/packet.rs | 0 {matter => rs-matter}/src/transport/pipe.rs | 0 .../src/transport/plain_hdr.rs | 0 .../src/transport/proto_hdr.rs | 0 .../src/transport/session.rs | 0 {matter => rs-matter}/src/transport/udp.rs | 0 {matter => rs-matter}/src/utils/epoch.rs | 0 {matter => rs-matter}/src/utils/mod.rs | 0 {matter => rs-matter}/src/utils/parsebuf.rs | 0 {matter => rs-matter}/src/utils/rand.rs | 0 {matter => rs-matter}/src/utils/select.rs | 0 {matter => rs-matter}/src/utils/writebuf.rs | 0 .../tests/common/attributes.rs | 2 +- .../tests/common/commands.rs | 2 +- .../tests/common/echo_cluster.rs | 4 +- .../tests/common/handlers.rs | 2 +- .../tests/common/im_engine.rs | 18 ++++---- {matter => rs-matter}/tests/common/mod.rs | 0 .../tests/data_model/acl_and_dataver.rs | 2 +- .../tests/data_model/attribute_lists.rs | 2 +- .../tests/data_model/attributes.rs | 2 +- .../tests/data_model/commands.rs | 2 +- .../tests/data_model/long_reads.rs | 2 +- .../tests/data_model/timed_requests.rs | 2 +- .../tests/data_model_tests.rs | 0 tools/{tlv_tool => tlv}/Cargo.toml | 4 +- tools/{tlv_tool => tlv}/README.md | 5 ++- tools/{tlv_tool => tlv}/src/main.rs | 6 +-- 126 files changed, 94 insertions(+), 121 deletions(-) delete mode 100644 examples/onoff_light/src/lib.rs delete mode 100644 examples/speaker/src/lib.rs rename {matter_macro_derive => rs-matter-macros}/Cargo.toml (91%) create mode 100644 rs-matter-macros/README.md rename {matter_macro_derive => rs-matter-macros}/src/lib.rs (99%) rename {matter => rs-matter}/Cargo.toml (97%) create mode 100644 rs-matter/README.md rename {matter => rs-matter}/build.rs (100%) rename {matter => rs-matter}/src/acl.rs (100%) rename {matter => rs-matter}/src/cert/asn1_writer.rs (100%) rename {matter => rs-matter}/src/cert/mod.rs (100%) rename {matter => rs-matter}/src/cert/printer.rs (100%) rename {matter => rs-matter}/src/codec/base38.rs (100%) rename {matter => rs-matter}/src/codec/mod.rs (100%) rename {matter => rs-matter}/src/core.rs (100%) rename {matter => rs-matter}/src/crypto/crypto_dummy.rs (100%) rename {matter => rs-matter}/src/crypto/crypto_esp_mbedtls.rs (100%) rename {matter => rs-matter}/src/crypto/crypto_mbedtls.rs (100%) rename {matter => rs-matter}/src/crypto/crypto_openssl.rs (100%) rename {matter => rs-matter}/src/crypto/crypto_rustcrypto.rs (100%) rename {matter => rs-matter}/src/crypto/mod.rs (100%) rename {matter => rs-matter}/src/data_model/cluster_basic_information.rs (100%) rename {matter => rs-matter}/src/data_model/cluster_media_playback.rs (100%) rename {matter => rs-matter}/src/data_model/cluster_on_off.rs (100%) rename {matter => rs-matter}/src/data_model/cluster_template.rs (100%) rename {matter => rs-matter}/src/data_model/core.rs (100%) rename {matter => rs-matter}/src/data_model/device_types.rs (100%) rename {matter => rs-matter}/src/data_model/mod.rs (100%) rename {matter => rs-matter}/src/data_model/objects/attribute.rs (100%) rename {matter => rs-matter}/src/data_model/objects/cluster.rs (100%) rename {matter => rs-matter}/src/data_model/objects/dataver.rs (100%) rename {matter => rs-matter}/src/data_model/objects/encoder.rs (100%) rename {matter => rs-matter}/src/data_model/objects/endpoint.rs (100%) rename {matter => rs-matter}/src/data_model/objects/handler.rs (100%) rename {matter => rs-matter}/src/data_model/objects/metadata.rs (100%) rename {matter => rs-matter}/src/data_model/objects/mod.rs (100%) rename {matter => rs-matter}/src/data_model/objects/node.rs (100%) rename {matter => rs-matter}/src/data_model/objects/privilege.rs (100%) rename {matter => rs-matter}/src/data_model/root_endpoint.rs (100%) rename {matter => rs-matter}/src/data_model/sdm/admin_commissioning.rs (100%) rename {matter => rs-matter}/src/data_model/sdm/dev_att.rs (100%) rename {matter => rs-matter}/src/data_model/sdm/failsafe.rs (100%) rename {matter => rs-matter}/src/data_model/sdm/general_commissioning.rs (100%) rename {matter => rs-matter}/src/data_model/sdm/mod.rs (100%) rename {matter => rs-matter}/src/data_model/sdm/noc.rs (100%) rename {matter => rs-matter}/src/data_model/sdm/nw_commissioning.rs (100%) rename {matter => rs-matter}/src/data_model/system_model/access_control.rs (100%) rename {matter => rs-matter}/src/data_model/system_model/descriptor.rs (100%) rename {matter => rs-matter}/src/data_model/system_model/mod.rs (100%) rename {matter => rs-matter}/src/error.rs (100%) rename {matter => rs-matter}/src/fabric.rs (100%) rename {matter => rs-matter}/src/group_keys.rs (100%) rename {matter => rs-matter}/src/interaction_model/core.rs (100%) rename {matter => rs-matter}/src/interaction_model/messages.rs (100%) rename {matter => rs-matter}/src/interaction_model/mod.rs (100%) rename {matter => rs-matter}/src/lib.rs (89%) rename {matter => rs-matter}/src/mdns.rs (100%) rename {matter => rs-matter}/src/mdns/astro.rs (100%) rename {matter => rs-matter}/src/mdns/builtin.rs (100%) rename {matter => rs-matter}/src/mdns/proto.rs (100%) rename {matter => rs-matter}/src/pairing/code.rs (100%) rename {matter => rs-matter}/src/pairing/mod.rs (100%) rename {matter => rs-matter}/src/pairing/qr.rs (100%) rename {matter => rs-matter}/src/pairing/vendor_identifiers.rs (100%) rename {matter => rs-matter}/src/persist.rs (100%) rename {matter => rs-matter}/src/secure_channel/case.rs (100%) rename {matter => rs-matter}/src/secure_channel/common.rs (100%) rename {matter => rs-matter}/src/secure_channel/core.rs (100%) rename {matter => rs-matter}/src/secure_channel/crypto.rs (100%) rename {matter => rs-matter}/src/secure_channel/crypto_dummy.rs (100%) rename {matter => rs-matter}/src/secure_channel/crypto_esp_mbedtls.rs (100%) rename {matter => rs-matter}/src/secure_channel/crypto_mbedtls.rs (100%) rename {matter => rs-matter}/src/secure_channel/crypto_openssl.rs (100%) rename {matter => rs-matter}/src/secure_channel/crypto_rustcrypto.rs (100%) rename {matter => rs-matter}/src/secure_channel/mod.rs (100%) rename {matter => rs-matter}/src/secure_channel/pake.rs (100%) rename {matter => rs-matter}/src/secure_channel/spake2p.rs (100%) rename {matter => rs-matter}/src/secure_channel/spake2p_test_vectors.rs (100%) rename {matter => rs-matter}/src/secure_channel/status_report.rs (100%) rename {matter => rs-matter}/src/tlv/mod.rs (96%) rename {matter => rs-matter}/src/tlv/parser.rs (100%) rename {matter => rs-matter}/src/tlv/traits.rs (99%) rename {matter => rs-matter}/src/tlv/writer.rs (100%) rename {matter => rs-matter}/src/transport/core.rs (100%) rename {matter => rs-matter}/src/transport/dedup.rs (100%) rename {matter => rs-matter}/src/transport/exchange.rs (100%) rename {matter => rs-matter}/src/transport/mod.rs (100%) rename {matter => rs-matter}/src/transport/mrp.rs (100%) rename {matter => rs-matter}/src/transport/network.rs (100%) rename {matter => rs-matter}/src/transport/packet.rs (100%) rename {matter => rs-matter}/src/transport/pipe.rs (100%) rename {matter => rs-matter}/src/transport/plain_hdr.rs (100%) rename {matter => rs-matter}/src/transport/proto_hdr.rs (100%) rename {matter => rs-matter}/src/transport/session.rs (100%) rename {matter => rs-matter}/src/transport/udp.rs (100%) rename {matter => rs-matter}/src/utils/epoch.rs (100%) rename {matter => rs-matter}/src/utils/mod.rs (100%) rename {matter => rs-matter}/src/utils/parsebuf.rs (100%) rename {matter => rs-matter}/src/utils/rand.rs (100%) rename {matter => rs-matter}/src/utils/select.rs (100%) rename {matter => rs-matter}/src/utils/writebuf.rs (100%) rename {matter => rs-matter}/tests/common/attributes.rs (99%) rename {matter => rs-matter}/tests/common/commands.rs (99%) rename {matter => rs-matter}/tests/common/echo_cluster.rs (99%) rename {matter => rs-matter}/tests/common/handlers.rs (99%) rename {matter => rs-matter}/tests/common/im_engine.rs (96%) rename {matter => rs-matter}/tests/common/mod.rs (100%) rename {matter => rs-matter}/tests/data_model/acl_and_dataver.rs (99%) rename {matter => rs-matter}/tests/data_model/attribute_lists.rs (99%) rename {matter => rs-matter}/tests/data_model/attributes.rs (99%) rename {matter => rs-matter}/tests/data_model/commands.rs (99%) rename {matter => rs-matter}/tests/data_model/long_reads.rs (99%) rename {matter => rs-matter}/tests/data_model/timed_requests.rs (99%) rename {matter => rs-matter}/tests/data_model_tests.rs (100%) rename tools/{tlv_tool => tlv}/Cargo.toml (84%) rename tools/{tlv_tool => tlv}/README.md (72%) rename tools/{tlv_tool => tlv}/src/main.rs (97%) diff --git a/.github/workflows/build-tlv-tool.yml b/.github/workflows/build-tlv-tool.yml index 062e4de..a28b303 100644 --- a/.github/workflows/build-tlv-tool.yml +++ b/.github/workflows/build-tlv-tool.yml @@ -17,10 +17,9 @@ jobs: steps: - uses: actions/checkout@v2 - name: Build - run: cd tools/tlv_tool; cargo build --verbose + run: cd tools/tlv; cargo build - name: Archive artifacts uses: actions/upload-artifact@v2 with: - name: tlv_tool - path: tools/tlv_tool/target/debug/tlv_tool - + name: tlv + path: tools/tlv/target/debug/tlv diff --git a/.github/workflows/test-linux.yml b/.github/workflows/test-linux.yml index e08c84b..1312812 100644 --- a/.github/workflows/test-linux.yml +++ b/.github/workflows/test-linux.yml @@ -20,6 +20,6 @@ jobs: steps: - uses: actions/checkout@v2 - name: Build - run: cd matter; cargo build --no-default-features --features ${{matrix.crypto-backend}} + run: cd rs-matter; cargo build --no-default-features --features ${{matrix.crypto-backend}} - name: Run tests - run: cd matter; cargo test --no-default-features --features os,${{matrix.crypto-backend}} -- --test-threads=1 + run: cd rs-matter; cargo test --no-default-features --features os,${{matrix.crypto-backend}} -- --test-threads=1 diff --git a/Cargo.toml b/Cargo.toml index 6c6d58c..ab06815 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,8 +1,8 @@ [workspace] resolver = "2" -members = ["matter", "matter_macro_derive"] +members = ["rs-matter", "rs-matter-macros"] -exclude = ["examples/*", "tools/tlv_tool"] +exclude = ["examples/*", "tools/tlv"] # For compatibility with ESP IDF [patch.crates-io] diff --git a/README.md b/README.md index 327d4f7..00cd23c 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# matter-rs: The Rust Implementation of Matter +# rs-matter: The Rust Implementation of Matter ![experimental](https://img.shields.io/badge/status-Experimental-red) [![license](https://img.shields.io/badge/license-Apache2-green.svg)](https://raw.githubusercontent.com/project-chip/matter-rs/main/LICENSE) diff --git a/examples/onoff_light/src/dev_att.rs b/examples/onoff_light/src/dev_att.rs index 93fcbd3..6c6a150 100644 --- a/examples/onoff_light/src/dev_att.rs +++ b/examples/onoff_light/src/dev_att.rs @@ -15,8 +15,8 @@ * limitations under the License. */ -use matter::data_model::sdm::dev_att::{DataType, DevAttDataFetcher}; -use matter::error::{Error, ErrorCode}; +use rs_matter::data_model::sdm::dev_att::{DataType, DevAttDataFetcher}; +use rs_matter::error::{Error, ErrorCode}; pub struct HardCodedDevAtt {} diff --git a/examples/onoff_light/src/lib.rs b/examples/onoff_light/src/lib.rs deleted file mode 100644 index 43ca1b1..0000000 --- a/examples/onoff_light/src/lib.rs +++ /dev/null @@ -1,18 +0,0 @@ -/* - * - * Copyright (c) 2020-2022 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. - */ - -pub mod dev_att; diff --git a/examples/onoff_light/src/main.rs b/examples/onoff_light/src/main.rs index e6de9b7..121f565 100644 --- a/examples/onoff_light/src/main.rs +++ b/examples/onoff_light/src/main.rs @@ -20,19 +20,19 @@ use core::pin::pin; use embassy_futures::select::select3; use log::info; -use matter::core::{CommissioningData, Matter}; -use matter::data_model::cluster_basic_information::BasicInfoConfig; -use matter::data_model::cluster_on_off; -use matter::data_model::device_types::DEV_TYPE_ON_OFF_LIGHT; -use matter::data_model::objects::*; -use matter::data_model::root_endpoint; -use matter::data_model::system_model::descriptor; -use matter::error::Error; -use matter::mdns::{MdnsRunBuffers, MdnsService}; -use matter::secure_channel::spake2p::VerifierData; -use matter::transport::core::RunBuffers; -use matter::transport::network::{Ipv4Addr, Ipv6Addr, NetworkStack}; -use matter::utils::select::EitherUnwrap; +use rs_matter::core::{CommissioningData, Matter}; +use rs_matter::data_model::cluster_basic_information::BasicInfoConfig; +use rs_matter::data_model::cluster_on_off; +use rs_matter::data_model::device_types::DEV_TYPE_ON_OFF_LIGHT; +use rs_matter::data_model::objects::*; +use rs_matter::data_model::root_endpoint; +use rs_matter::data_model::system_model::descriptor; +use rs_matter::error::Error; +use rs_matter::mdns::{MdnsRunBuffers, MdnsService}; +use rs_matter::secure_channel::spake2p::VerifierData; +use rs_matter::transport::core::RunBuffers; +use rs_matter::transport::network::{Ipv4Addr, Ipv6Addr, NetworkStack}; +use rs_matter::utils::select::EitherUnwrap; mod dev_att; @@ -79,26 +79,26 @@ fn run() -> Result<(), Error> { let dev_att = dev_att::HardCodedDevAtt::new(); #[cfg(feature = "std")] - let epoch = matter::utils::epoch::sys_epoch; + let epoch = rs_matter::utils::epoch::sys_epoch; #[cfg(feature = "std")] - let rand = matter::utils::rand::sys_rand; + let rand = rs_matter::utils::rand::sys_rand; // NOTE (no_std): For no_std, provide your own function here #[cfg(not(feature = "std"))] - let epoch = matter::utils::epoch::dummy_epoch; + let epoch = rs_matter::utils::epoch::dummy_epoch; // NOTE (no_std): For no_std, provide your own function here #[cfg(not(feature = "std"))] - let rand = matter::utils::rand::dummy_rand; + let rand = rs_matter::utils::rand::dummy_rand; let mdns = MdnsService::new( 0, - "matter-demo", + "rs-matter-demo", ipv4_addr.octets(), Some((ipv6_addr.octets(), interface)), &dev_det, - matter::MATTER_PORT, + rs_matter::MATTER_PORT, ); info!("mDNS initialized"); @@ -110,13 +110,13 @@ fn run() -> Result<(), Error> { &mdns, epoch, rand, - matter::MATTER_PORT, + rs_matter::MATTER_PORT, ); info!("Matter initialized"); #[cfg(all(feature = "std", not(target_os = "espidf")))] - let mut psm = matter::persist::Psm::new(&matter, std::env::temp_dir().join("matter-iot"))?; + let mut psm = rs_matter::persist::Psm::new(&matter, std::env::temp_dir().join("rs-matter"))?; let handler = HandlerCompat(handler(&matter)); @@ -223,8 +223,8 @@ fn initialize_logger() { #[inline(never)] fn initialize_network() -> Result<(Ipv4Addr, Ipv6Addr, u32), Error> { use log::error; - use matter::error::ErrorCode; use nix::{net::if_::InterfaceFlags, sys::socket::SockaddrIn6}; + use rs_matter::error::ErrorCode; let interfaces = || { nix::ifaddrs::getifaddrs().unwrap().filter(|ia| { diff --git a/examples/speaker/src/dev_att.rs b/examples/speaker/src/dev_att.rs index c0c1030..50eed4e 100644 --- a/examples/speaker/src/dev_att.rs +++ b/examples/speaker/src/dev_att.rs @@ -15,8 +15,8 @@ * limitations under the License. */ -use matter::data_model::sdm::dev_att::{DataType, DevAttDataFetcher}; -use matter::error::Error; +use rs_matter::data_model::sdm::dev_att::{DataType, DevAttDataFetcher}; +use rs_matter::error::Error; pub struct HardCodedDevAtt {} diff --git a/examples/speaker/src/lib.rs b/examples/speaker/src/lib.rs deleted file mode 100644 index 16264d0..0000000 --- a/examples/speaker/src/lib.rs +++ /dev/null @@ -1,18 +0,0 @@ -/* - * - * Copyright (c) 2020-2022 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. - */ - -// TODO pub mod dev_att; diff --git a/examples/speaker/src/main.rs b/examples/speaker/src/main.rs index f3b3f7d..6b466da 100644 --- a/examples/speaker/src/main.rs +++ b/examples/speaker/src/main.rs @@ -17,11 +17,11 @@ // TODO // mod dev_att; -// use matter::core::{self, CommissioningData}; -// use matter::data_model::cluster_basic_information::BasicInfoConfig; -// use matter::data_model::cluster_media_playback::{Commands, MediaPlaybackCluster}; -// use matter::data_model::device_types::DEV_TYPE_ON_SMART_SPEAKER; -// use matter::secure_channel::spake2p::VerifierData; +// use rs_matter::core::{self, CommissioningData}; +// use rs_matter::data_model::cluster_basic_information::BasicInfoConfig; +// use rs_matter::data_model::cluster_media_playback::{Commands, MediaPlaybackCluster}; +// use rs_matter::data_model::device_types::DEV_TYPE_ON_SMART_SPEAKER; +// use rs_matter::secure_channel::spake2p::VerifierData; fn main() { // env_logger::init(); diff --git a/examples/speaker/src/speaker.rs b/examples/speaker/src/speaker.rs index de2a605..722a9b6 100644 --- a/examples/speaker/src/speaker.rs +++ b/examples/speaker/src/speaker.rs @@ -15,12 +15,13 @@ * limitations under the License. */ +use rs_matter::core::{self, CommissioningData}; +use rs_matter::data_model::cluster_basic_information::BasicInfoConfig; +use rs_matter::data_model::cluster_media_playback::{Commands, MediaPlaybackCluster}; +use rs_matter::data_model::device_types::DEV_TYPE_ON_SMART_SPEAKER; +use rs_matter::secure_channel::spake2p::VerifierData; + mod dev_att; -use matter::core::{self, CommissioningData}; -use matter::data_model::cluster_basic_information::BasicInfoConfig; -use matter::data_model::cluster_media_playback::{Commands, MediaPlaybackCluster}; -use matter::data_model::device_types::DEV_TYPE_ON_SMART_SPEAKER; -use matter::secure_channel::spake2p::VerifierData; fn main() { env_logger::init(); diff --git a/matter_macro_derive/Cargo.toml b/rs-matter-macros/Cargo.toml similarity index 91% rename from matter_macro_derive/Cargo.toml rename to rs-matter-macros/Cargo.toml index 5bf29bb..9bf4e7d 100644 --- a/matter_macro_derive/Cargo.toml +++ b/rs-matter-macros/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "matter_macro_derive" +name = "rs-matter-macros" version = "0.1.0" edition = "2021" license = "Apache-2.0" diff --git a/rs-matter-macros/README.md b/rs-matter-macros/README.md new file mode 100644 index 0000000..e973784 --- /dev/null +++ b/rs-matter-macros/README.md @@ -0,0 +1,5 @@ +# rs-matter-macros + +Proc-macros for implementing the `ToTLV` and `FromTLV` traits. + +NOTE: The macros are re-exported by the `rs-matter` crate which should be used instead of adding a direct dependency on the `rs-matter-macros` crate. diff --git a/matter_macro_derive/src/lib.rs b/rs-matter-macros/src/lib.rs similarity index 99% rename from matter_macro_derive/src/lib.rs rename to rs-matter-macros/src/lib.rs index 619bf3b..6e090fb 100644 --- a/matter_macro_derive/src/lib.rs +++ b/rs-matter-macros/src/lib.rs @@ -107,7 +107,7 @@ fn parse_tag_val(field: &syn::Field) -> Option { } fn get_crate_name() -> String { - let found_crate = proc_macro_crate::crate_name("matter-iot").unwrap_or_else(|err| { + let found_crate = proc_macro_crate::crate_name("rs-matter").unwrap_or_else(|err| { eprintln!("Warning: defaulting to `crate` {err}"); proc_macro_crate::FoundCrate::Itself }); diff --git a/matter/Cargo.toml b/rs-matter/Cargo.toml similarity index 97% rename from matter/Cargo.toml rename to rs-matter/Cargo.toml index 9b5c5cc..f08d06c 100644 --- a/matter/Cargo.toml +++ b/rs-matter/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "matter-iot" +name = "rs-matter" version = "0.1.0" edition = "2021" authors = ["Kedar Sovani "] @@ -11,7 +11,7 @@ categories = ["embedded", "network-programming"] license = "Apache-2.0" [lib] -name = "matter" +name = "rs_matter" path = "src/lib.rs" [features] @@ -28,7 +28,7 @@ rustcrypto = ["alloc", "sha2", "hmac", "pbkdf2", "hkdf", "aes", "ccm", "p256", " embassy-net = ["dep:embassy-net", "dep:embassy-net-driver", "smoltcp"] [dependencies] -matter_macro_derive = { path = "../matter_macro_derive" } +rs-matter-macros = { path = "../rs-matter-macros" } bitflags = { version = "1.3", default-features = false } byteorder = { version = "1.4.3", default-features = false } heapless = "0.7.16" diff --git a/rs-matter/README.md b/rs-matter/README.md new file mode 100644 index 0000000..594b18f --- /dev/null +++ b/rs-matter/README.md @@ -0,0 +1,3 @@ +# rs-matter: The Rust Implementation of Matter Library + +This is the actual `rs-matter` library crate. See [the main README file](../README.md) for more information. \ No newline at end of file diff --git a/matter/build.rs b/rs-matter/build.rs similarity index 100% rename from matter/build.rs rename to rs-matter/build.rs diff --git a/matter/src/acl.rs b/rs-matter/src/acl.rs similarity index 100% rename from matter/src/acl.rs rename to rs-matter/src/acl.rs diff --git a/matter/src/cert/asn1_writer.rs b/rs-matter/src/cert/asn1_writer.rs similarity index 100% rename from matter/src/cert/asn1_writer.rs rename to rs-matter/src/cert/asn1_writer.rs diff --git a/matter/src/cert/mod.rs b/rs-matter/src/cert/mod.rs similarity index 100% rename from matter/src/cert/mod.rs rename to rs-matter/src/cert/mod.rs diff --git a/matter/src/cert/printer.rs b/rs-matter/src/cert/printer.rs similarity index 100% rename from matter/src/cert/printer.rs rename to rs-matter/src/cert/printer.rs diff --git a/matter/src/codec/base38.rs b/rs-matter/src/codec/base38.rs similarity index 100% rename from matter/src/codec/base38.rs rename to rs-matter/src/codec/base38.rs diff --git a/matter/src/codec/mod.rs b/rs-matter/src/codec/mod.rs similarity index 100% rename from matter/src/codec/mod.rs rename to rs-matter/src/codec/mod.rs diff --git a/matter/src/core.rs b/rs-matter/src/core.rs similarity index 100% rename from matter/src/core.rs rename to rs-matter/src/core.rs diff --git a/matter/src/crypto/crypto_dummy.rs b/rs-matter/src/crypto/crypto_dummy.rs similarity index 100% rename from matter/src/crypto/crypto_dummy.rs rename to rs-matter/src/crypto/crypto_dummy.rs diff --git a/matter/src/crypto/crypto_esp_mbedtls.rs b/rs-matter/src/crypto/crypto_esp_mbedtls.rs similarity index 100% rename from matter/src/crypto/crypto_esp_mbedtls.rs rename to rs-matter/src/crypto/crypto_esp_mbedtls.rs diff --git a/matter/src/crypto/crypto_mbedtls.rs b/rs-matter/src/crypto/crypto_mbedtls.rs similarity index 100% rename from matter/src/crypto/crypto_mbedtls.rs rename to rs-matter/src/crypto/crypto_mbedtls.rs diff --git a/matter/src/crypto/crypto_openssl.rs b/rs-matter/src/crypto/crypto_openssl.rs similarity index 100% rename from matter/src/crypto/crypto_openssl.rs rename to rs-matter/src/crypto/crypto_openssl.rs diff --git a/matter/src/crypto/crypto_rustcrypto.rs b/rs-matter/src/crypto/crypto_rustcrypto.rs similarity index 100% rename from matter/src/crypto/crypto_rustcrypto.rs rename to rs-matter/src/crypto/crypto_rustcrypto.rs diff --git a/matter/src/crypto/mod.rs b/rs-matter/src/crypto/mod.rs similarity index 100% rename from matter/src/crypto/mod.rs rename to rs-matter/src/crypto/mod.rs diff --git a/matter/src/data_model/cluster_basic_information.rs b/rs-matter/src/data_model/cluster_basic_information.rs similarity index 100% rename from matter/src/data_model/cluster_basic_information.rs rename to rs-matter/src/data_model/cluster_basic_information.rs diff --git a/matter/src/data_model/cluster_media_playback.rs b/rs-matter/src/data_model/cluster_media_playback.rs similarity index 100% rename from matter/src/data_model/cluster_media_playback.rs rename to rs-matter/src/data_model/cluster_media_playback.rs diff --git a/matter/src/data_model/cluster_on_off.rs b/rs-matter/src/data_model/cluster_on_off.rs similarity index 100% rename from matter/src/data_model/cluster_on_off.rs rename to rs-matter/src/data_model/cluster_on_off.rs diff --git a/matter/src/data_model/cluster_template.rs b/rs-matter/src/data_model/cluster_template.rs similarity index 100% rename from matter/src/data_model/cluster_template.rs rename to rs-matter/src/data_model/cluster_template.rs diff --git a/matter/src/data_model/core.rs b/rs-matter/src/data_model/core.rs similarity index 100% rename from matter/src/data_model/core.rs rename to rs-matter/src/data_model/core.rs diff --git a/matter/src/data_model/device_types.rs b/rs-matter/src/data_model/device_types.rs similarity index 100% rename from matter/src/data_model/device_types.rs rename to rs-matter/src/data_model/device_types.rs diff --git a/matter/src/data_model/mod.rs b/rs-matter/src/data_model/mod.rs similarity index 100% rename from matter/src/data_model/mod.rs rename to rs-matter/src/data_model/mod.rs diff --git a/matter/src/data_model/objects/attribute.rs b/rs-matter/src/data_model/objects/attribute.rs similarity index 100% rename from matter/src/data_model/objects/attribute.rs rename to rs-matter/src/data_model/objects/attribute.rs diff --git a/matter/src/data_model/objects/cluster.rs b/rs-matter/src/data_model/objects/cluster.rs similarity index 100% rename from matter/src/data_model/objects/cluster.rs rename to rs-matter/src/data_model/objects/cluster.rs diff --git a/matter/src/data_model/objects/dataver.rs b/rs-matter/src/data_model/objects/dataver.rs similarity index 100% rename from matter/src/data_model/objects/dataver.rs rename to rs-matter/src/data_model/objects/dataver.rs diff --git a/matter/src/data_model/objects/encoder.rs b/rs-matter/src/data_model/objects/encoder.rs similarity index 100% rename from matter/src/data_model/objects/encoder.rs rename to rs-matter/src/data_model/objects/encoder.rs diff --git a/matter/src/data_model/objects/endpoint.rs b/rs-matter/src/data_model/objects/endpoint.rs similarity index 100% rename from matter/src/data_model/objects/endpoint.rs rename to rs-matter/src/data_model/objects/endpoint.rs diff --git a/matter/src/data_model/objects/handler.rs b/rs-matter/src/data_model/objects/handler.rs similarity index 100% rename from matter/src/data_model/objects/handler.rs rename to rs-matter/src/data_model/objects/handler.rs diff --git a/matter/src/data_model/objects/metadata.rs b/rs-matter/src/data_model/objects/metadata.rs similarity index 100% rename from matter/src/data_model/objects/metadata.rs rename to rs-matter/src/data_model/objects/metadata.rs diff --git a/matter/src/data_model/objects/mod.rs b/rs-matter/src/data_model/objects/mod.rs similarity index 100% rename from matter/src/data_model/objects/mod.rs rename to rs-matter/src/data_model/objects/mod.rs diff --git a/matter/src/data_model/objects/node.rs b/rs-matter/src/data_model/objects/node.rs similarity index 100% rename from matter/src/data_model/objects/node.rs rename to rs-matter/src/data_model/objects/node.rs diff --git a/matter/src/data_model/objects/privilege.rs b/rs-matter/src/data_model/objects/privilege.rs similarity index 100% rename from matter/src/data_model/objects/privilege.rs rename to rs-matter/src/data_model/objects/privilege.rs diff --git a/matter/src/data_model/root_endpoint.rs b/rs-matter/src/data_model/root_endpoint.rs similarity index 100% rename from matter/src/data_model/root_endpoint.rs rename to rs-matter/src/data_model/root_endpoint.rs diff --git a/matter/src/data_model/sdm/admin_commissioning.rs b/rs-matter/src/data_model/sdm/admin_commissioning.rs similarity index 100% rename from matter/src/data_model/sdm/admin_commissioning.rs rename to rs-matter/src/data_model/sdm/admin_commissioning.rs diff --git a/matter/src/data_model/sdm/dev_att.rs b/rs-matter/src/data_model/sdm/dev_att.rs similarity index 100% rename from matter/src/data_model/sdm/dev_att.rs rename to rs-matter/src/data_model/sdm/dev_att.rs diff --git a/matter/src/data_model/sdm/failsafe.rs b/rs-matter/src/data_model/sdm/failsafe.rs similarity index 100% rename from matter/src/data_model/sdm/failsafe.rs rename to rs-matter/src/data_model/sdm/failsafe.rs diff --git a/matter/src/data_model/sdm/general_commissioning.rs b/rs-matter/src/data_model/sdm/general_commissioning.rs similarity index 100% rename from matter/src/data_model/sdm/general_commissioning.rs rename to rs-matter/src/data_model/sdm/general_commissioning.rs diff --git a/matter/src/data_model/sdm/mod.rs b/rs-matter/src/data_model/sdm/mod.rs similarity index 100% rename from matter/src/data_model/sdm/mod.rs rename to rs-matter/src/data_model/sdm/mod.rs diff --git a/matter/src/data_model/sdm/noc.rs b/rs-matter/src/data_model/sdm/noc.rs similarity index 100% rename from matter/src/data_model/sdm/noc.rs rename to rs-matter/src/data_model/sdm/noc.rs diff --git a/matter/src/data_model/sdm/nw_commissioning.rs b/rs-matter/src/data_model/sdm/nw_commissioning.rs similarity index 100% rename from matter/src/data_model/sdm/nw_commissioning.rs rename to rs-matter/src/data_model/sdm/nw_commissioning.rs diff --git a/matter/src/data_model/system_model/access_control.rs b/rs-matter/src/data_model/system_model/access_control.rs similarity index 100% rename from matter/src/data_model/system_model/access_control.rs rename to rs-matter/src/data_model/system_model/access_control.rs diff --git a/matter/src/data_model/system_model/descriptor.rs b/rs-matter/src/data_model/system_model/descriptor.rs similarity index 100% rename from matter/src/data_model/system_model/descriptor.rs rename to rs-matter/src/data_model/system_model/descriptor.rs diff --git a/matter/src/data_model/system_model/mod.rs b/rs-matter/src/data_model/system_model/mod.rs similarity index 100% rename from matter/src/data_model/system_model/mod.rs rename to rs-matter/src/data_model/system_model/mod.rs diff --git a/matter/src/error.rs b/rs-matter/src/error.rs similarity index 100% rename from matter/src/error.rs rename to rs-matter/src/error.rs diff --git a/matter/src/fabric.rs b/rs-matter/src/fabric.rs similarity index 100% rename from matter/src/fabric.rs rename to rs-matter/src/fabric.rs diff --git a/matter/src/group_keys.rs b/rs-matter/src/group_keys.rs similarity index 100% rename from matter/src/group_keys.rs rename to rs-matter/src/group_keys.rs diff --git a/matter/src/interaction_model/core.rs b/rs-matter/src/interaction_model/core.rs similarity index 100% rename from matter/src/interaction_model/core.rs rename to rs-matter/src/interaction_model/core.rs diff --git a/matter/src/interaction_model/messages.rs b/rs-matter/src/interaction_model/messages.rs similarity index 100% rename from matter/src/interaction_model/messages.rs rename to rs-matter/src/interaction_model/messages.rs diff --git a/matter/src/interaction_model/mod.rs b/rs-matter/src/interaction_model/mod.rs similarity index 100% rename from matter/src/interaction_model/mod.rs rename to rs-matter/src/interaction_model/mod.rs diff --git a/matter/src/lib.rs b/rs-matter/src/lib.rs similarity index 89% rename from matter/src/lib.rs rename to rs-matter/src/lib.rs index b80a62c..8a181ee 100644 --- a/matter/src/lib.rs +++ b/rs-matter/src/lib.rs @@ -24,13 +24,13 @@ //! //! # Examples //! TODO: Fix once new API has stabilized a bit -//! use matter::{Matter, CommissioningData}; -//! use matter::data_model::device_types::device_type_add_on_off_light; -//! use matter::data_model::cluster_basic_information::BasicInfoConfig; -//! use matter::secure_channel::spake2p::VerifierData; +//! use rs_matter::{Matter, CommissioningData}; +//! use rs_matter::data_model::device_types::device_type_add_on_off_light; +//! use rs_matter::data_model::cluster_basic_information::BasicInfoConfig; +//! use rs_matter::secure_channel::spake2p::VerifierData; //! -//! # use matter::data_model::sdm::dev_att::{DataType, DevAttDataFetcher}; -//! # use matter::error::Error; +//! # use rs_matter::data_model::sdm::dev_att::{DataType, DevAttDataFetcher}; +//! # use rs_matter::error::Error; //! # pub struct DevAtt{} //! # impl DevAttDataFetcher for DevAtt{ //! # fn get_devatt_data(&self, data_type: DataType, data: &mut [u8]) -> Result { Ok(0) } diff --git a/matter/src/mdns.rs b/rs-matter/src/mdns.rs similarity index 100% rename from matter/src/mdns.rs rename to rs-matter/src/mdns.rs diff --git a/matter/src/mdns/astro.rs b/rs-matter/src/mdns/astro.rs similarity index 100% rename from matter/src/mdns/astro.rs rename to rs-matter/src/mdns/astro.rs diff --git a/matter/src/mdns/builtin.rs b/rs-matter/src/mdns/builtin.rs similarity index 100% rename from matter/src/mdns/builtin.rs rename to rs-matter/src/mdns/builtin.rs diff --git a/matter/src/mdns/proto.rs b/rs-matter/src/mdns/proto.rs similarity index 100% rename from matter/src/mdns/proto.rs rename to rs-matter/src/mdns/proto.rs diff --git a/matter/src/pairing/code.rs b/rs-matter/src/pairing/code.rs similarity index 100% rename from matter/src/pairing/code.rs rename to rs-matter/src/pairing/code.rs diff --git a/matter/src/pairing/mod.rs b/rs-matter/src/pairing/mod.rs similarity index 100% rename from matter/src/pairing/mod.rs rename to rs-matter/src/pairing/mod.rs diff --git a/matter/src/pairing/qr.rs b/rs-matter/src/pairing/qr.rs similarity index 100% rename from matter/src/pairing/qr.rs rename to rs-matter/src/pairing/qr.rs diff --git a/matter/src/pairing/vendor_identifiers.rs b/rs-matter/src/pairing/vendor_identifiers.rs similarity index 100% rename from matter/src/pairing/vendor_identifiers.rs rename to rs-matter/src/pairing/vendor_identifiers.rs diff --git a/matter/src/persist.rs b/rs-matter/src/persist.rs similarity index 100% rename from matter/src/persist.rs rename to rs-matter/src/persist.rs diff --git a/matter/src/secure_channel/case.rs b/rs-matter/src/secure_channel/case.rs similarity index 100% rename from matter/src/secure_channel/case.rs rename to rs-matter/src/secure_channel/case.rs diff --git a/matter/src/secure_channel/common.rs b/rs-matter/src/secure_channel/common.rs similarity index 100% rename from matter/src/secure_channel/common.rs rename to rs-matter/src/secure_channel/common.rs diff --git a/matter/src/secure_channel/core.rs b/rs-matter/src/secure_channel/core.rs similarity index 100% rename from matter/src/secure_channel/core.rs rename to rs-matter/src/secure_channel/core.rs diff --git a/matter/src/secure_channel/crypto.rs b/rs-matter/src/secure_channel/crypto.rs similarity index 100% rename from matter/src/secure_channel/crypto.rs rename to rs-matter/src/secure_channel/crypto.rs diff --git a/matter/src/secure_channel/crypto_dummy.rs b/rs-matter/src/secure_channel/crypto_dummy.rs similarity index 100% rename from matter/src/secure_channel/crypto_dummy.rs rename to rs-matter/src/secure_channel/crypto_dummy.rs diff --git a/matter/src/secure_channel/crypto_esp_mbedtls.rs b/rs-matter/src/secure_channel/crypto_esp_mbedtls.rs similarity index 100% rename from matter/src/secure_channel/crypto_esp_mbedtls.rs rename to rs-matter/src/secure_channel/crypto_esp_mbedtls.rs diff --git a/matter/src/secure_channel/crypto_mbedtls.rs b/rs-matter/src/secure_channel/crypto_mbedtls.rs similarity index 100% rename from matter/src/secure_channel/crypto_mbedtls.rs rename to rs-matter/src/secure_channel/crypto_mbedtls.rs diff --git a/matter/src/secure_channel/crypto_openssl.rs b/rs-matter/src/secure_channel/crypto_openssl.rs similarity index 100% rename from matter/src/secure_channel/crypto_openssl.rs rename to rs-matter/src/secure_channel/crypto_openssl.rs diff --git a/matter/src/secure_channel/crypto_rustcrypto.rs b/rs-matter/src/secure_channel/crypto_rustcrypto.rs similarity index 100% rename from matter/src/secure_channel/crypto_rustcrypto.rs rename to rs-matter/src/secure_channel/crypto_rustcrypto.rs diff --git a/matter/src/secure_channel/mod.rs b/rs-matter/src/secure_channel/mod.rs similarity index 100% rename from matter/src/secure_channel/mod.rs rename to rs-matter/src/secure_channel/mod.rs diff --git a/matter/src/secure_channel/pake.rs b/rs-matter/src/secure_channel/pake.rs similarity index 100% rename from matter/src/secure_channel/pake.rs rename to rs-matter/src/secure_channel/pake.rs diff --git a/matter/src/secure_channel/spake2p.rs b/rs-matter/src/secure_channel/spake2p.rs similarity index 100% rename from matter/src/secure_channel/spake2p.rs rename to rs-matter/src/secure_channel/spake2p.rs diff --git a/matter/src/secure_channel/spake2p_test_vectors.rs b/rs-matter/src/secure_channel/spake2p_test_vectors.rs similarity index 100% rename from matter/src/secure_channel/spake2p_test_vectors.rs rename to rs-matter/src/secure_channel/spake2p_test_vectors.rs diff --git a/matter/src/secure_channel/status_report.rs b/rs-matter/src/secure_channel/status_report.rs similarity index 100% rename from matter/src/secure_channel/status_report.rs rename to rs-matter/src/secure_channel/status_report.rs diff --git a/matter/src/tlv/mod.rs b/rs-matter/src/tlv/mod.rs similarity index 96% rename from matter/src/tlv/mod.rs rename to rs-matter/src/tlv/mod.rs index f6115e1..09b32ba 100644 --- a/matter/src/tlv/mod.rs +++ b/rs-matter/src/tlv/mod.rs @@ -47,7 +47,7 @@ mod parser; mod traits; mod writer; -pub use matter_macro_derive::{FromTLV, ToTLV}; pub use parser::*; +pub use rs_matter_macros::{FromTLV, ToTLV}; pub use traits::*; pub use writer::*; diff --git a/matter/src/tlv/parser.rs b/rs-matter/src/tlv/parser.rs similarity index 100% rename from matter/src/tlv/parser.rs rename to rs-matter/src/tlv/parser.rs diff --git a/matter/src/tlv/traits.rs b/rs-matter/src/tlv/traits.rs similarity index 99% rename from matter/src/tlv/traits.rs rename to rs-matter/src/tlv/traits.rs index 2156f58..c013de3 100644 --- a/matter/src/tlv/traits.rs +++ b/rs-matter/src/tlv/traits.rs @@ -450,7 +450,7 @@ impl<'a> ToTLV for TLVElement<'a> { mod tests { use super::{FromTLV, OctetStr, TLVWriter, TagType, ToTLV}; use crate::{error::Error, tlv::TLVList, utils::writebuf::WriteBuf}; - use matter_macro_derive::{FromTLV, ToTLV}; + use rs_matter_macros::{FromTLV, ToTLV}; #[derive(ToTLV)] struct TestDerive { diff --git a/matter/src/tlv/writer.rs b/rs-matter/src/tlv/writer.rs similarity index 100% rename from matter/src/tlv/writer.rs rename to rs-matter/src/tlv/writer.rs diff --git a/matter/src/transport/core.rs b/rs-matter/src/transport/core.rs similarity index 100% rename from matter/src/transport/core.rs rename to rs-matter/src/transport/core.rs diff --git a/matter/src/transport/dedup.rs b/rs-matter/src/transport/dedup.rs similarity index 100% rename from matter/src/transport/dedup.rs rename to rs-matter/src/transport/dedup.rs diff --git a/matter/src/transport/exchange.rs b/rs-matter/src/transport/exchange.rs similarity index 100% rename from matter/src/transport/exchange.rs rename to rs-matter/src/transport/exchange.rs diff --git a/matter/src/transport/mod.rs b/rs-matter/src/transport/mod.rs similarity index 100% rename from matter/src/transport/mod.rs rename to rs-matter/src/transport/mod.rs diff --git a/matter/src/transport/mrp.rs b/rs-matter/src/transport/mrp.rs similarity index 100% rename from matter/src/transport/mrp.rs rename to rs-matter/src/transport/mrp.rs diff --git a/matter/src/transport/network.rs b/rs-matter/src/transport/network.rs similarity index 100% rename from matter/src/transport/network.rs rename to rs-matter/src/transport/network.rs diff --git a/matter/src/transport/packet.rs b/rs-matter/src/transport/packet.rs similarity index 100% rename from matter/src/transport/packet.rs rename to rs-matter/src/transport/packet.rs diff --git a/matter/src/transport/pipe.rs b/rs-matter/src/transport/pipe.rs similarity index 100% rename from matter/src/transport/pipe.rs rename to rs-matter/src/transport/pipe.rs diff --git a/matter/src/transport/plain_hdr.rs b/rs-matter/src/transport/plain_hdr.rs similarity index 100% rename from matter/src/transport/plain_hdr.rs rename to rs-matter/src/transport/plain_hdr.rs diff --git a/matter/src/transport/proto_hdr.rs b/rs-matter/src/transport/proto_hdr.rs similarity index 100% rename from matter/src/transport/proto_hdr.rs rename to rs-matter/src/transport/proto_hdr.rs diff --git a/matter/src/transport/session.rs b/rs-matter/src/transport/session.rs similarity index 100% rename from matter/src/transport/session.rs rename to rs-matter/src/transport/session.rs diff --git a/matter/src/transport/udp.rs b/rs-matter/src/transport/udp.rs similarity index 100% rename from matter/src/transport/udp.rs rename to rs-matter/src/transport/udp.rs diff --git a/matter/src/utils/epoch.rs b/rs-matter/src/utils/epoch.rs similarity index 100% rename from matter/src/utils/epoch.rs rename to rs-matter/src/utils/epoch.rs diff --git a/matter/src/utils/mod.rs b/rs-matter/src/utils/mod.rs similarity index 100% rename from matter/src/utils/mod.rs rename to rs-matter/src/utils/mod.rs diff --git a/matter/src/utils/parsebuf.rs b/rs-matter/src/utils/parsebuf.rs similarity index 100% rename from matter/src/utils/parsebuf.rs rename to rs-matter/src/utils/parsebuf.rs diff --git a/matter/src/utils/rand.rs b/rs-matter/src/utils/rand.rs similarity index 100% rename from matter/src/utils/rand.rs rename to rs-matter/src/utils/rand.rs diff --git a/matter/src/utils/select.rs b/rs-matter/src/utils/select.rs similarity index 100% rename from matter/src/utils/select.rs rename to rs-matter/src/utils/select.rs diff --git a/matter/src/utils/writebuf.rs b/rs-matter/src/utils/writebuf.rs similarity index 100% rename from matter/src/utils/writebuf.rs rename to rs-matter/src/utils/writebuf.rs diff --git a/matter/tests/common/attributes.rs b/rs-matter/tests/common/attributes.rs similarity index 99% rename from matter/tests/common/attributes.rs rename to rs-matter/tests/common/attributes.rs index 3a4f5e7..eabef20 100644 --- a/matter/tests/common/attributes.rs +++ b/rs-matter/tests/common/attributes.rs @@ -15,7 +15,7 @@ * limitations under the License. */ -use matter::{ +use rs_matter::{ interaction_model::{messages::ib::AttrResp, messages::msg::ReportDataMsg}, tlv::{TLVElement, TLVList, TLVWriter, TagType, ToTLV}, utils::writebuf::WriteBuf, diff --git a/matter/tests/common/commands.rs b/rs-matter/tests/common/commands.rs similarity index 99% rename from matter/tests/common/commands.rs rename to rs-matter/tests/common/commands.rs index d1e0402..abd27ba 100644 --- a/matter/tests/common/commands.rs +++ b/rs-matter/tests/common/commands.rs @@ -15,7 +15,7 @@ * limitations under the License. */ -use matter::{ +use rs_matter::{ data_model::objects::EncodeValue, interaction_model::{ messages::ib::{CmdPath, CmdStatus, InvResp}, diff --git a/matter/tests/common/echo_cluster.rs b/rs-matter/tests/common/echo_cluster.rs similarity index 99% rename from matter/tests/common/echo_cluster.rs rename to rs-matter/tests/common/echo_cluster.rs index dd83f0a..61c1b25 100644 --- a/matter/tests/common/echo_cluster.rs +++ b/rs-matter/tests/common/echo_cluster.rs @@ -19,7 +19,8 @@ use core::cell::Cell; use core::convert::TryInto; use std::sync::{Arc, Mutex, Once}; -use matter::{ +use num_derive::FromPrimitive; +use rs_matter::{ attribute_enum, command_enum, data_model::objects::{ Access, AttrData, AttrDataEncoder, AttrDataWriter, AttrDetails, AttrType, Attribute, @@ -32,7 +33,6 @@ use matter::{ transport::exchange::Exchange, utils::rand::Rand, }; -use num_derive::FromPrimitive; use strum::{EnumDiscriminants, FromRepr}; pub const ID: u32 = 0xABCD; diff --git a/matter/tests/common/handlers.rs b/rs-matter/tests/common/handlers.rs similarity index 99% rename from matter/tests/common/handlers.rs rename to rs-matter/tests/common/handlers.rs index 97de89a..868f21a 100644 --- a/matter/tests/common/handlers.rs +++ b/rs-matter/tests/common/handlers.rs @@ -1,5 +1,5 @@ use log::{info, warn}; -use matter::{ +use rs_matter::{ error::ErrorCode, interaction_model::{ core::{IMStatusCode, OpCode}, diff --git a/matter/tests/common/im_engine.rs b/rs-matter/tests/common/im_engine.rs similarity index 96% rename from matter/tests/common/im_engine.rs rename to rs-matter/tests/common/im_engine.rs index 1cd26bd..16e98dc 100644 --- a/matter/tests/common/im_engine.rs +++ b/rs-matter/tests/common/im_engine.rs @@ -20,7 +20,7 @@ use core::borrow::Borrow; use core::future::pending; use core::time::Duration; use embassy_futures::select::select3; -use matter::{ +use rs_matter::{ acl::{AclEntry, AuthMode}, data_model::{ cluster_basic_information::{self, BasicInfoConfig}, @@ -172,10 +172,10 @@ impl<'a> Handler for ImEngineHandler<'a> { fn invoke( &self, - exchange: &matter::transport::exchange::Exchange, - cmd: &matter::data_model::objects::CmdDetails, - data: &matter::tlv::TLVElement, - encoder: matter::data_model::objects::CmdDataEncoder, + exchange: &rs_matter::transport::exchange::Exchange, + cmd: &rs_matter::data_model::objects::CmdDetails, + data: &rs_matter::tlv::TLVElement, + encoder: rs_matter::data_model::objects::CmdDataEncoder, ) -> Result<(), Error> { self.handler.invoke(exchange, cmd, data, encoder) } @@ -207,16 +207,16 @@ impl<'a> ImEngine<'a> { /// Create the interaction model engine pub fn new(cat_ids: NocCatIds) -> Self { #[cfg(feature = "std")] - use matter::utils::epoch::sys_epoch as epoch; + use rs_matter::utils::epoch::sys_epoch as epoch; #[cfg(not(feature = "std"))] - use matter::utils::epoch::dummy_epoch as epoch; + use rs_matter::utils::epoch::dummy_epoch as epoch; #[cfg(feature = "std")] - use matter::utils::rand::sys_rand as rand; + use rs_matter::utils::rand::sys_rand as rand; #[cfg(not(feature = "std"))] - use matter::utils::rand::dummy_rand as rand; + use rs_matter::utils::rand::dummy_rand as rand; let matter = Matter::new( &BASIC_INFO, diff --git a/matter/tests/common/mod.rs b/rs-matter/tests/common/mod.rs similarity index 100% rename from matter/tests/common/mod.rs rename to rs-matter/tests/common/mod.rs diff --git a/matter/tests/data_model/acl_and_dataver.rs b/rs-matter/tests/data_model/acl_and_dataver.rs similarity index 99% rename from matter/tests/data_model/acl_and_dataver.rs rename to rs-matter/tests/data_model/acl_and_dataver.rs index 853e2ca..309f127 100644 --- a/matter/tests/data_model/acl_and_dataver.rs +++ b/rs-matter/tests/data_model/acl_and_dataver.rs @@ -15,7 +15,7 @@ * limitations under the License. */ -use matter::{ +use rs_matter::{ acl::{gen_noc_cat, AclEntry, AuthMode, Target}, data_model::{ objects::{EncodeValue, Privilege}, diff --git a/matter/tests/data_model/attribute_lists.rs b/rs-matter/tests/data_model/attribute_lists.rs similarity index 99% rename from matter/tests/data_model/attribute_lists.rs rename to rs-matter/tests/data_model/attribute_lists.rs index 12d4a5d..3300681 100644 --- a/matter/tests/data_model/attribute_lists.rs +++ b/rs-matter/tests/data_model/attribute_lists.rs @@ -15,7 +15,7 @@ * limitations under the License. */ -use matter::{ +use rs_matter::{ data_model::objects::EncodeValue, interaction_model::{ core::IMStatusCode, diff --git a/matter/tests/data_model/attributes.rs b/rs-matter/tests/data_model/attributes.rs similarity index 99% rename from matter/tests/data_model/attributes.rs rename to rs-matter/tests/data_model/attributes.rs index 87bd96d..1e641af 100644 --- a/matter/tests/data_model/attributes.rs +++ b/rs-matter/tests/data_model/attributes.rs @@ -15,7 +15,7 @@ * limitations under the License. */ -use matter::{ +use rs_matter::{ data_model::{ cluster_on_off, objects::{EncodeValue, GlobalElements}, diff --git a/matter/tests/data_model/commands.rs b/rs-matter/tests/data_model/commands.rs similarity index 99% rename from matter/tests/data_model/commands.rs rename to rs-matter/tests/data_model/commands.rs index ee91771..b02a545 100644 --- a/matter/tests/data_model/commands.rs +++ b/rs-matter/tests/data_model/commands.rs @@ -21,7 +21,7 @@ use crate::{ echo_req, echo_resp, }; -use matter::{ +use rs_matter::{ data_model::{cluster_on_off, objects::EncodeValue}, interaction_model::{ core::IMStatusCode, diff --git a/matter/tests/data_model/long_reads.rs b/rs-matter/tests/data_model/long_reads.rs similarity index 99% rename from matter/tests/data_model/long_reads.rs rename to rs-matter/tests/data_model/long_reads.rs index e8382e0..888e05a 100644 --- a/matter/tests/data_model/long_reads.rs +++ b/rs-matter/tests/data_model/long_reads.rs @@ -15,7 +15,7 @@ * limitations under the License. */ -use matter::{ +use rs_matter::{ data_model::{ cluster_basic_information as basic_info, cluster_on_off as onoff, objects::{EncodeValue, GlobalElements}, diff --git a/matter/tests/data_model/timed_requests.rs b/rs-matter/tests/data_model/timed_requests.rs similarity index 99% rename from matter/tests/data_model/timed_requests.rs rename to rs-matter/tests/data_model/timed_requests.rs index c255506..1cce0a9 100644 --- a/matter/tests/data_model/timed_requests.rs +++ b/rs-matter/tests/data_model/timed_requests.rs @@ -15,7 +15,7 @@ * limitations under the License. */ -use matter::{ +use rs_matter::{ data_model::objects::EncodeValue, interaction_model::{ core::IMStatusCode, diff --git a/matter/tests/data_model_tests.rs b/rs-matter/tests/data_model_tests.rs similarity index 100% rename from matter/tests/data_model_tests.rs rename to rs-matter/tests/data_model_tests.rs diff --git a/tools/tlv_tool/Cargo.toml b/tools/tlv/Cargo.toml similarity index 84% rename from tools/tlv_tool/Cargo.toml rename to tools/tlv/Cargo.toml index f4c1035..e5ed9d2 100644 --- a/tools/tlv_tool/Cargo.toml +++ b/tools/tlv/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "tlv_tool" +name = "tlv" version = "0.1.0" edition = "2021" license = "Apache-2.0" @@ -7,7 +7,7 @@ license = "Apache-2.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -matter-iot = { path = "../../matter" } +rs-matter = { path = "../../rs-matter" } log = {version = "0.4.14", features = ["max_level_trace", "release_max_level_warn"]} simple_logger = "1.16.0" clap = "2.34" diff --git a/tools/tlv_tool/README.md b/tools/tlv/README.md similarity index 72% rename from tools/tlv_tool/README.md rename to tools/tlv/README.md index de81c13..4d71a51 100644 --- a/tools/tlv_tool/README.md +++ b/tools/tlv/README.md @@ -1,10 +1,11 @@ # TLV Tool + A simple tool for printing Matter TLVs or Matter-encoded certificates. ``` $ # For printing a Matter TLV List -$ tlv_tool --hex "15, 24, 0, 1, 18" +$ tlv --hex "15, 24, 0, 1, 18" $ # For printing a Matter encoded certificate -$ tlv_tool --cert "0x15, 0x00" +$ tlv --cert "0x15, 0x00" ``` diff --git a/tools/tlv_tool/src/main.rs b/tools/tlv/src/main.rs similarity index 97% rename from tools/tlv_tool/src/main.rs rename to tools/tlv/src/main.rs index 54e5374..aa2fa39 100644 --- a/tools/tlv_tool/src/main.rs +++ b/tools/tlv/src/main.rs @@ -16,8 +16,8 @@ */ use clap::{App, Arg}; -use matter::cert; -use matter::tlv; +use rs_matter::cert; +use rs_matter::tlv; use simple_logger::SimpleLogger; use std::process; @@ -29,7 +29,7 @@ fn main() { .init() .unwrap(); - let m = App::new("tlv_tool") + let m = App::new("tlv") .arg( Arg::with_name("hex") .short("h")