diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-04 05:48:38 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-04 05:48:38 -0500 |
| commit | bfd9c39e4712ebdb442d4ca0673061faed1e70e1 (patch) | |
| tree | 0d7a74b4463ee387f9cf9368ceb1b757f694f72a /net-wireless/rtl_433 | |
| parent | f716a9fe6455d39eef01e718aae68dae61c19704 (diff) | |
| download | baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.gz baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.xz baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.zip | |
Revert "Adding metadata"
This reverts commit f716a9fe6455d39eef01e718aae68dae61c19704.
Diffstat (limited to 'net-wireless/rtl_433')
| -rw-r--r-- | net-wireless/rtl_433/Manifest | 2 | ||||
| -rw-r--r-- | net-wireless/rtl_433/files/rtl_433-21.12-CVE.patch | 55 | ||||
| -rw-r--r-- | net-wireless/rtl_433/files/rtl_433-21.12-test-visibility.patch | 155 | ||||
| -rw-r--r-- | net-wireless/rtl_433/metadata.xml | 15 | ||||
| -rw-r--r-- | net-wireless/rtl_433/rtl_433-21.12.ebuild | 46 | ||||
| -rw-r--r-- | net-wireless/rtl_433/rtl_433-22.11.ebuild | 48 | ||||
| -rw-r--r-- | net-wireless/rtl_433/rtl_433-9999.ebuild | 44 |
7 files changed, 365 insertions, 0 deletions
diff --git a/net-wireless/rtl_433/Manifest b/net-wireless/rtl_433/Manifest new file mode 100644 index 000000000000..497a36f177c8 --- /dev/null +++ b/net-wireless/rtl_433/Manifest @@ -0,0 +1,2 @@ +DIST rtl_433-21.12.tar.gz 954628 BLAKE2B 7622cba1ff8d9ed46bcd9d7298b2278437aba3dca65985f27d44d20d3b79082cff04172d4593af07379928d42d5e422ff2857ada427156b16f1ba24a7bca57ed SHA512 8183887c1e09e94bee10b70190555d7fa0fa6675bba6130f78ab111b77428fef90696bc15a8e5abb07ae5ae3e492641a40acd6087d5bc413db5f2944878f03a3 +DIST rtl_433-22.11.tar.gz 841774 BLAKE2B 4a3c060c85233a85e951eff5fb210cc4ec5529a6cc868782fdbf7b3dad7372dcd7d428776c539d25105b9cfdf5f260bc031bbd5435eb2658e73b8b275f2040ee SHA512 fe0a26b14df97c679968536b5b3dfe41e5f8c6e0af00265461b4e1bf6312dd71cc1b1ccf2f5f78bc4d67b5f2effb17a88b743dc38db4a0a73f9f5b756868dba4 diff --git a/net-wireless/rtl_433/files/rtl_433-21.12-CVE.patch b/net-wireless/rtl_433/files/rtl_433-21.12-CVE.patch new file mode 100644 index 000000000000..1ce26c468e87 --- /dev/null +++ b/net-wireless/rtl_433/files/rtl_433-21.12-CVE.patch @@ -0,0 +1,55 @@ +From 2dad7b9fc67a1d0bfbe520fbd821678b8f8cc7a8 Mon Sep 17 00:00:00 2001 +From: "Christian W. Zuckschwerdt" <christian@zuckschwerdt.org> +Date: Mon, 24 Jan 2022 15:53:20 +0100 +Subject: [PATCH] minor: Fix overflow in Clipsal-CMR113 and Somfy-IOHC reported + by aug5t7 + +--- + src/devices/cmr113.c | 4 ++-- + src/devices/somfy_iohc.c | 9 +++++---- + 2 files changed, 7 insertions(+), 6 deletions(-) + +diff --git a/src/devices/cmr113.c b/src/devices/cmr113.c +index c85dfac56..19ec5d421 100644 +--- a/src/devices/cmr113.c ++++ b/src/devices/cmr113.c +@@ -42,8 +42,8 @@ Kudos to Jon Oxer for decoding this stream and putting it here: + + */ + +-#define COMPARE_BITS 83 +-#define COMPARE_BYTES (COMPARE_BITS/8) ++#define COMPARE_BITS 83 ++#define COMPARE_BYTES ((COMPARE_BITS + 7) / 8) + + static int cmr113_decode(r_device *decoder, bitbuffer_t *bitbuffer) + { +diff --git a/src/devices/somfy_iohc.c b/src/devices/somfy_iohc.c +index 906cae53e..2c88067b5 100644 +--- a/src/devices/somfy_iohc.c ++++ b/src/devices/somfy_iohc.c +@@ -100,11 +100,12 @@ static int somfy_iohc_decode(r_device *decoder, bitbuffer_t *bitbuffer) + if (bitbuffer->num_rows != 1) + return DECODE_ABORT_EARLY; + +- int offset = bitbuffer_search(bitbuffer, 0, 0, preamble_pattern, 24) + 24; +- if (offset >= bitbuffer->bits_per_row[0] - 19 * 10) ++ unsigned offset = bitbuffer_search(bitbuffer, 0, 0, preamble_pattern, 24) + 24; ++ if (offset + 19 * 10 >= bitbuffer->bits_per_row[0]) + return DECODE_ABORT_EARLY; + +- int num_bits = bitbuffer->bits_per_row[0] - offset; ++ unsigned num_bits = bitbuffer->bits_per_row[0] - offset; ++ num_bits = MIN(num_bits, sizeof (b) * 8); + + int len = extract_bytes_uart(bitbuffer->bb[0], offset, num_bits, b); + if (len < 19) +@@ -120,7 +121,7 @@ static int somfy_iohc_decode(r_device *decoder, bitbuffer_t *bitbuffer) + // calculate and verify checksum + if (crc16lsb(b, len, 0x8408, 0x0000) != 0) // unreflected poly 0x1021 + return DECODE_FAIL_MIC; +- bitrow_printf(b, len * 8, "%s: offset %d, num_bits %d, len %d, msg_len %d\n", __func__, offset, num_bits, len, msg_len); ++ bitrow_printf(b, len * 8, "%s: offset %u, num_bits %u, len %d, msg_len %d\n", __func__, offset, num_bits, len, msg_len); + + int msg_type = (b[0]); + int dst_id = ((unsigned)b[4] << 24) | (b[3] << 16) | (b[2] << 8) | (b[1]); // assume Little-Endian diff --git a/net-wireless/rtl_433/files/rtl_433-21.12-test-visibility.patch b/net-wireless/rtl_433/files/rtl_433-21.12-test-visibility.patch new file mode 100644 index 000000000000..01626361f5cc --- /dev/null +++ b/net-wireless/rtl_433/files/rtl_433-21.12-test-visibility.patch @@ -0,0 +1,155 @@ +From eda74c17dba1cfed7bcbb0654251cb0cd4e1f4b2 Mon Sep 17 00:00:00 2001 +From: "Christian W. Zuckschwerdt" <christian@zuckschwerdt.org> +Date: Thu, 17 Mar 2022 08:55:49 +0100 +Subject: [PATCH] minor: Add visibility to dynamic lib exports (closes #2010) + +Co-authored-by: "Rick Farina (Zero_Chaos)" <zerochaos@gentoo.org> +--- + include/data.h | 58 ++++++++++++++++++++++++++++---------------- + src/CMakeLists.txt | 2 +- + tests/CMakeLists.txt | 2 +- + 3 files changed, 39 insertions(+), 23 deletions(-) + +diff --git a/include/data.h b/include/data.h +index 34fe79525..e892c7fa2 100644 +--- a/include/data.h ++++ b/include/data.h +@@ -21,6 +21,22 @@ + #ifndef INCLUDE_DATA_H_ + #define INCLUDE_DATA_H_ + ++#if defined _WIN32 || defined __CYGWIN__ ++ #ifdef data_EXPORTS ++ #define R_API __stdcall __declspec(dllexport) // Note: actually gcc seems to also supports this syntax. ++ #else ++ #define R_API __stdcall __declspec(dllimport) // Note: actually gcc seems to also supports this syntax. ++ #endif ++ #define R_API_CALLCONV __stdcall ++#else ++ #if __GNUC__ >= 4 ++ #define R_API __attribute__((visibility ("default"))) ++ #else ++ #define R_API ++ #endif ++ #define R_API_CALLCONV ++#endif ++ + #include <stddef.h> + + typedef enum { +@@ -87,19 +103,19 @@ typedef struct data { + + @return A constructed data_t* object or NULL if there was a memory allocation error. + */ +-data_t *data_make(const char *key, const char *pretty_key, ...); ++R_API data_t *data_make(const char *key, const char *pretty_key, ...); + + /** Adds to a structured data object, by appending data. + + @see data_make() + */ +-data_t *data_append(data_t *first, const char *key, const char *pretty_key, ...); ++R_API data_t *data_append(data_t *first, const char *key, const char *pretty_key, ...); + + /** Adds to a structured data object, by prepending data. + + @see data_make() + */ +-data_t *data_prepend(data_t *first, const char *key, const char *pretty_key, ...); ++R_API data_t *data_prepend(data_t *first, const char *key, const char *pretty_key, ...); + + /** Constructs an array from given data of the given uniform type. + +@@ -110,28 +126,28 @@ data_t *data_prepend(data_t *first, const char *key, const char *pretty_key, ... + @return The constructed data array object, typically placed inside a data_t or NULL + if there was a memory allocation error. + */ +-data_array_t *data_array(int num_values, data_type_t type, void *ptr); ++R_API data_array_t *data_array(int num_values, data_type_t type, void *ptr); + + /** Releases a data array. */ +-void data_array_free(data_array_t *array); ++R_API void data_array_free(data_array_t *array); + + /** Retain a structure object, returns the structure object passed in. */ +-data_t *data_retain(data_t *data); ++R_API data_t *data_retain(data_t *data); + + /** Releases a structure object if retain is zero, decrement retain otherwise. */ +-void data_free(data_t *data); ++R_API void data_free(data_t *data); + + struct data_output; + + typedef struct data_output { +- void (*print_data)(struct data_output *output, data_t *data, char const *format); +- void (*print_array)(struct data_output *output, data_array_t *data, char const *format); +- void (*print_string)(struct data_output *output, const char *data, char const *format); +- void (*print_double)(struct data_output *output, double data, char const *format); +- void (*print_int)(struct data_output *output, int data, char const *format); +- void (*output_start)(struct data_output *output, char const *const *fields, int num_fields); +- void (*output_flush)(struct data_output *output); +- void (*output_free)(struct data_output *output); ++ void (R_API_CALLCONV *print_data)(struct data_output *output, data_t *data, char const *format); ++ void (R_API_CALLCONV *print_array)(struct data_output *output, data_array_t *data, char const *format); ++ void (R_API_CALLCONV *print_string)(struct data_output *output, const char *data, char const *format); ++ void (R_API_CALLCONV *print_double)(struct data_output *output, double data, char const *format); ++ void (R_API_CALLCONV *print_int)(struct data_output *output, int data, char const *format); ++ void (R_API_CALLCONV *output_start)(struct data_output *output, char const *const *fields, int num_fields); ++ void (R_API_CALLCONV *output_flush)(struct data_output *output); ++ void (R_API_CALLCONV *output_free)(struct data_output *output); + } data_output_t; + + /** Setup known field keys and start output, used by CSV only. +@@ -141,19 +157,19 @@ typedef struct data_output { + strings not. The list may contain duplicates and they are eliminated. + @param num_fields number of fields + */ +-void data_output_start(struct data_output *output, char const *const *fields, int num_fields); ++R_API void data_output_start(struct data_output *output, char const *const *fields, int num_fields); + + /** Prints a structured data object, flushes the output if applicable. */ +-void data_output_print(struct data_output *output, data_t *data); ++R_API void data_output_print(struct data_output *output, data_t *data); + +-void data_output_free(struct data_output *output); ++R_API void data_output_free(struct data_output *output); + + /* data output helpers */ + +-void print_value(data_output_t *output, data_type_t type, data_value_t value, char const *format); ++R_API void print_value(data_output_t *output, data_type_t type, data_value_t value, char const *format); + +-void print_array_value(data_output_t *output, data_array_t *array, char const *format, int idx); ++R_API void print_array_value(data_output_t *output, data_array_t *array, char const *format, int idx); + +-size_t data_print_jsons(data_t *data, char *dst, size_t len); ++R_API size_t data_print_jsons(data_t *data, char *dst, size_t len); + + #endif // INCLUDE_DATA_H_ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index b050dd597..443393e67 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -253,7 +253,7 @@ if(MSVC) + target_sources(rtl_433 PRIVATE getopt/getopt.c) + endif() + +-add_library(data data.c abuf.c term_ctl.c) ++add_library(data data.c abuf.c) + target_link_libraries(data ${NET_LIBRARIES}) + + target_link_libraries(rtl_433 +diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt +index aaae3d498..9a3a14302 100644 +--- a/tests/CMakeLists.txt ++++ b/tests/CMakeLists.txt +@@ -1,7 +1,7 @@ + ######################################################################## + # Compile test cases + ######################################################################## +-add_executable(data-test data-test.c ../src/output_file.c) ++add_executable(data-test data-test.c ../src/output_file.c ../src/term_ctl.c) + + target_link_libraries(data-test data) + diff --git a/net-wireless/rtl_433/metadata.xml b/net-wireless/rtl_433/metadata.xml new file mode 100644 index 000000000000..300f67a58f9c --- /dev/null +++ b/net-wireless/rtl_433/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>radio@gentoo.org</email> + <name>Radio</name> + </maintainer> + <use> + <flag name="rtlsdr">Build with Realtek RTL2832U (rtlsdr) support</flag> + <flag name="soapysdr">Build with SoapySDR support</flag> + </use> + <upstream> + <remote-id type="github">merbanan/rtl_433</remote-id> + </upstream> +</pkgmetadata> diff --git a/net-wireless/rtl_433/rtl_433-21.12.ebuild b/net-wireless/rtl_433/rtl_433-21.12.ebuild new file mode 100644 index 000000000000..8e0908f317bb --- /dev/null +++ b/net-wireless/rtl_433/rtl_433-21.12.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Decode OOK modulated signals" +HOMEPAGE="https://github.com/merbanan/rtl_433" +if [[ ${PV} == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/merbanan/rtl_433" +else + SRC_URI="https://github.com/merbanan/rtl_433/archive/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="+rtlsdr soapysdr test" + +DEPEND="rtlsdr? ( net-wireless/rtl-sdr:= + virtual/libusb:1 ) + soapysdr? ( net-wireless/soapysdr:= ) + dev-libs/openssl:=" +RDEPEND="${DEPEND}" +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}/${P}-CVE.patch" + "${FILESDIR}/${P}-test-visibility.patch" +) + +src_configure() { + local mycmakeargs=( + -DENABLE_RTLSDR="$(usex rtlsdr)" + -DENABLE_SOAPYSDR="$(usex soapysdr)" + -DBUILD_TESTING="$(usex test)" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + mv "${ED}/usr/etc" "${ED}/" || die +} diff --git a/net-wireless/rtl_433/rtl_433-22.11.ebuild b/net-wireless/rtl_433/rtl_433-22.11.ebuild new file mode 100644 index 000000000000..7c0afbe1dac1 --- /dev/null +++ b/net-wireless/rtl_433/rtl_433-22.11.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Decode OOK modulated signals" +HOMEPAGE="https://github.com/merbanan/rtl_433" +if [[ ${PV} == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/merbanan/rtl_433" +else + COMMIT="105342a33271bac6837d06aa86c23eec9e9ecb6a" + SRC_URI="https://github.com/merbanan/rtl_433/archive/${COMMIT}.tar.gz -> ${P}.tar.gz" + S="${WORKDIR}/${PN}-${COMMIT}" + #SRC_URI="https://github.com/merbanan/rtl_433/archive/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="+rtlsdr soapysdr test" + +DEPEND="rtlsdr? ( net-wireless/rtl-sdr:= + virtual/libusb:1 ) + soapysdr? ( net-wireless/soapysdr:= )" +RDEPEND="${DEPEND}" +RESTRICT="!test? ( test )" + +src_prepare() { + sed -i 's#data data.c#data STATIC data.c#' src/CMakeLists.txt || die + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DENABLE_RTLSDR="$(usex rtlsdr)" + -DENABLE_SOAPYSDR="$(usex soapysdr)" + -DBUILD_TESTING="$(usex test)" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + mv "${ED}/usr/etc" "${ED}/" || die +} diff --git a/net-wireless/rtl_433/rtl_433-9999.ebuild b/net-wireless/rtl_433/rtl_433-9999.ebuild new file mode 100644 index 000000000000..ea9cb877d387 --- /dev/null +++ b/net-wireless/rtl_433/rtl_433-9999.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Decode OOK modulated signals" +HOMEPAGE="https://github.com/merbanan/rtl_433" +if [[ ${PV} == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/merbanan/rtl_433" +else + COMMIT="105342a33271bac6837d06aa86c23eec9e9ecb6a" + SRC_URI="https://github.com/merbanan/rtl_433/archive/${COMMIT}.tar.gz -> ${P}.tar.gz" + S="${WORKDIR}/${PN}-${COMMIT}" + #SRC_URI="https://github.com/merbanan/rtl_433/archive/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="+rtlsdr soapysdr test" + +DEPEND="dev-libs/openssl:= + rtlsdr? ( net-wireless/rtl-sdr:= + virtual/libusb:1 ) + soapysdr? ( net-wireless/soapysdr:= )" +RDEPEND="${DEPEND}" +RESTRICT="!test? ( test )" + +src_prepare() { + sed -i 's#data data.c#data STATIC data.c#' src/CMakeLists.txt || die + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DENABLE_RTLSDR="$(usex rtlsdr)" + -DENABLE_SOAPYSDR="$(usex soapysdr)" + -DBUILD_TESTING="$(usex test)" + ) + cmake_src_configure +} |
