include $(TOPDIR)/rules.mk
PKG_NAME:=rsyslog
-PKG_VERSION:=8.2110.0
+PKG_VERSION:=8.2312.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:= \
https://fossies.org/linux/misc \
https://www.rsyslog.com/files/download/rsyslog
-PKG_HASH:=3f904ec137ca6412e8273f7896d962ecb589f7d0c589bdf16b1709ec27e24f31
+PKG_HASH:=774032006128a896437f5913e132aa27dbfb937cd8847e449522d5a12d63d03e
PKG_MAINTAINER:=
PKG_LICENSE:=GPL-3.0-or-later
include $(TOPDIR)/rules.mk
PKG_NAME:=autoconf
-PKG_VERSION:=2.70
-PKG_RELEASE:=2
+PKG_VERSION:=2.72
+PKG_RELEASE:=1
PKG_SOURCE_URL:=@GNU/autoconf
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
-PKG_HASH:=fa9e227860d9d845c0a07f63b88c8d7a2ae1aa2345fb619384bb8accc19fecc6
+PKG_HASH:=ba885c1319578d6c94d46e9b0dceb4014caafe2490e437a0dbca3f270a223f5a
PKG_MAINTAINER:=Heinrich Schuchardt <xypron.glpk@gmx.de>
PKG_LICENSE:=GPL-3.0-or-later
include $(TOPDIR)/rules.mk
PKG_NAME:=automake
-PKG_VERSION:=1.16.3
+PKG_VERSION:=1.16.5
PKG_RELEASE:=1
PKG_SOURCE_URL:=@GNU/automake
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
-PKG_HASH:=ff2bf7656c4d1c6fdda3b8bebb21f09153a736bcba169aaf65eab25fa113bf3a
+PKG_HASH:=f01d58cd6d9d77fbdca9eb4bbd5ead1988228fdb73d6f7a201f5f8d6b118b469
PKG_MAINTAINER:=Heinrich Schuchardt <xypron.glpk@gmx.de>
PKG_LICENSE:=GPL-2.0-or-later
include $(TOPDIR)/rules.mk
PKG_NAME:=diffutils
-PKG_VERSION:=3.8
+PKG_VERSION:=3.10
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNU/diffutils
-PKG_HASH:=a6bdd7d1b31266d11c4f4de6c1b748d4607ab0231af5188fc2533d0ae2438fec
+PKG_HASH:=90e5e93cc724e4ebe12ede80df1634063c7a855692685919bfe60b556c9bd09e
PKG_MAINTAINER:=Roger D <rogerdammit@gmail.com>
PKG_LICENSE:=GPL-3.0
CATEGORY:=Development
DEPENDS:=+USE_GLIBC:librt
TITLE:=diffutils
- URL:=http://www.gnu.org/software/diffutils/
+ URL:=https://www.gnu.org/software/diffutils/
ALTERNATIVES:=\
200:/usr/bin/cmp:/usr/libexec/cmp-gnu \
200:/usr/bin/diff:/usr/libexec/diff-gnu
--- a/lib/sigsegv.c
+++ b/lib/sigsegv.c
-@@ -219,8 +219,8 @@ int libsigsegv_version = LIBSIGSEGV_VERS
- # define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.gp_regs[1]
- # else /* 32-bit */
- /* both should be equivalent */
--# if 0
--# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.regs->gpr[1]
-+# ifndef __GLIBC__
-+# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.gregs[1]
- # else
- # define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.uc_regs->gregs[1]
- # endif
+@@ -244,8 +244,8 @@ int libsigsegv_version = LIBSIGSEGV_VERS
+ /* Assume the structure of ucontext_t in
+ glibc/sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h. */
+ /* Because of the union, both definitions should be equivalent. */
+-# if 0
+-# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.regs->gpr[1]
++# ifndef __GLIBC__
++# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.gregs[1]
+ # else
+ # define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.uc_regs->gregs[1]
+ # endif
include $(TOPDIR)/rules.mk
PKG_NAME:=erlang
-PKG_VERSION:=26.2.1
+PKG_VERSION:=26.2.2
PKG_RELEASE:=1
PKG_SOURCE:=otp_src_$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:= https://github.com/erlang/otp/releases/download/OTP-$(PKG_VERSION)/
-PKG_HASH:=80d66bafbae409481a4e1badcb4a6275b07a8e9af82980c08d7a8add483232a9
+PKG_SOURCE_URL:=https://github.com/erlang/otp/releases/download/OTP-$(PKG_VERSION)
+PKG_HASH:=d537ff4ac5d8c1cb507aedaf7198fc1f155ea8aa65a8d83edb35c2802763cc28
PKG_LICENSE:=Apache-2.0
PKG_LICENSE_FILES:=LICENSE.txt
PKG_CPE_ID:=cpe:/a:erlang:erlang
PKG_BUILD_DEPENDS:=erlang/host openssl
-PKG_BUILD_FLAGS:=no-mips16
PKG_ASLR_PIE:=0
HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/otp_src_$(PKG_VERSION)
define Package/erlang
$(call Package/erlang/Default)
DEPENDS+= +libncurses +librt +zlib +libstdcpp
- PROVIDES:= erlang-erts=14.2.1 erlang-kernel=9.2 erlang-sasl=4.2.1 erlang-stdlib=5.2
+ PROVIDES:= erlang-erts=14.2.2 erlang-kernel=9.2.1 erlang-sasl=4.2.1 erlang-stdlib=5.2
endef
define Package/erlang/description
define Package/erlang-ssh
$(call Package/erlang/Default)
TITLE:=Secure Shell (SSH) support
- VERSION:=5.1.1
+ VERSION:=5.1.2
DEPENDS+= +erlang +erlang-crypto
endef
define Package/erlang-ssl
$(call Package/erlang/Default)
TITLE:=Secure Sockets Layer (SSL) support
- VERSION:=11.1
+ VERSION:=11.1.1
DEPENDS+= +erlang +erlang-crypto
endef
define Package/erlang-erl-interface
$(call Package/erlang/Default)
TITLE:=Erlang erl_interface support
- VERSION:=5.5
+ VERSION:=5.5.1
DEPENDS+= +erlang
endef
$(CP) $(PKG_INSTALL_DIR)/usr/bin/$$$$f $(1)/usr/bin/ ; \
done
$(INSTALL_DIR) $(1)/usr/lib/erlang/bin
- for f in erl erlc escript run_erl start start.boot start.script start_clean.boot start_erl start_sasl.boot no_dot_erlang.boot to_erl; do \
+ for f in epmd erl erlc escript run_erl start start.boot start.script start_clean.boot start_erl start_sasl.boot no_dot_erlang.boot to_erl; do \
$(CP) $(PKG_INSTALL_DIR)/usr/lib/erlang/bin/$$$$f $(1)/usr/lib/erlang/bin/ ; \
done
$(INSTALL_DIR) $(1)/usr/lib/erlang/lib
+++ /dev/null
-From eace72dfda7e6452dc82b884f0385a78a9d65d10 Mon Sep 17 00:00:00 2001
-From: Paul Swartz <paul@paulswartz.net>
-Date: Sun, 31 Dec 2023 13:12:02 -0500
-Subject: [PATCH 1/3] fix: rename `openssl/md5.h` to avoid include conflicts
- with OpenSSL
-
-Ref: #7987
----
- erts/emulator/openssl/README | 2 +-
- erts/emulator/openssl/crypto/md5/md5_local.h | 2 +-
- erts/emulator/openssl/include/erl_md5.h | 2 +-
- .../emulator/openssl/include/{openssl => openssl_local}/md5.h | 0
- erts/emulator/openssl/openssl.diff | 4 ++--
- erts/emulator/openssl/openssl.mk | 2 +-
- lib/erl_interface/src/openssl/README | 2 +-
- lib/erl_interface/src/openssl/crypto/md5/md5_local.h | 2 +-
- lib/erl_interface/src/openssl/include/erl_md5.h | 2 +-
- .../src/openssl/include/{openssl => openssl_local}/md5.h | 0
- lib/erl_interface/src/openssl/openssl.diff | 4 ++--
- 11 files changed, 11 insertions(+), 11 deletions(-)
- rename erts/emulator/openssl/include/{openssl => openssl_local}/md5.h (100%)
- rename lib/erl_interface/src/openssl/include/{openssl => openssl_local}/md5.h (100%)
-
---- a/erts/emulator/openssl/README
-+++ b/erts/emulator/openssl/README
-@@ -7,7 +7,7 @@ The files that has been taken from the 3
- ./crypto/md5/md5_local.h
- ./crypto/md5/md5_dgst.c
- ./include/crypto/md32_common.h
--./include/openssl/md5.h
-+./include/openssl_local/md5.h (renamed from include/openssl/md5.h)
-
- The openssl.diff file contains the diff between the original files and the ones
- included in OTP.
---- a/erts/emulator/openssl/crypto/md5/md5_local.h
-+++ b/erts/emulator/openssl/crypto/md5/md5_local.h
-@@ -10,7 +10,7 @@
- #include <stdlib.h>
- #include <string.h>
- #if defined(ERLANG_OPENSSL_INTEGRATION)
--#include "openssl/md5.h"
-+#include "openssl_local/md5.h"
- #define md5_block_data_order MD5_BLOCK_DATA_ORDER_FUNCTION_NAME
- #undef MD5_ASM
- #else
---- a/erts/emulator/openssl/include/erl_md5.h
-+++ b/erts/emulator/openssl/include/erl_md5.h
-@@ -30,6 +30,6 @@
- #define MD5_TRANSFORM_FUNCTION_NAME MD5Transform
- #define MD5_BLOCK_DATA_ORDER_FUNCTION_NAME MD5BlockDataOrder
-
--#include "openssl/md5.h"
-+#include "openssl_local/md5.h"
-
- #endif
---- a/erts/emulator/openssl/openssl.diff
-+++ b/erts/emulator/openssl/openssl.diff
-@@ -46,7 +46,7 @@ diff -u original/crypto/md5/md5_local.h
- #include <stdlib.h>
- #include <string.h>
- +#if defined(ERLANG_OPENSSL_INTEGRATION)
--+#include "openssl/md5.h"
-++#include "openssl_local/md5.h"
- +#define md5_block_data_order MD5_BLOCK_DATA_ORDER_FUNCTION_NAME
- +#undef MD5_ASM
- +#else
-@@ -116,7 +116,7 @@ diff -u original/include/crypto/md32_com
- # error "HASH_MAKE_STRING must be defined!"
- diff -u original/include/openssl/md5.h include/openssl/md5.h
- --- original/include/openssl/md5.h 2023-11-24 15:58:28.610171865 +0100
--+++ include/openssl/md5.h 2023-11-24 23:10:52.570854593 +0100
-++++ include/openssl_local/md5.h 2023-11-24 23:10:52.570854593 +0100
- @@ -11,6 +11,15 @@
- # define OPENSSL_MD5_H
- # pragma once
---- a/erts/emulator/openssl/openssl.mk
-+++ b/erts/emulator/openssl/openssl.mk
-@@ -50,4 +50,4 @@ $(OPENSSL_OBJDIR)/%.o: $(OPENSSL_DIR)/cr
- $(OPENSSL_OBJDIR)/md5_dgst.o: $(OPENSSL_DIR)/crypto/md5/md5_dgst.c \
- $(OPENSSL_DIR)/crypto/md5/md5_local.h \
- $(OPENSSL_DIR)/include/crypto/md32_common.h \
-- $(OPENSSL_DIR)/include/openssl/md5.h
-+ $(OPENSSL_DIR)/include/openssl_local/md5.h
---- a/erts/lib_src/common/erl_misc_utils.c
-+++ b/erts/lib_src/common/erl_misc_utils.c
-@@ -42,7 +42,7 @@
- # include <sys/select.h>
- # endif
- # include <time.h>
--# if HAVE_SYS_TIME_H
-+# ifdef HAVE_SYS_TIME_H
- # include <sys/time.h>
- # endif
- # include <string.h>
---- a/lib/erl_interface/src/openssl/crypto/md5/md5_local.h
-+++ b/lib/erl_interface/src/openssl/crypto/md5/md5_local.h
-@@ -10,7 +10,7 @@
- #include <stdlib.h>
- #include <string.h>
- #if defined(ERLANG_OPENSSL_INTEGRATION)
--#include "openssl/md5.h"
-+#include "openssl_local/md5.h"
- #define md5_block_data_order MD5_BLOCK_DATA_ORDER_FUNCTION_NAME
- #undef MD5_ASM
- #else
---- a/lib/erl_interface/src/openssl/include/erl_md5.h
-+++ b/lib/erl_interface/src/openssl/include/erl_md5.h
-@@ -30,6 +30,6 @@
- #define MD5_TRANSFORM_FUNCTION_NAME ei_MD5Transform
- #define MD5_BLOCK_DATA_ORDER_FUNCTION_NAME ei_MD5BlockDataOrder
-
--#include "openssl/md5.h"
-+#include "openssl_local/md5.h"
-
- #endif
---- a/erts/emulator/openssl/include/openssl/md5.h
-+++ /dev/null
-@@ -1,82 +0,0 @@
--/*
-- * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.
-- *
-- * Licensed under the Apache License 2.0 (the "License"). You may not use
-- * this file except in compliance with the License. You can obtain a copy
-- * in the file LICENSE in the source distribution or at
-- * https://www.openssl.org/source/license.html
-- */
--
--#ifndef OPENSSL_MD5_H
--# define OPENSSL_MD5_H
--# pragma once
--
--#if defined(ERLANG_OPENSSL_INTEGRATION)
--
--#include "erl_md5.h"
--
--#undef OPENSSL_NO_MD5
--#undef OPENSSL_NO_DEPRECATED_3_0
--
--#else /* !defined(ERLANG_OPENSSL_INTEGRATION) */
--
--# include <openssl/macros.h>
--# ifndef OPENSSL_NO_DEPRECATED_3_0
--# define HEADER_MD5_H
--# endif
--
--# include <openssl/opensslconf.h>
--
--#endif /* !defined(ERLANG_OPENSSL_INTEGRATION) */
--
--# ifndef OPENSSL_NO_MD5
--#if !defined(ERLANG_OPENSSL_INTEGRATION)
--# include <openssl/e_os2.h>
--#endif
--# include <stddef.h>
--# ifdef __cplusplus
--extern "C" {
--# endif
--
--# define MD5_DIGEST_LENGTH 16
--
--# if !defined(OPENSSL_NO_DEPRECATED_3_0)
--/*
-- * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-- * ! MD5_LONG has to be at least 32 bits wide. !
-- * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-- */
--# define MD5_LONG unsigned int
--
--# define MD5_CBLOCK 64
--# define MD5_LBLOCK (MD5_CBLOCK/4)
--
--typedef struct MD5state_st {
-- MD5_LONG A, B, C, D;
-- MD5_LONG Nl, Nh;
-- MD5_LONG data[MD5_LBLOCK];
-- unsigned int num;
--} MD5_CTX;
--# endif
--# ifndef OPENSSL_NO_DEPRECATED_3_0
--# if defined(ERLANG_OPENSSL_INTEGRATION)
--int MD5_INIT_FUNCTION_NAME(MD5_CTX *c);
--int MD5_UPDATE_FUNCTION_NAME(MD5_CTX *c, const void *data, size_t len);
--int MD5_FINAL_FUNCTION_NAME(unsigned char *md, MD5_CTX *c);
--void MD5_TRANSFORM_FUNCTION_NAME(MD5_CTX *c, const unsigned char *b);
--# else /* !defined(ERLANG_OPENSSL_INTEGRATION) */
--OSSL_DEPRECATEDIN_3_0 int MD5_Init(MD5_CTX *c);
--OSSL_DEPRECATEDIN_3_0 int MD5_Update(MD5_CTX *c, const void *data, size_t len);
--OSSL_DEPRECATEDIN_3_0 int MD5_Final(unsigned char *md, MD5_CTX *c);
--OSSL_DEPRECATEDIN_3_0 unsigned char *MD5(const unsigned char *d, size_t n,
-- unsigned char *md);
--OSSL_DEPRECATEDIN_3_0 void MD5_Transform(MD5_CTX *c, const unsigned char *b);
--# endif /* !defined(ERLANG_OPENSSL_INTEGRATION) */
--# endif
--
--# ifdef __cplusplus
--}
--# endif
--# endif
--
--#endif
---- /dev/null
-+++ b/erts/emulator/openssl/include/openssl_local/md5.h
-@@ -0,0 +1,82 @@
-+/*
-+ * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.
-+ *
-+ * Licensed under the Apache License 2.0 (the "License"). You may not use
-+ * this file except in compliance with the License. You can obtain a copy
-+ * in the file LICENSE in the source distribution or at
-+ * https://www.openssl.org/source/license.html
-+ */
-+
-+#ifndef OPENSSL_MD5_H
-+# define OPENSSL_MD5_H
-+# pragma once
-+
-+#if defined(ERLANG_OPENSSL_INTEGRATION)
-+
-+#include "erl_md5.h"
-+
-+#undef OPENSSL_NO_MD5
-+#undef OPENSSL_NO_DEPRECATED_3_0
-+
-+#else /* !defined(ERLANG_OPENSSL_INTEGRATION) */
-+
-+# include <openssl/macros.h>
-+# ifndef OPENSSL_NO_DEPRECATED_3_0
-+# define HEADER_MD5_H
-+# endif
-+
-+# include <openssl/opensslconf.h>
-+
-+#endif /* !defined(ERLANG_OPENSSL_INTEGRATION) */
-+
-+# ifndef OPENSSL_NO_MD5
-+#if !defined(ERLANG_OPENSSL_INTEGRATION)
-+# include <openssl/e_os2.h>
-+#endif
-+# include <stddef.h>
-+# ifdef __cplusplus
-+extern "C" {
-+# endif
-+
-+# define MD5_DIGEST_LENGTH 16
-+
-+# if !defined(OPENSSL_NO_DEPRECATED_3_0)
-+/*
-+ * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-+ * ! MD5_LONG has to be at least 32 bits wide. !
-+ * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-+ */
-+# define MD5_LONG unsigned int
-+
-+# define MD5_CBLOCK 64
-+# define MD5_LBLOCK (MD5_CBLOCK/4)
-+
-+typedef struct MD5state_st {
-+ MD5_LONG A, B, C, D;
-+ MD5_LONG Nl, Nh;
-+ MD5_LONG data[MD5_LBLOCK];
-+ unsigned int num;
-+} MD5_CTX;
-+# endif
-+# ifndef OPENSSL_NO_DEPRECATED_3_0
-+# if defined(ERLANG_OPENSSL_INTEGRATION)
-+int MD5_INIT_FUNCTION_NAME(MD5_CTX *c);
-+int MD5_UPDATE_FUNCTION_NAME(MD5_CTX *c, const void *data, size_t len);
-+int MD5_FINAL_FUNCTION_NAME(unsigned char *md, MD5_CTX *c);
-+void MD5_TRANSFORM_FUNCTION_NAME(MD5_CTX *c, const unsigned char *b);
-+# else /* !defined(ERLANG_OPENSSL_INTEGRATION) */
-+OSSL_DEPRECATEDIN_3_0 int MD5_Init(MD5_CTX *c);
-+OSSL_DEPRECATEDIN_3_0 int MD5_Update(MD5_CTX *c, const void *data, size_t len);
-+OSSL_DEPRECATEDIN_3_0 int MD5_Final(unsigned char *md, MD5_CTX *c);
-+OSSL_DEPRECATEDIN_3_0 unsigned char *MD5(const unsigned char *d, size_t n,
-+ unsigned char *md);
-+OSSL_DEPRECATEDIN_3_0 void MD5_Transform(MD5_CTX *c, const unsigned char *b);
-+# endif /* !defined(ERLANG_OPENSSL_INTEGRATION) */
-+# endif
-+
-+# ifdef __cplusplus
-+}
-+# endif
-+# endif
-+
-+#endif
---- a/lib/erl_interface/src/openssl/include/openssl/md5.h
-+++ /dev/null
-@@ -1,82 +0,0 @@
--/*
-- * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.
-- *
-- * Licensed under the Apache License 2.0 (the "License"). You may not use
-- * this file except in compliance with the License. You can obtain a copy
-- * in the file LICENSE in the source distribution or at
-- * https://www.openssl.org/source/license.html
-- */
--
--#ifndef OPENSSL_MD5_H
--# define OPENSSL_MD5_H
--# pragma once
--
--#if defined(ERLANG_OPENSSL_INTEGRATION)
--
--#include "erl_md5.h"
--
--#undef OPENSSL_NO_MD5
--#undef OPENSSL_NO_DEPRECATED_3_0
--
--#else /* !defined(ERLANG_OPENSSL_INTEGRATION) */
--
--# include <openssl/macros.h>
--# ifndef OPENSSL_NO_DEPRECATED_3_0
--# define HEADER_MD5_H
--# endif
--
--# include <openssl/opensslconf.h>
--
--#endif /* !defined(ERLANG_OPENSSL_INTEGRATION) */
--
--# ifndef OPENSSL_NO_MD5
--#if !defined(ERLANG_OPENSSL_INTEGRATION)
--# include <openssl/e_os2.h>
--#endif
--# include <stddef.h>
--# ifdef __cplusplus
--extern "C" {
--# endif
--
--# define MD5_DIGEST_LENGTH 16
--
--# if !defined(OPENSSL_NO_DEPRECATED_3_0)
--/*
-- * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-- * ! MD5_LONG has to be at least 32 bits wide. !
-- * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-- */
--# define MD5_LONG unsigned int
--
--# define MD5_CBLOCK 64
--# define MD5_LBLOCK (MD5_CBLOCK/4)
--
--typedef struct MD5state_st {
-- MD5_LONG A, B, C, D;
-- MD5_LONG Nl, Nh;
-- MD5_LONG data[MD5_LBLOCK];
-- unsigned int num;
--} MD5_CTX;
--# endif
--# ifndef OPENSSL_NO_DEPRECATED_3_0
--# if defined(ERLANG_OPENSSL_INTEGRATION)
--int MD5_INIT_FUNCTION_NAME(MD5_CTX *c);
--int MD5_UPDATE_FUNCTION_NAME(MD5_CTX *c, const void *data, size_t len);
--int MD5_FINAL_FUNCTION_NAME(unsigned char *md, MD5_CTX *c);
--void MD5_TRANSFORM_FUNCTION_NAME(MD5_CTX *c, const unsigned char *b);
--# else /* !defined(ERLANG_OPENSSL_INTEGRATION) */
--OSSL_DEPRECATEDIN_3_0 int MD5_Init(MD5_CTX *c);
--OSSL_DEPRECATEDIN_3_0 int MD5_Update(MD5_CTX *c, const void *data, size_t len);
--OSSL_DEPRECATEDIN_3_0 int MD5_Final(unsigned char *md, MD5_CTX *c);
--OSSL_DEPRECATEDIN_3_0 unsigned char *MD5(const unsigned char *d, size_t n,
-- unsigned char *md);
--OSSL_DEPRECATEDIN_3_0 void MD5_Transform(MD5_CTX *c, const unsigned char *b);
--# endif /* !defined(ERLANG_OPENSSL_INTEGRATION) */
--# endif
--
--# ifdef __cplusplus
--}
--# endif
--# endif
--
--#endif
---- /dev/null
-+++ b/lib/erl_interface/src/openssl/include/openssl_local/md5.h
-@@ -0,0 +1,82 @@
-+/*
-+ * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.
-+ *
-+ * Licensed under the Apache License 2.0 (the "License"). You may not use
-+ * this file except in compliance with the License. You can obtain a copy
-+ * in the file LICENSE in the source distribution or at
-+ * https://www.openssl.org/source/license.html
-+ */
-+
-+#ifndef OPENSSL_MD5_H
-+# define OPENSSL_MD5_H
-+# pragma once
-+
-+#if defined(ERLANG_OPENSSL_INTEGRATION)
-+
-+#include "erl_md5.h"
-+
-+#undef OPENSSL_NO_MD5
-+#undef OPENSSL_NO_DEPRECATED_3_0
-+
-+#else /* !defined(ERLANG_OPENSSL_INTEGRATION) */
-+
-+# include <openssl/macros.h>
-+# ifndef OPENSSL_NO_DEPRECATED_3_0
-+# define HEADER_MD5_H
-+# endif
-+
-+# include <openssl/opensslconf.h>
-+
-+#endif /* !defined(ERLANG_OPENSSL_INTEGRATION) */
-+
-+# ifndef OPENSSL_NO_MD5
-+#if !defined(ERLANG_OPENSSL_INTEGRATION)
-+# include <openssl/e_os2.h>
-+#endif
-+# include <stddef.h>
-+# ifdef __cplusplus
-+extern "C" {
-+# endif
-+
-+# define MD5_DIGEST_LENGTH 16
-+
-+# if !defined(OPENSSL_NO_DEPRECATED_3_0)
-+/*
-+ * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-+ * ! MD5_LONG has to be at least 32 bits wide. !
-+ * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-+ */
-+# define MD5_LONG unsigned int
-+
-+# define MD5_CBLOCK 64
-+# define MD5_LBLOCK (MD5_CBLOCK/4)
-+
-+typedef struct MD5state_st {
-+ MD5_LONG A, B, C, D;
-+ MD5_LONG Nl, Nh;
-+ MD5_LONG data[MD5_LBLOCK];
-+ unsigned int num;
-+} MD5_CTX;
-+# endif
-+# ifndef OPENSSL_NO_DEPRECATED_3_0
-+# if defined(ERLANG_OPENSSL_INTEGRATION)
-+int MD5_INIT_FUNCTION_NAME(MD5_CTX *c);
-+int MD5_UPDATE_FUNCTION_NAME(MD5_CTX *c, const void *data, size_t len);
-+int MD5_FINAL_FUNCTION_NAME(unsigned char *md, MD5_CTX *c);
-+void MD5_TRANSFORM_FUNCTION_NAME(MD5_CTX *c, const unsigned char *b);
-+# else /* !defined(ERLANG_OPENSSL_INTEGRATION) */
-+OSSL_DEPRECATEDIN_3_0 int MD5_Init(MD5_CTX *c);
-+OSSL_DEPRECATEDIN_3_0 int MD5_Update(MD5_CTX *c, const void *data, size_t len);
-+OSSL_DEPRECATEDIN_3_0 int MD5_Final(unsigned char *md, MD5_CTX *c);
-+OSSL_DEPRECATEDIN_3_0 unsigned char *MD5(const unsigned char *d, size_t n,
-+ unsigned char *md);
-+OSSL_DEPRECATEDIN_3_0 void MD5_Transform(MD5_CTX *c, const unsigned char *b);
-+# endif /* !defined(ERLANG_OPENSSL_INTEGRATION) */
-+# endif
-+
-+# ifdef __cplusplus
-+}
-+# endif
-+# endif
-+
-+#endif
include $(TOPDIR)/rules.mk
PKG_NAME:=django
-PKG_VERSION:=5.0
+PKG_VERSION:=5.0.1
PKG_RELEASE:=1
PYPI_NAME:=Django
-PKG_HASH:=7d29e14dfbc19cb6a95a4bd669edbde11f5d4c6a71fdaa42c2d40b6846e807f7
+PKG_HASH:=8c8659665bc6e3a44fefe1ab0a291e5a3fb3979f9a8230be29de975e57e8f854
PKG_MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>, Peter Stadler <peter.stadler@student.uibk.ac.at>
PKG_LICENSE:=BSD-3-Clause
include $(TOPDIR)/rules.mk
PKG_NAME:=numpy
-PKG_VERSION:=1.26.2
+PKG_VERSION:=1.26.3
PKG_RELEASE:=1
PYPI_NAME:=$(PKG_NAME)
-PKG_HASH:=f65738447676ab5777f11e6bbbdb8ce11b785e105f690bc45966574816b6d3ea
+PKG_HASH:=697df43e2b6310ecc9d95f05d5ef20eacc09c7c4ecc9da3f235d39e71b7da1e4
PKG_MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>
include $(TOPDIR)/rules.mk
PKG_NAME:=python-aiohttp
-PKG_VERSION:=3.8.5
+PKG_VERSION:=3.9.3
PKG_RELEASE:=1
PYPI_NAME:=aiohttp
-PKG_HASH:=b9552ec52cc147dbf1944ac7ac98af7602e51ea2dcd076ed194ca3c0d1c7d0bc
+PKG_HASH:=90842933e5d1ff760fae6caca4b2b3edba53ba8f4b71e95dacf2818a2aca06f7
PKG_MAINTAINER:=Josef Schlehofer <pepe.schlehofer@gmail.com>
PKG_LICENSE:=Apache-2.0
include $(TOPDIR)/rules.mk
PKG_NAME:=python-lxml
-PKG_VERSION:=4.9.3
+PKG_VERSION:=5.1.0
PKG_RELEASE:=1
PYPI_NAME:=lxml
-PKG_HASH:=48628bd53a426c9eb9bc066a923acaa0878d1e86129fd5359aee99285f4eed9c
+PKG_HASH:=3eea6ed6e6c918e468e693c41ef07f3c3acc310b70ddd9cc72d9ef84bc9564ca
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=LICENSES.txt
--- /dev/null
+#!/bin/sh
+
+[ "$1" = "python3-lxml" ] || exit 0
+
+EXP_VER="$2"
+
+python3 - << EOF
+import lxml
+import sys
+
+if (lxml.__version__) != "$EXP_VER":
+ print("Wrong version: " + lxml.__version__)
+ sys.exit(1)
+
+from lxml import etree
+
+root = etree.Element("root")
+root.append(etree.Element("child1"))
+root.append(etree.Element("child2"))
+root.append(etree.Element("child3"))
+
+exp_str = "b'<root><child1/><child2/><child3/></root>'"
+got_str = str(etree.tostring(root))
+if (got_str != exp_str):
+ print("Expected: '" + exp_str + "' . Got: '" + got_str + "'")
+else:
+ print("OK")
+
+sys.exit(0)
+EOF
+
PKG_NAME:=vala
PKG_VERSION:=0.56.14
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNOME/vala/$(basename $(PKG_VERSION))
+++ /dev/null
-This patch circumvents an apparent bug in pkgconf 1.9 that prevents
-building the OpenWrt Vala package. For a discussion of this, see:
-
-https://github.com/openwrt/packages/issues/21359
-
-The pkgconf bug seems similar to the one discussed here:
-
-https://github.com/pkgconf/pkgconf/issues/268
-
---- a/configure
-+++ b/configure
-@@ -13598,11 +13598,11 @@ if test -n "$GLIB_CFLAGS"; then
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_REQUIRED gobject-2.0 >= \$GLIB_REQUIRED\""; } >&5
-- ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_REQUIRED gobject-2.0 >= $GLIB_REQUIRED") 2>&5
-+ ($PKG_CONFIG --exists --print-errors "gobject-2.0 >= $GLIB_REQUIRED glib-2.0 >= $GLIB_REQUIRED") 2>&5
- ac_status=$?
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
-- pkg_cv_GLIB_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= $GLIB_REQUIRED gobject-2.0 >= $GLIB_REQUIRED" 2>/dev/null`
-+ pkg_cv_GLIB_CFLAGS=`$PKG_CONFIG --cflags "gobject-2.0 >= $GLIB_REQUIRED glib-2.0 >= $GLIB_REQUIRED" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
- else
- pkg_failed=yes
-@@ -13615,11 +13615,11 @@ if test -n "$GLIB_LIBS"; then
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_REQUIRED gobject-2.0 >= \$GLIB_REQUIRED\""; } >&5
-- ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_REQUIRED gobject-2.0 >= $GLIB_REQUIRED") 2>&5
-+ ($PKG_CONFIG --exists --print-errors "gobject-2.0 >= $GLIB_REQUIRED glib-2.0 >= $GLIB_REQUIRED") 2>&5
- ac_status=$?
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
-- pkg_cv_GLIB_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= $GLIB_REQUIRED gobject-2.0 >= $GLIB_REQUIRED" 2>/dev/null`
-+ pkg_cv_GLIB_LIBS=`$PKG_CONFIG --libs "gobject-2.0 >= $GLIB_REQUIRED glib-2.0 >= $GLIB_REQUIRED" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
- else
- pkg_failed=yes
-@@ -13640,9 +13640,9 @@ else
- _pkg_short_errors_supported=no
- fi
- if test $_pkg_short_errors_supported = yes; then
-- GLIB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "glib-2.0 >= $GLIB_REQUIRED gobject-2.0 >= $GLIB_REQUIRED" 2>&1`
-+ GLIB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gobject-2.0 >= $GLIB_REQUIRED glib-2.0 >= $GLIB_REQUIRED" 2>&1`
- else
-- GLIB_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "glib-2.0 >= $GLIB_REQUIRED gobject-2.0 >= $GLIB_REQUIRED" 2>&1`
-+ GLIB_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gobject-2.0 >= $GLIB_REQUIRED glib-2.0 >= $GLIB_REQUIRED" 2>&1`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$GLIB_PKG_ERRORS" >&5
---- a/gobject-introspection/Makefile.in
-+++ b/gobject-introspection/Makefile.in
-@@ -383,8 +383,8 @@ libgidl_la_SOURCES = \
- $(NULL)
-
- libgidl_la_LIBADD = \
-- $(GLIB_LIBS) \
- $(GMODULE_LIBS) \
-+ $(GLIB_LIBS) \
- $(NULL)
-
- BUILT_SOURCES = scannerparser.h
-@@ -400,8 +400,8 @@ gen_introspect_SOURCES = \
- $(NULL)
-
- gen_introspect_LDADD = \
-- $(GLIB_LIBS) \
- $(GMODULE_LIBS) \
-+ $(GLIB_LIBS) \
- libgidl.la \
- $(NULL)
-
include $(TOPDIR)/rules.mk
PKG_NAME:=alsa-lib
-PKG_VERSION:=1.2.9
+PKG_VERSION:=1.2.11
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://www.alsa-project.org/files/pub/lib/ \
https://distfiles.gentoo.org/distfiles/
-PKG_HASH:=dc9c643fdc4ccfd0572cc685858dd41e08afb583f30460b317e4188275f615b2
+PKG_HASH:=9f3f2f69b995f9ad37359072fbc69a3a88bfba081fc83e9be30e14662795bb4d
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>, \
Peter Wagner <tripolar@gmx.at>
SECTION:=libs
CATEGORY:=Libraries
TITLE:=ALSA (Advanced Linux Sound Architecture) library
- URL:=http://www.alsa-project.org/
+ URL:=https://www.alsa-project.org/
DEPENDS:=@AUDIO_SUPPORT +kmod-sound-core +libpthread +librt
LICENSE:=LGPL-2.1-or-later
LICENSE_FILES:=COPYING
SECTION:=sound
CATEGORY:=Sound
TITLE:=ALSA (Advanced Linux Sound Architecture) server
- URL:=http://www.alsa-project.org/
+ URL:=https://www.alsa-project.org/
DEPENDS:=+alsa-lib
LICENSE:=GPL-2.0-or-later
LICENSE_FILES:=aserver/COPYING
--- a/src/Makefile.in
+++ b/src/Makefile.in
-@@ -491,7 +491,7 @@ clean-libLTLIBRARIES:
+@@ -497,7 +497,7 @@ clean-libLTLIBRARIES:
}
libasound.la: $(libasound_la_OBJECTS) $(libasound_la_DEPENDENCIES) $(EXTRA_libasound_la_DEPENDENCIES)
--- a/src/pcm/pcm_shm.c
+++ b/src/pcm/pcm_shm.c
-@@ -45,6 +45,14 @@
+@@ -46,6 +46,14 @@
#include <netdb.h>
#include "aserver.h"
include $(TOPDIR)/rules.mk
PKG_NAME:=alsa-ucm-conf
-PKG_VERSION:=1.2.9
+PKG_VERSION:=1.2.11
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://www.alsa-project.org/files/pub/lib/ \
https://distfiles.gentoo.org/distfiles/
-PKG_HASH:=374f6833bfd77d0a4675e4aa2bfb79defe850e5a46a5d4542a45962f4b9e272a
+PKG_HASH:=387c01cf30e2a1676d7b8f72b2681cf219abca70dd1ec2a9e33add5bf3feae81
PKG_MAINTAINER:=
PKG_LICENSE:=BSD-3-Clause
include $(TOPDIR)/rules.mk
PKG_NAME:=apr-util
-PKG_VERSION:=1.6.1
-PKG_RELEASE:=7
+PKG_VERSION:=1.6.3
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=@APACHE/apr/
-PKG_HASH:=d3e12f7b6ad12687572a3a39475545a072608f4ba03a6ce8a3778f607dd0035b
+PKG_HASH:=a41076e3710746326c3945042994ad9a4fcac0ce0277dd8fea076fec3c9772b5
PKG_MAINTAINER:=Thomas Heil <heil@terminal-consulting.de>
PKG_LICENSE:=Apache-2.0
TITLE:=Apache Portable Runtime Utility Library
endef
+## Prevent apu-iconv.m4 to append "/lib" to LDFLAGS if ICONV_PREFIX is empty
+ifeq ($(ICONV_PREFIX),)
+ICONV_PREFIX=no
+endif
+
CONFIGURE_ARGS += \
--with-apr="$(STAGING_DIR)/usr/bin/apr-1-config" \
--with-expat="$(STAGING_DIR)/usr" \
+++ /dev/null
-# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=889170
-# needs to be submitted upstream
---- a/dbm/apr_dbm_gdbm.c
-+++ b/dbm/apr_dbm_gdbm.c
-@@ -36,13 +36,22 @@
- static apr_status_t g2s(int gerr)
- {
- if (gerr == -1) {
-- /* ### need to fix this */
-- return APR_EGENERAL;
-+ return APR_OS_START_USEERR + gdbm_errno;
- }
-
- return APR_SUCCESS;
- }
-
-+static apr_status_t gdat2s(datum d)
-+{
-+ if (d.dptr == NULL) {
-+ return APR_OS_START_USEERR + gdbm_errno;
-+ }
-+
-+ return APR_SUCCESS;
-+}
-+
-+
- static apr_status_t datum_cleanup(void *dptr)
- {
- if (dptr)
-@@ -55,19 +64,15 @@ static apr_status_t set_error(apr_dbm_t
- {
- apr_status_t rv = APR_SUCCESS;
-
-- /* ### ignore whatever the DBM said (dbm_said); ask it explicitly */
--
-- if ((dbm->errcode = gdbm_errno) == GDBM_NO_ERROR) {
-+ if (dbm_said == APR_SUCCESS) {
-+ dbm->errcode = GDBM_NO_ERROR;
- dbm->errmsg = NULL;
- }
- else {
-+ dbm->errcode = dbm_said;
- dbm->errmsg = gdbm_strerror(gdbm_errno);
-- rv = APR_EGENERAL; /* ### need something better */
- }
-
-- /* captured it. clear it now. */
-- gdbm_errno = GDBM_NO_ERROR;
--
- return rv;
- }
-
-@@ -144,7 +149,7 @@ static apr_status_t vt_gdbm_fetch(apr_db
-
- /* store the error info into DBM, and return a status code. Also, note
- that *pvalue should have been cleared on error. */
-- return set_error(dbm, APR_SUCCESS);
-+ return set_error(dbm, gdat2s(rd));
- }
-
- static apr_status_t vt_gdbm_store(apr_dbm_t *dbm, apr_datum_t key,
-@@ -203,7 +208,7 @@ static apr_status_t vt_gdbm_firstkey(apr
- apr_pool_cleanup_null);
-
- /* store any error info into DBM, and return a status code. */
-- return set_error(dbm, APR_SUCCESS);
-+ return set_error(dbm, gdat2s(rd));
- }
-
- static apr_status_t vt_gdbm_nextkey(apr_dbm_t *dbm, apr_datum_t *pkey)
-@@ -223,7 +228,7 @@ static apr_status_t vt_gdbm_nextkey(apr_
- apr_pool_cleanup_null);
-
- /* store any error info into DBM, and return a status code. */
-- return set_error(dbm, APR_SUCCESS);
-+ return set_error(dbm, gdat2s(rd));
- }
-
- static void vt_gdbm_freedatum(apr_dbm_t *dbm, apr_datum_t data)
+++ /dev/null
-# patch by Kris Karas fom
-# https://bz.apache.org/bugzilla/attachment.cgi?id=35326&action=diff
---- a/build/dbd.m4
-+++ b/build/dbd.m4
-@@ -163,10 +163,15 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
- old_cppflags="$CPPFLAGS"
- old_ldflags="$LDFLAGS"
-
-+ my_library="mysqlclient"
-+
- AC_ARG_WITH([mysql], APR_HELP_STRING([--with-mysql=DIR], [enable MySQL DBD driver]),
- [
- if test "$withval" = "yes"; then
- AC_PATH_PROG([MYSQL_CONFIG],[mysql_config])
-+ if test "x$MYSQL_CONFIG" = "x"; then
-+ AC_PATH_PROG([MYSQL_CONFIG],[mariadb_config])
-+ fi
- if test "x$MYSQL_CONFIG" != 'x'; then
- mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
- mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
-@@ -174,32 +179,40 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
-
- APR_ADDTO(CPPFLAGS, [$mysql_CPPFLAGS])
- APR_ADDTO(LIBS, [$mysql_LIBS])
-+
-+ if $MYSQL_CONFIG --libs_r | grep -q mariadb; then
-+ my_library="mariadb"
-+ fi
- fi
-
-- AC_CHECK_HEADERS([mysql.h my_global.h my_sys.h],
-- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
-- [apu_have_mysql=0; break],
-- [#include <my_global.h>])
-- if test "$apu_have_mysql" = "0"; then
-- AC_CHECK_HEADERS([mysql/mysql.h mysql/my_global.h mysql/my_sys.h],
-- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
-- [apu_have_mysql=0; break],
-- [#include <mysql/my_global.h>])
-+ AC_CHECK_HEADERS([mysql.h errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
-+ if test "$apr_have_mysql" = "0"; then
-+ AC_CHECK_HEADERS([mysql/mysql.h mysql/errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
- fi
-- if test "$apu_have_mysql" != "0" && test "x$MYSQL_CONFIG" != 'x'; then
-- APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
-+ if test "$apr_have_mysql" = "1"; then
-+ AC_CHECK_HEADERS([my_global.h my_sys.h mysql/my_global.h mysql/my_sys.h])
-+ AC_CHECK_LIB($my_library, mysql_init,, [apu_have_mysql=0])
-+ fi
-+ if test "$apu_have_mysql" = "1" && test "x$MYSQL_CONFIG" != 'x'; then
-+ APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
- fi
- elif test "$withval" = "no"; then
- :
- else
- AC_PATH_PROG([MYSQL_CONFIG],[mysql_config],,[$withval/bin])
-+ if test "x$MYSQL_CONFIG" = "x"; then
-+ AC_PATH_PROG([MYSQL_CONFIG],[mariadb_config],,[$withval/bin])
-+ fi
- if test "x$MYSQL_CONFIG" != 'x'; then
-- mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
-- mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
-- mysql_LIBS="`$MYSQL_CONFIG --libs_r`"
-+ mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
-+ mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
-+ mysql_LIBS="`$MYSQL_CONFIG --libs_r`"
-+ if $MYSQL_CONFIG --libs_r | grep -q mariadb; then
-+ my_library="mariadb"
-+ fi
- else
-- mysql_CPPFLAGS="-I$withval/include"
-- mysql_LDFLAGS="-L$withval/lib "
-+ mysql_CPPFLAGS="-I$withval/include"
-+ mysql_LDFLAGS="-L$withval/lib "
- fi
-
- APR_ADDTO(CPPFLAGS, [$mysql_CPPFLAGS])
-@@ -207,18 +220,15 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
- APR_ADDTO(LIBS, [$mysql_LIBS])
-
- AC_MSG_NOTICE(checking for mysql in $withval)
-- AC_CHECK_HEADERS([mysql.h my_global.h my_sys.h],
-- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
-- [apu_have_mysql=0; break],
-- [#include <my_global.h>])
--
-- if test "$apu_have_mysql" != "1"; then
-- AC_CHECK_HEADERS([mysql/mysql.h mysql/my_global.h mysql/my_sys.h],
-- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
-- [apu_have_mysql=0; break],
-- [#include <mysql/my_global.h>])
-+ AC_CHECK_HEADERS([mysql.h errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
-+ if test "$apr_have_mysql" = "0"; then
-+ AC_CHECK_HEADERS([mysql/mysql.h mysql/errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
-+ fi
-+ if test "$apr_have_mysql" = "1"; then
-+ AC_CHECK_HEADERS([my_global.h my_sys.h mysql/my_global.h mysql/my_sys.h])
-+ AC_CHECK_LIB($my_library, mysql_init,, [apu_have_mysql=0])
- fi
-- if test "$apu_have_mysql" != "0"; then
-+ if test "$apu_have_mysql" = "1"; then
- APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
- fi
- fi
-@@ -229,7 +239,7 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
- dnl Since we have already done the AC_CHECK_LIB tests, if we have it,
- dnl we know the library is there.
- if test "$apu_have_mysql" = "1"; then
-- APR_ADDTO(LDADD_dbd_mysql, [$mysql_LDFLAGS -lmysqlclient $mysql_LIBS])
-+ APR_ADDTO(LDADD_dbd_mysql, [$mysql_LDFLAGS -l$my_library $mysql_LIBS])
- fi
- AC_SUBST(LDADD_dbd_mysql)
-
---- a/dbd/apr_dbd_mysql.c
-+++ b/dbd/apr_dbd_mysql.c
-@@ -1262,7 +1262,9 @@ static apr_status_t thread_end(void *dat
-
- static void dbd_mysql_init(apr_pool_t *pool)
- {
-+#if MYSQL_VERSION_ID < 100000
- my_init();
-+#endif
- mysql_thread_init();
-
- /* FIXME: this is a guess; find out what it really does */
include $(TOPDIR)/rules.mk
PKG_NAME:=apr
-PKG_VERSION:=1.7.0
-PKG_RELEASE:=4
+PKG_VERSION:=1.7.4
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=@APACHE/apr/
-PKG_HASH:=e2e148f0b2e99b8e5c6caa09f6d4fb4dd3e83f744aa72a952f94f5a14436f7ea
+PKG_HASH:=fc648de983f3a2a6c9e78dea1f180639bd2fad6c06d556d4367a701fe5c35577
PKG_MAINTAINER:=Thomas Heil <heil@terminal-consulting.de>
$(CP) $(PKG_INSTALL_DIR)/usr/share/build-1/* $(1)/usr/share/build-1
$(SED) '/^prefix=\|^exec_prefix=/s|/usr|$(STAGING_DIR)/usr|' \
$(1)/usr/bin/apr-1-config
- $(SED) '/^bindir=/s|/usr|$$$${prefix}|' $(1)/usr/bin/apr-1-config
+ $(SED) '/^bindir=/s|/usr/bin|$(STAGING_DIR)|' $(1)/usr/bin/apr-1-config
$(SED) '/^datadir=/s|/usr|$$$${prefix}|' $(1)/usr/bin/apr-1-config
$(SED) '/^datarootdir=/s|/usr|$$$${prefix}|' $(1)/usr/bin/apr-1-config
$(SED) 's,/usr/share/build-1,$(STAGING_DIR)/usr/share/build-1,g' \
+++ /dev/null
-From 374210c50ee9f4dbf265f0172dcf2d45b97d0550
-From: Graham Leggett <minfrin@apache.org>
-Date: Thu, 26 Dec 2019 01:18:53 +0000
-Subject: [PATCH] Use AC_CHECK_SIZEOF, so as to support cross compiling. PR
- 56053.
-
-git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1871980 13f79535-47bb-0310-9956-ffa450edef68
----
- build/apr_common.m4 | 37 -------------------------------------
- configure.in | 14 +++++++-------
- 2 files changed, 7 insertions(+), 44 deletions(-)
-
---- a/build/apr_common.m4
-+++ b/build/apr_common.m4
-@@ -452,43 +452,6 @@ fi
-
-
- dnl
--dnl APR_CHECK_SIZEOF_EXTENDED(INCLUDES, TYPE [, CROSS_SIZE])
--dnl
--dnl A variant of AC_CHECK_SIZEOF which allows the checking of
--dnl sizes of non-builtin types
--dnl
--AC_DEFUN([APR_CHECK_SIZEOF_EXTENDED],
--[changequote(<<, >>)dnl
--dnl The name to #define.
--define(<<AC_TYPE_NAME>>, translit(sizeof_$2, [a-z *], [A-Z_P]))dnl
--dnl The cache variable name.
--define(<<AC_CV_NAME>>, translit(ac_cv_sizeof_$2, [ *], [_p]))dnl
--changequote([, ])dnl
--AC_MSG_CHECKING(size of $2)
--AC_CACHE_VAL(AC_CV_NAME,
--[AC_TRY_RUN([#include <stdio.h>
--$1
--#ifdef WIN32
--#define binmode "b"
--#else
--#define binmode
--#endif
--main()
--{
-- FILE *f=fopen("conftestval", "w" binmode);
-- if (!f) exit(1);
-- fprintf(f, "%d\n", sizeof($2));
-- exit(0);
--}], AC_CV_NAME=`cat conftestval`, AC_CV_NAME=0, ifelse([$3],,,
--AC_CV_NAME=$3))])dnl
--AC_MSG_RESULT($AC_CV_NAME)
--AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME, [The size of ]$2)
--undefine([AC_TYPE_NAME])dnl
--undefine([AC_CV_NAME])dnl
--])
--
--
--dnl
- dnl APR_TRY_COMPILE_NO_WARNING(INCLUDES, FUNCTION-BODY,
- dnl [ACTIONS-IF-NO-WARNINGS], [ACTIONS-IF-WARNINGS])
- dnl
---- a/configure.in
-+++ b/configure.in
-@@ -1798,7 +1798,7 @@ else
- socklen_t_value="int"
- fi
-
--APR_CHECK_SIZEOF_EXTENDED([#include <sys/types.h>], pid_t, 8)
-+AC_CHECK_SIZEOF(pid_t)
-
- if test "$ac_cv_sizeof_pid_t" = "$ac_cv_sizeof_short"; then
- pid_t_fmt='#define APR_PID_T_FMT "hd"'
-@@ -1870,7 +1870,7 @@ APR_CHECK_TYPES_FMT_COMPATIBLE(size_t, u
- APR_CHECK_TYPES_FMT_COMPATIBLE(size_t, unsigned int, u, [size_t_fmt="u"])
- ])
-
--APR_CHECK_SIZEOF_EXTENDED([#include <sys/types.h>], ssize_t, 8)
-+AC_CHECK_SIZEOF(ssize_t)
-
- dnl the else cases below should no longer occur;
- AC_MSG_CHECKING([which format to use for apr_ssize_t])
-@@ -1888,7 +1888,7 @@ fi
-
- ssize_t_fmt="#define APR_SSIZE_T_FMT \"$ssize_t_fmt\""
-
--APR_CHECK_SIZEOF_EXTENDED([#include <stddef.h>], size_t, 8)
-+AC_CHECK_SIZEOF(size_t)
-
- # else cases below should no longer occur;
- AC_MSG_CHECKING([which format to use for apr_size_t])
-@@ -1906,7 +1906,7 @@ fi
-
- size_t_fmt="#define APR_SIZE_T_FMT \"$size_t_fmt\""
-
--APR_CHECK_SIZEOF_EXTENDED([#include <sys/types.h>], off_t, 8)
-+AC_CHECK_SIZEOF(off_t)
-
- if test "${ac_cv_sizeof_off_t}${apr_cv_use_lfs64}" = "4yes"; then
- # Enable LFS
-@@ -2000,7 +2000,7 @@ case $host in
- ;;
- *)
- ino_t_value=ino_t
-- APR_CHECK_SIZEOF_EXTENDED(AC_INCLUDES_DEFAULT, ino_t, $ac_cv_sizeof_long)
-+ AC_CHECK_SIZEOF(ino_t)
- if test $ac_cv_sizeof_ino_t = 4; then
- if test $ac_cv_sizeof_long = 4; then
- ino_t_value="unsigned long"
-@@ -2020,8 +2020,8 @@ else
- bigendian=0
- fi
-
--APR_CHECK_SIZEOF_EXTENDED([#include <sys/types.h>
--#include <sys/uio.h>],struct iovec,0)
-+AC_CHECK_SIZEOF(struct iovec,,[AC_INCLUDES_DEFAULT
-+#include <sys/uio.h>])
- if test "$ac_cv_sizeof_struct_iovec" = "0"; then
- have_iovec=0
- else
+++ /dev/null
-From 5fd2568c34a8d5c8159d9a5e0f5601f9e8902166
-From: Graham Leggett <minfrin@apache.org>
-Date: Tue, 10 Mar 2020 22:38:59 +0000
-Subject: [PATCH] APR's configure script uses AC_TRY_RUN to detect whether the
- return type of strerror_r is int. When cross-compiling this defaults to no.
-
-This commit adds an AC_CACHE_CHECK so users who cross-compile APR may
-influence the outcome with a configure variable.
-
-
-git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1875065 13f79535-47bb-0310-9956-ffa450edef68
----
- CHANGES | 7 +++++++ (OPENWRT REMOVED)
- build/apr_common.m4 | 11 ++++-------
- 2 files changed, 11 insertions(+), 7 deletions(-)
-
---- a/build/apr_common.m4
-+++ b/build/apr_common.m4
-@@ -489,8 +489,9 @@ dnl string.
- dnl
- dnl
- AC_DEFUN([APR_CHECK_STRERROR_R_RC], [
--AC_MSG_CHECKING(for type of return code from strerror_r)
--AC_TRY_RUN([
-+AC_CACHE_CHECK([whether return code from strerror_r has type int],
-+[ac_cv_strerror_r_rc_int],
-+[AC_TRY_RUN([
- #include <errno.h>
- #include <string.h>
- #include <stdio.h>
-@@ -506,14 +507,10 @@ main()
- }], [
- ac_cv_strerror_r_rc_int=yes ], [
- ac_cv_strerror_r_rc_int=no ], [
-- ac_cv_strerror_r_rc_int=no ] )
-+ ac_cv_strerror_r_rc_int=no ] ) ] )
- if test "x$ac_cv_strerror_r_rc_int" = xyes; then
- AC_DEFINE(STRERROR_R_RC_INT, 1, [Define if strerror returns int])
-- msg="int"
--else
-- msg="pointer"
- fi
--AC_MSG_RESULT([$msg])
- ] )
-
- dnl
+++ /dev/null
-From 9d9c6990afaa7ad8eea0be524481bb48a5dd1b09
-From: Jim Jagielski <jim@apache.org>
-Date: Thu, 29 Oct 2020 20:16:55 +0000
-Subject: [PATCH] calls to exit() require stdlib.h or else we get
- -Werror,-Wimplicit-function-declaration
-
-git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1882979 13f79535-47bb-0310-9956-ffa450edef68
----
- build/apr_common.m4 | 3 +++
- build/apr_network.m4 | 15 +++++++++++++++
- configure.in | 6 +++++-
- 3 files changed, 23 insertions(+), 1 deletion(-)
-
---- a/build/apr_common.m4
-+++ b/build/apr_common.m4
-@@ -495,6 +495,9 @@ AC_CACHE_CHECK([whether return code from
- #include <errno.h>
- #include <string.h>
- #include <stdio.h>
-+#ifdef HAVE_STDLIB_H
-+#include <stdlib.h>
-+#endif
- main()
- {
- char buf[1024];
---- a/build/apr_network.m4
-+++ b/build/apr_network.m4
-@@ -63,6 +63,9 @@ AC_DEFUN([APR_CHECK_WORKING_GETADDRINFO]
- #ifdef HAVE_SYS_SOCKET_H
- #include <sys/socket.h>
- #endif
-+#ifdef HAVE_STDLIB_H
-+#include <stdlib.h>
-+#endif
-
- int main(void) {
- struct addrinfo hints, *ai;
-@@ -151,6 +154,9 @@ AC_DEFUN([APR_CHECK_WORKING_GETNAMEINFO]
- #ifdef HAVE_NETINET_IN_H
- #include <netinet/in.h>
- #endif
-+#ifdef HAVE_STDLIB_H
-+#include <stdlib.h>
-+#endif
-
- int main(void) {
- struct sockaddr_in sa;
-@@ -194,6 +200,9 @@ AC_DEFUN([APR_CHECK_NEGATIVE_EAI], [
- #ifdef HAVE_NETDB_H
- #include <netdb.h>
- #endif
-+#ifdef HAVE_STDLIB_H
-+#include <stdlib.h>
-+#endif
-
- int main(void) {
- if (EAI_ADDRFAMILY < 0) {
-@@ -403,6 +412,9 @@ AC_DEFUN([APR_CHECK_TCP_NODELAY_INHERITE
- #ifndef HAVE_SOCKLEN_T
- typedef int socklen_t;
- #endif
-+#ifdef HAVE_STDLIB_H
-+#include <stdlib.h>
-+#endif
- int main(void) {
- int listen_s, connected_s, client_s;
- int listen_port, rc;
-@@ -588,6 +600,9 @@ typedef int socklen_t;
- #ifdef HAVE_FCNTL_H
- #include <fcntl.h>
- #endif
-+#ifdef HAVE_STDLIB_H
-+#include <stdlib.h>
-+#endif
- int main(void) {
- int listen_s, connected_s, client_s;
- int listen_port, rc;
---- a/configure.in
-+++ b/configure.in
-@@ -2208,6 +2208,7 @@ AC_TRY_RUN([
- #include <sys/types.h>
- #include <sys/time.h>
- #include <sys/resource.h>
-+#include <stdlib.h>
- main()
- {
- struct rlimit limit;
-@@ -2307,6 +2308,7 @@ if test "$threads" = "1"; then
- AC_TRY_RUN([
- #include <sys/types.h>
- #include <pthread.h>
-+#include <stdlib.h>
- int main()
- {
- pthread_mutex_t mutex;
-@@ -2430,7 +2432,9 @@ AC_TRY_RUN([
- #endif
- #include <fcntl.h>
- #include <errno.h>
--
-+#ifdef HAVE_STDLIB_H
-+#include <stdlib.h>
-+#endif
- int fd;
- struct flock proc_mutex_lock_it = {0};
- const char *fname = "conftest.fcntl";
+++ /dev/null
-From 0a763c5e500f4304b7c534fae0fad430d64982e8
-From: Yann Ylavic <ylavic@apache.org>
-Date: Sat, 6 Mar 2021 22:20:59 +0000
-Subject: [PATCH] build/apr_common.m4: avoid explicit inclusion of "confdefs.h"
-
-The failure is observed on `autoconf-2.69d` (soon to be released
-as `autoconf-2.70`). There `int64_t` detection fails as:
-
-$ autoreconf && ./configure
-checking whether int64_t and int use fmt %d... no
-checking whether int64_t and long use fmt %ld... no
-checking whether int64_t and long long use fmt %lld... no
-configure: error: could not determine the string function for int64_t
-```
-
-This happens because `./configure` always stumbles on warning:
-
-configure:3350: gcc -c -g -O2 -Werror conftest.c >&5
-In file included from conftest.c:31:
-confdefs.h:22: error: "__STDC_WANT_IEC_60559_ATTRIBS_EXT__" redefined [-Werror]
- 22 | #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
- |
-
-It's triggered by double inclusion of `"confdefs.h"` contents:
-explicitly in `APR_TRY_COMPILE_NO_WARNING` macro and implicitly
-via `AC_LANG_SOURCE` use.
-
-To fix it and avoid having to define `main()` declaration the change
-uses `AC_LANG_PROGRAM` instead.
-
-Tested on both `autoconf-2.69` and `autoconf-2.69d`.
-
-
-Github: closes #25
-Submitted by: Sergei Trofimovich <slyfox gentoo.org>
-Reviewed by: ylavic
-
-
-git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1887279 13f79535-47bb-0310-9956-ffa450edef68
----
- build/apr_common.m4 | 8 ++------
- 1 file changed, 2 insertions(+), 6 deletions(-)
-
---- a/build/apr_common.m4
-+++ b/build/apr_common.m4
-@@ -467,13 +467,9 @@ AC_DEFUN([APR_TRY_COMPILE_NO_WARNING],
- CFLAGS="$CFLAGS -Werror"
- fi
- AC_COMPILE_IFELSE(
-- [AC_LANG_SOURCE(
-- [#include "confdefs.h"
-- ]
-- [[$1]]
-- [int main(int argc, const char *const *argv) {]
-+ [AC_LANG_PROGRAM(
-+ [[$1]],
- [[$2]]
-- [ return 0; }]
- )], [CFLAGS=$apr_save_CFLAGS
- $3], [CFLAGS=$apr_save_CFLAGS
- $4])
+++ /dev/null
-From ea9344182b7559b12aa523548bb6d37d0e009028
-From: Yann Ylavic <ylavic@apache.org>
-Date: Wed, 24 Mar 2021 15:02:52 +0000
-Subject: [PATCH] Follow up to r1887279: fix new APR_TRY_COMPILE_NO_WARNING.
-
-AC_LANG_PROGRAM generates an "int main()" prototype which some compilers warn
-about. Restore AC_LANG_SOURCE to manually set the correct main() but do not
-#include "confdefs.h" if it is inlined already by AC_LANG_SOURCE (i.e.
-check whether PACKAGE_NAME is already defined).
-
-Github: closes #25
-
-
-git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1888017 13f79535-47bb-0310-9956-ffa450edef68
----
- build/apr_common.m4 | 11 +++++++++--
- 1 file changed, 9 insertions(+), 2 deletions(-)
-
---- a/build/apr_common.m4
-+++ b/build/apr_common.m4
-@@ -467,9 +467,16 @@ AC_DEFUN([APR_TRY_COMPILE_NO_WARNING],
- CFLAGS="$CFLAGS -Werror"
- fi
- AC_COMPILE_IFELSE(
-- [AC_LANG_PROGRAM(
-- [[$1]],
-+ [AC_LANG_SOURCE(
-+ [
-+#ifndef PACKAGE_NAME
-+#include "confdefs.h"
-+#endif
-+ ]
-+ [[$1]]
-+ [int main(int argc, const char *const *argv) {]
- [[$2]]
-+ [ return 0; }]
- )], [CFLAGS=$apr_save_CFLAGS
- $3], [CFLAGS=$apr_save_CFLAGS
- $4])
+++ /dev/null
-Fix cross-compilation
-
-Patch was backported from Apache httpd:
-http://svn.apache.org/viewvc?view=revision&revision=1327907
-http://svn.apache.org/viewvc?view=revision&revision=1328390
-http://svn.apache.org/viewvc?view=revision&revision=1328714
-
-Patch submitted upstream:
-https://issues.apache.org/bugzilla/show_bug.cgi?id=57058
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
---- a/configure.in
-+++ b/configure.in
-@@ -118,6 +118,16 @@ AC_CANONICAL_SYSTEM
- echo "Configuring APR library"
- echo "Platform: $host"
-
-+dnl In case of cross compilation we set CC_FOR_BUILD to cc unless
-+dnl we got already CC_FOR_BUILD from environment.
-+if test "x${build_alias}" != "x${host_alias}"; then
-+ if test "x${CC_FOR_BUILD}" = "x"; then
-+ CC_FOR_BUILD=cc
-+ fi
-+fi
-+AC_SUBST(CC_FOR_BUILD)
-+AC_SUBST(CFLAGS_FOR_BUILD)
-+
- dnl Some initial steps for configuration. We setup the default directory
- dnl and which files are to be configured.
-
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -8,6 +8,8 @@ top_blddir=@apr_builddir@
- # APR (Apache Portable Runtime) library Makefile.
- #
- CPP = @CPP@
-+CC_FOR_BUILD = @CC_FOR_BUILD@
-+CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
-
- # get substituted into some targets
- APR_MAJOR_VERSION=@APR_MAJOR_VERSION@
-@@ -136,8 +138,13 @@ tools/gen_test_char.lo: tools/gen_test_c
- $(APR_MKDIR) tools
- $(LT_COMPILE)
-
-+ifdef CC_FOR_BUILD
-+tools/gen_test_char@EXEEXT@: tools/gen_test_char.c $(LOCAL_LIBS)
-+ $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) -DCROSS_COMPILE -o $@ $<
-+else
- tools/gen_test_char@EXEEXT@: $(OBJECTS_gen_test_char)
- $(LINK_PROG) $(OBJECTS_gen_test_char) $(ALL_LIBS)
-+endif
-
- include/private/apr_escape_test_char.h: tools/gen_test_char@EXEEXT@
- $(APR_MKDIR) include/private
+++ /dev/null
-Fix PATH_MAX detection by including sys/param.h if available
-
-Patch sent upstream:
-https://bz.apache.org/bugzilla/show_bug.cgi?id=63782
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
---- a/configure.in
-+++ b/configure.in
-@@ -1596,6 +1596,7 @@ AC_SUBST(stdlibh)
- AC_SUBST(stringh)
- AC_SUBST(stringsh)
- AC_SUBST(sys_ioctlh)
-+AC_SUBST(sys_paramh)
- AC_SUBST(sys_sendfileh)
- AC_SUBST(sys_signalh)
- AC_SUBST(sys_socketh)
---- a/include/apr.h.in
-+++ b/include/apr.h.in
-@@ -95,6 +95,7 @@
- #define APR_HAVE_STRINGS_H @stringsh@
- #define APR_HAVE_INTTYPES_H @inttypesh@
- #define APR_HAVE_SYS_IOCTL_H @sys_ioctlh@
-+#define APR_HAVE_SYS_PARAM_H @sys_paramh@
- #define APR_HAVE_SYS_SENDFILE_H @sys_sendfileh@
- #define APR_HAVE_SYS_SIGNAL_H @sys_signalh@
- #define APR_HAVE_SYS_SOCKET_H @sys_socketh@
-@@ -218,6 +219,9 @@
- #ifdef __cplusplus
- extern "C" {
- #endif
-+#if APR_HAVE_SYS_PARAM_H
-+#include <sys/param.h>
-+#endif
-
- /**
- * @addtogroup apr_platform
+++ /dev/null
---- a/configure.in
-+++ b/configure.in
-@@ -1191,8 +1191,9 @@ AC_CHECK_FILE(/dev/zero)
- # Not all systems can mmap /dev/zero (such as HP-UX). Check for that.
- if test "$ac_cv_func_mmap" = "yes" &&
- test "$ac_cv_file__dev_zero" = "yes"; then
-- AC_MSG_CHECKING(for mmap that can map /dev/zero)
-- AC_TRY_RUN([
-+ AC_CACHE_CHECK([for mmap that can map /dev/zero],
-+ [ac_cv_mmap__dev_zero],
-+ [AC_TRY_RUN([
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <fcntl.h>
-@@ -1215,9 +1216,7 @@ if test "$ac_cv_func_mmap" = "yes" &&
- return 3;
- }
- return 0;
-- }], [], [ac_cv_file__dev_zero=no], [ac_cv_file__dev_zero=no])
--
-- AC_MSG_RESULT($ac_cv_file__dev_zero)
-+ }], [], [ac_cv_file__dev_zero=no], [ac_cv_file__dev_zero=no])])
- fi
-
- # Now we determine which one is our anonymous shmem preference.
+++ /dev/null
-
-SECURITY: CVE-2021-35940 (cve.mitre.org)
-
-Restore fix for CVE-2017-12613 which was missing in 1.7.x branch, though
-was addressed in 1.6.x in 1.6.3 and later via r1807976.
-
-The fix was merged back to 1.7.x in r1891198.
-
-Since this was a regression in 1.7.0, a new CVE name has been assigned
-to track this, CVE-2021-35940.
-
-Thanks to Iveta Cesalova <icesalov redhat.com> for reporting this issue.
-
-https://svn.apache.org/viewvc?view=revision&revision=1891198
-
---- a/time/unix/time.c
-+++ b/time/unix/time.c
-@@ -142,6 +142,9 @@ APR_DECLARE(apr_status_t) apr_time_exp_g
- static const int dayoffset[12] =
- {306, 337, 0, 31, 61, 92, 122, 153, 184, 214, 245, 275};
-
-+ if (xt->tm_mon < 0 || xt->tm_mon >= 12)
-+ return APR_EBADDATE;
-+
- /* shift new year to 1st March in order to make leap year calc easy */
-
- if (xt->tm_mon < 2)
---- a/time/win32/time.c
-+++ b/time/win32/time.c
-@@ -54,6 +54,9 @@ static void SystemTimeToAprExpTime(apr_t
- static const int dayoffset[12] =
- {0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334};
-
-+ if (tm->wMonth < 1 || tm->wMonth > 12)
-+ return APR_EBADDATE;
-+
- /* Note; the caller is responsible for filling in detailed tm_usec,
- * tm_gmtoff and tm_isdst data when applicable.
- */
-@@ -228,6 +231,9 @@ APR_DECLARE(apr_status_t) apr_time_exp_g
- static const int dayoffset[12] =
- {306, 337, 0, 31, 61, 92, 122, 153, 184, 214, 245, 275};
-
-+ if (xt->tm_mon < 0 || xt->tm_mon >= 12)
-+ return APR_EBADDATE;
-+
- /* shift new year to 1st March in order to make leap year calc easy */
-
- if (xt->tm_mon < 2)
PKG_NAME:=avahi
PKG_VERSION:=0.8
-PKG_RELEASE:=8
+PKG_RELEASE:=9
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/lathiat/avahi/releases/download/v$(PKG_VERSION) \
--- /dev/null
+From a337a1ba7d15853fb56deef1f464529af6e3a1cf Mon Sep 17 00:00:00 2001
+From: Evgeny Vereshchagin <evvers@ya.ru>
+Date: Mon, 23 Oct 2023 20:29:31 +0000
+Subject: [PATCH] core: reject overly long TXT resource records
+
+Closes https://github.com/lathiat/avahi/issues/455
+
+CVE-2023-38469
+---
+ avahi-core/rr.c | 9 ++++++++-
+ 1 file changed, 8 insertions(+), 1 deletion(-)
+
+--- a/avahi-core/rr.c
++++ b/avahi-core/rr.c
+@@ -32,6 +32,7 @@
+ #include <avahi-common/malloc.h>
+ #include <avahi-common/defs.h>
+
++#include "dns.h"
+ #include "rr.h"
+ #include "log.h"
+ #include "util.h"
+@@ -688,11 +689,17 @@ int avahi_record_is_valid(AvahiRecord *r
+ case AVAHI_DNS_TYPE_TXT: {
+
+ AvahiStringList *strlst;
++ size_t used = 0;
+
+- for (strlst = r->data.txt.string_list; strlst; strlst = strlst->next)
++ for (strlst = r->data.txt.string_list; strlst; strlst = strlst->next) {
+ if (strlst->size > 255 || strlst->size <= 0)
+ return 0;
+
++ used += 1+strlst->size;
++ if (used > AVAHI_DNS_RDATA_MAX)
++ return 0;
++ }
++
+ return 1;
+ }
+ }
--- /dev/null
+From b6cf29f98adce7355e8c51a6af1e338a5f94e16e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20Men=C5=A1=C3=ADk?= <pemensik@redhat.com>
+Date: Tue, 11 Apr 2023 15:29:59 +0200
+Subject: [PATCH] Ensure each label is at least one byte long
+
+The only allowed exception is single dot, where it should return empty
+string.
+
+Fixes #454.
+---
+ avahi-common/domain-test.c | 14 ++++++++++++++
+ avahi-common/domain.c | 2 +-
+ 2 files changed, 15 insertions(+), 1 deletion(-)
+
+--- a/avahi-common/domain-test.c
++++ b/avahi-common/domain-test.c
+@@ -45,6 +45,20 @@ int main(AVAHI_GCC_UNUSED int argc, AVAH
+ printf("%s\n", s = avahi_normalize_name_strdup("fo\\\\o\\..f oo."));
+ avahi_free(s);
+
++ printf("%s\n", s = avahi_normalize_name_strdup("."));
++ avahi_free(s);
++
++ s = avahi_normalize_name_strdup(",.=.}.=.?-.}.=.?.?.}.}.?.?.?.z.?.?.}.}."
++ "}.?.?.?.r.=.=.}.=.?.}}.}.?.?.?.zM.=.=.?.?.}.}.?.?.}.}.}"
++ ".?.?.?.r.=.=.}.=.?.}}.}.?.?.?.zM.=.=.?.?.}.}.?.?.?.zM.?`"
++ "?.}.}.}.?.?.?.r.=.?.}.=.?.?.}.?.?.?.}.=.?.?.}??.}.}.?.?."
++ "?.z.?.?.}.}.}.?.?.?.r.=.=.}.=.?.}}.}.?.?.?.zM.?`?.}.}.}."
++ "??.?.zM.?`?.}.}.}.?.?.?.r.=.?.}.=.?.?.}.?.?.?.}.=.?.?.}?"
++ "?.}.}.?.?.?.z.?.?.}.}.}.?.?.?.r.=.=.}.=.?.}}.}.?.?.?.zM."
++ "?`?.}.}.}.?.?.?.r.=.=.?.?`.?.?}.}.}.?.?.?.r.=.?.}.=.?.?."
++ "}.?.?.?.}.=.?.?.}");
++ assert(s == NULL);
++
+ printf("%i\n", avahi_domain_equal("\\065aa bbb\\.\\046cc.cc\\\\.dee.fff.", "Aaa BBB\\.\\.cc.cc\\\\.dee.fff"));
+ printf("%i\n", avahi_domain_equal("A", "a"));
+
+--- a/avahi-common/domain.c
++++ b/avahi-common/domain.c
+@@ -201,7 +201,7 @@ char *avahi_normalize_name(const char *s
+ }
+
+ if (!empty) {
+- if (size < 1)
++ if (size < 2)
+ return NULL;
+
+ *(r++) = '.';
--- /dev/null
+From d486bca7e7912c6a4b547a3c607db0d0d3124bbf Mon Sep 17 00:00:00 2001
+From: Michal Sekletar <msekleta@redhat.com>
+Date: Mon, 23 Oct 2023 13:38:35 +0200
+Subject: [PATCH] core: extract host name using avahi_unescape_label()
+
+Previously we could create invalid escape sequence when we split the
+string on dot. For example, from valid host name "foo\\.bar" we have
+created invalid name "foo\\" and tried to set that as the host name
+which crashed the daemon.
+
+Fixes #453
+
+CVE-2023-38471
+---
+ avahi-core/server.c | 27 +++++++++++++++++++++------
+ 1 file changed, 21 insertions(+), 6 deletions(-)
+
+--- a/avahi-core/server.c
++++ b/avahi-core/server.c
+@@ -1295,7 +1295,11 @@ static void update_fqdn(AvahiServer *s)
+ }
+
+ int avahi_server_set_host_name(AvahiServer *s, const char *host_name) {
+- char *hn = NULL;
++ char label_escaped[AVAHI_LABEL_MAX*4+1];
++ char label[AVAHI_LABEL_MAX];
++ char *hn = NULL, *h;
++ size_t len;
++
+ assert(s);
+
+ AVAHI_CHECK_VALIDITY(s, !host_name || avahi_is_valid_host_name(host_name), AVAHI_ERR_INVALID_HOST_NAME);
+@@ -1305,17 +1309,28 @@ int avahi_server_set_host_name(AvahiServ
+ else
+ hn = avahi_normalize_name_strdup(host_name);
+
+- hn[strcspn(hn, ".")] = 0;
++ h = hn;
++ if (!avahi_unescape_label((const char **)&hn, label, sizeof(label))) {
++ avahi_free(h);
++ return AVAHI_ERR_INVALID_HOST_NAME;
++ }
++
++ avahi_free(h);
+
+- if (avahi_domain_equal(s->host_name, hn) && s->state != AVAHI_SERVER_COLLISION) {
+- avahi_free(hn);
++ h = label_escaped;
++ len = sizeof(label_escaped);
++ if (!avahi_escape_label(label, strlen(label), &h, &len))
++ return AVAHI_ERR_INVALID_HOST_NAME;
++
++ if (avahi_domain_equal(s->host_name, label_escaped) && s->state != AVAHI_SERVER_COLLISION)
+ return avahi_server_set_errno(s, AVAHI_ERR_NO_CHANGE);
+- }
+
+ withdraw_host_rrs(s);
+
+ avahi_free(s->host_name);
+- s->host_name = hn;
++ s->host_name = avahi_strdup(label_escaped);
++ if (!s->host_name)
++ return AVAHI_ERR_NO_MEMORY;
+
+ update_fqdn(s);
+
--- /dev/null
+From d886dc5b1d3d2b76aaa38289245acfdfa979ca6c Mon Sep 17 00:00:00 2001
+From: Michal Sekletar <msekleta@redhat.com>
+Date: Thu, 19 Oct 2023 17:36:44 +0200
+Subject: [PATCH] core: make sure there is rdata to process before parsing it
+
+Fixes #452
+
+CVE-2023-38472
+---
+ avahi-client/client-test.c | 3 +++
+ avahi-daemon/dbus-entry-group.c | 2 +-
+ 2 files changed, 4 insertions(+), 1 deletion(-)
+
+--- a/avahi-client/client-test.c
++++ b/avahi-client/client-test.c
+@@ -258,6 +258,9 @@ int main (AVAHI_GCC_UNUSED int argc, AVA
+ printf("%s\n", avahi_strerror(avahi_entry_group_add_service (group, AVAHI_IF_UNSPEC, AVAHI_PROTO_UNSPEC, 0, "Lathiat's Site", "_http._tcp", NULL, NULL, 80, "foo=bar", NULL)));
+ printf("add_record: %d\n", avahi_entry_group_add_record (group, AVAHI_IF_UNSPEC, AVAHI_PROTO_UNSPEC, 0, "TestX", 0x01, 0x10, 120, "\5booya", 6));
+
++ error = avahi_entry_group_add_record (group, AVAHI_IF_UNSPEC, AVAHI_PROTO_UNSPEC, 0, "TestX", 0x01, 0x10, 120, "", 0);
++ assert(error != AVAHI_OK);
++
+ avahi_entry_group_commit (group);
+
+ domain = avahi_domain_browser_new (avahi, AVAHI_IF_UNSPEC, AVAHI_PROTO_UNSPEC, NULL, AVAHI_DOMAIN_BROWSER_BROWSE, 0, avahi_domain_browser_callback, (char*) "omghai3u");
+--- a/avahi-daemon/dbus-entry-group.c
++++ b/avahi-daemon/dbus-entry-group.c
+@@ -340,7 +340,7 @@ DBusHandlerResult avahi_dbus_msg_entry_g
+ if (!(r = avahi_record_new_full (name, clazz, type, ttl)))
+ return avahi_dbus_respond_error(c, m, AVAHI_ERR_NO_MEMORY, NULL);
+
+- if (avahi_rdata_parse (r, rdata, size) < 0) {
++ if (!rdata || avahi_rdata_parse (r, rdata, size) < 0) {
+ avahi_record_unref (r);
+ return avahi_dbus_respond_error(c, m, AVAHI_ERR_INVALID_RDATA, NULL);
+ }
--- /dev/null
+From 5edc17b7913cac824daa09fca9976c9c19e88822 Mon Sep 17 00:00:00 2001
+From: Michal Sekletar <msekleta@redhat.com>
+Date: Wed, 11 Oct 2023 17:45:44 +0200
+Subject: [PATCH] common: derive alternative host name from its unescaped
+ version
+
+Normalization of input makes sure we don't have to deal with special
+cases like unescaped dot at the end of label.
+
+Fixes #451 #487
+CVE-2023-38473
+---
+ avahi-common/alternative-test.c | 3 +++
+ avahi-common/alternative.c | 27 +++++++++++++++++++--------
+ 2 files changed, 22 insertions(+), 8 deletions(-)
+
+--- a/avahi-common/alternative-test.c
++++ b/avahi-common/alternative-test.c
+@@ -31,6 +31,9 @@ int main(AVAHI_GCC_UNUSED int argc, AVAH
+ const char* const test_strings[] = {
+ "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXüüüüüüü",
++ ").",
++ "\\.",
++ "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\\\\",
+ "gurke",
+ "-",
+ " #",
+--- a/avahi-common/alternative.c
++++ b/avahi-common/alternative.c
+@@ -49,15 +49,20 @@ static void drop_incomplete_utf8(char *c
+ }
+
+ char *avahi_alternative_host_name(const char *s) {
++ char label[AVAHI_LABEL_MAX], alternative[AVAHI_LABEL_MAX*4+1];
++ char *alt, *r, *ret;
+ const char *e;
+- char *r;
++ size_t len;
+
+ assert(s);
+
+ if (!avahi_is_valid_host_name(s))
+ return NULL;
+
+- if ((e = strrchr(s, '-'))) {
++ if (!avahi_unescape_label(&s, label, sizeof(label)))
++ return NULL;
++
++ if ((e = strrchr(label, '-'))) {
+ const char *p;
+
+ e++;
+@@ -74,19 +79,18 @@ char *avahi_alternative_host_name(const
+
+ if (e) {
+ char *c, *m;
+- size_t l;
+ int n;
+
+ n = atoi(e)+1;
+ if (!(m = avahi_strdup_printf("%i", n)))
+ return NULL;
+
+- l = e-s-1;
++ len = e-label-1;
+
+- if (l >= AVAHI_LABEL_MAX-1-strlen(m)-1)
+- l = AVAHI_LABEL_MAX-1-strlen(m)-1;
++ if (len >= AVAHI_LABEL_MAX-1-strlen(m)-1)
++ len = AVAHI_LABEL_MAX-1-strlen(m)-1;
+
+- if (!(c = avahi_strndup(s, l))) {
++ if (!(c = avahi_strndup(label, len))) {
+ avahi_free(m);
+ return NULL;
+ }
+@@ -100,7 +104,7 @@ char *avahi_alternative_host_name(const
+ } else {
+ char *c;
+
+- if (!(c = avahi_strndup(s, AVAHI_LABEL_MAX-1-2)))
++ if (!(c = avahi_strndup(label, AVAHI_LABEL_MAX-1-2)))
+ return NULL;
+
+ drop_incomplete_utf8(c);
+@@ -109,6 +113,13 @@ char *avahi_alternative_host_name(const
+ avahi_free(c);
+ }
+
++ alt = alternative;
++ len = sizeof(alternative);
++ ret = avahi_escape_label(r, strlen(r), &alt, &len);
++
++ avahi_free(r);
++ r = avahi_strdup(ret);
++
+ assert(avahi_is_valid_host_name(r));
+
+ return r;
include $(TOPDIR)/rules.mk
PKG_NAME:=cJSON
-PKG_VERSION:=1.7.15
-PKG_RELEASE:=3
+PKG_VERSION:=1.7.17
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/DaveGamble/cJSON/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=5308fd4bd90cef7aa060558514de6a1a4a0819974a26e6ed13973c5f624c24b2
+PKG_HASH:=c91d1eeb7175c50d49f6ba2a25e69b46bd05cffb798382c19bfb202e467ec51c
PKG_MAINTAINER:=Karl Palsson <karlp@etactica.com>
PKG_LICENSE:=MIT
PKG_NAME:=confuse
PKG_VERSION:=3.3
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://github.com/martinh/libconfuse/releases/download/v$(PKG_VERSION)
--- /dev/null
+From d73777c2c3566fb2647727bb56d9a2295b81669b Mon Sep 17 00:00:00 2001
+From: Joachim Wiberg <troglobit@gmail.com>
+Date: Fri, 2 Sep 2022 16:12:46 +0200
+Subject: [PATCH] Fix #163: unterminated username used with getpwnam()
+
+Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
+---
+ src/confuse.c | 10 ++++++----
+ 1 file changed, 6 insertions(+), 4 deletions(-)
+
+--- a/src/confuse.c
++++ b/src/confuse.c
+@@ -1863,18 +1863,20 @@ DLLIMPORT char *cfg_tilde_expand(const c
+ passwd = getpwuid(geteuid());
+ file = filename + 1;
+ } else {
+- /* ~user or ~user/path */
+- char *user;
++ char *user; /* ~user or ~user/path */
++ size_t len;
+
+ file = strchr(filename, '/');
+ if (file == 0)
+ file = filename + strlen(filename);
+
+- user = malloc(file - filename);
++ len = file - filename - 1;
++ user = malloc(len + 1);
+ if (!user)
+ return NULL;
+
+- strncpy(user, filename + 1, file - filename - 1);
++ strncpy(user, &filename[1], len);
++ user[len] = 0;
+ passwd = getpwnam(user);
+ free(user);
+ }
include $(TOPDIR)/rules.mk
PKG_NAME:=expat
-PKG_VERSION:=2.5.0
+PKG_VERSION:=2.6.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@SF/expat \
https://github.com/libexpat/libexpat/releases/download/R_$(subst .,_,$(PKG_VERSION))
-PKG_HASH:=ef2420f0232c087801abf705e89ae65f6257df6b7931d37846a193ef2e8cdcbe
+PKG_HASH:=cb5f5a8ea211e1cabd59be0a933a52e3c02cc326e86a4d387d8d218e7ee47a3e
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=MIT
-DEXPAT_BUILD_EXAMPLES=OFF \
-DEXPAT_BUILD_TESTS=OFF \
-DEXPAT_BUILD_DOCS=OFF \
- -DEXPAT_WITH_LIBBSD=OFF \
- -DEXPAT_ENABLE_INSTALL=ON \
-DEXPAT_DTD=OFF \
-DEXPAT_NS=OFF \
-DEXPAT_DEV_URANDOM=OFF
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
-PKG_SOURCE_VERSION:=2.10.1
+PKG_SOURCE_VERSION:=2.11.1
PKG_SOURCE_URL:=https://github.com/knik0/faad2
-PKG_MIRROR_HASH:=8a42cbc5833bd3c076f92363f0cbbcf6f848231c59b2f17dbe5d151cb8684fe1
+PKG_MIRROR_HASH:=d57b209ba5d88e4838987d84ba50cd5a9313c217a4144b9ea55f6bd5d44684f9
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=GPL-2.0-or-later
PKG_LICENSE_FILES:=COPYING
PKG_CPE_ID:=cpe:/a:audiocoding:freeware_advanced_audio_decoder_2
-PKG_FIXUP:=autoreconf
-PKG_INSTALL:=1
-PKG_BUILD_PARALLEL:=1
-
include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
define Package/faad2/Default
URL:=http://www.audiocoding.com/faad2.html
endef
TARGET_CFLAGS += \
- $(if $(CONFIG_BUILD_PATENTED),,-DLC_ONLY_DECODER) \
+ $(if $(CONFIG_BUILD_PATENTED),,-DLC_ONLY_DECODER -DDISABLE_SBR) \
$(if $(CONFIG_SOFT_FLOAT),-DFIXED_POINT)
CONFIGURE_ARGS += \
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfaad.{a,so*} $(1)/usr/lib/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfaad.so* $(1)/usr/lib/
endef
define Package/faad2/install
+++ /dev/null
---- a/libfaad/common.h
-+++ b/libfaad/common.h
-@@ -120,8 +120,7 @@ extern "C" {
- #undef DRM_PS
- #undef ALLOW_SMALL_FRAMELENGTH
- #undef ERROR_RESILIENCE
--#endif
--
-+#else
- #define SBR_DEC
- //#define SBR_LOW_POWER
- #define PS_DEC
-@@ -129,6 +128,7 @@ extern "C" {
- #ifdef SBR_LOW_POWER
- #undef PS_DEC
- #endif
-+#endif
-
- /* FIXED POINT: No MAIN decoding */
- #ifdef FIXED_POINT
include $(TOPDIR)/rules.mk
PKG_NAME:=file
-PKG_VERSION:=5.44
+PKG_VERSION:=5.45
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://download.openpkg.org/components/cache/file/ \
ftp://ftp.astron.com/pub/file/
-PKG_HASH:=3751c7fba8dbc831cb8d7cc8aff21035459b8ce5155ef8b0880a27d028475f3b
+PKG_HASH:=fc97f51029bb0e2c9f4e3bffefdaf678f0e039ee872b9de5c002a6d09c784d82
PKG_MAINTAINER:=Marko Ratkaj <markoratkaj@gmail.com>
PKG_LICENSE:=BSD-2-Clause
TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed
CONFIGURE_ARGS += \
- --enable-shared \
--enable-static \
--enable-bzlib \
--enable-xzlib \
--enable-zlib \
--disable-libseccomp \
--disable-lzlib \
- --disable-rpath \
--disable-warnings \
--disable-zstdlib \
--without-pic
PKG_NAME:=giflib
PKG_VERSION:=5.2.1
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@SF/giflib
--- /dev/null
+--- a/gif2rgb.c
++++ b/gif2rgb.c
+@@ -294,6 +294,11 @@ static void DumpScreen2RGB(char *FileNam
+ GifRow = ScreenBuffer[i];
+ GifQprintf("\b\b\b\b%-4d", ScreenHeight - i);
+ for (j = 0, BufferP = Buffer; j < ScreenWidth; j++) {
++ /* Check if color is within color palete */
++ if (GifRow[j] >= ColorMap->ColorCount)
++ {
++ GIF_EXIT(GifErrorString(D_GIF_ERR_IMAGE_DEFECT));
++ }
+ ColorMapEntry = &ColorMap->Colors[GifRow[j]];
+ *BufferP++ = ColorMapEntry->Red;
+ *BufferP++ = ColorMapEntry->Green;
--- /dev/null
+Description: Fix segmentation faults due to non correct checking for args
+Author: David Suárez <david.sephirot@gmail.com>
+Origin: vendor
+Bug: https://sourceforge.net/p/giflib/bugs/153/
+Bug-Debian: https://bugs.debian.org/715963
+Bug-Debian: https://bugs.debian.org/715964
+Bug-Debian: https://bugs.debian.org/715967
+Last-Update: 2020-12-20
+
+--- a/getarg.c
++++ b/getarg.c
+@@ -307,6 +307,12 @@ GAGetParmeters(void *Parameters[],
+ int i = 0, ScanRes;
+
+ while (!(ISSPACE(CtrlStrCopy[i]))) {
++
++ if ((*argv) == argv_end) {
++ GAErrorToken = Option;
++ return CMD_ERR_NumRead;
++ }
++
+ switch (CtrlStrCopy[i + 1]) {
+ case 'd': /* Get signed integers. */
+ ScanRes = sscanf(*((*argv)++), "%d",
include $(TOPDIR)/rules.mk
PKG_NAME:=glib2
-PKG_VERSION:=2.74.0
-PKG_RELEASE:=5
+PKG_VERSION:=2.78.4
+PKG_RELEASE:=2
PKG_SOURCE:=glib-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNOME/glib/$(basename $(PKG_VERSION))
-PKG_HASH:=3652c7f072d7b031a6b5edd623f77ebc5dcd2ae698598abcc89ff39ca75add30
+PKG_HASH:=24b8e0672dca120cc32d394bccb85844e732e04fe75d18bb0573b2dbc7548f63
PKG_MAINTAINER:=Peter Wagner <tripolar@gmx.at>
PKG_LICENSE:=LGPL-2.1-or-later
CATEGORY:=Libraries
DEPENDS:=$(ICONV_DEPENDS) $(INTL_DEPENDS) +zlib +libpthread +libffi +libattr +libpcre2
TITLE:=glib 2.0
- URL:=http://www.gtk.org/
+ URL:=https://www.gtk.org/
endef
define Package/glib2/description
COMP_ARGS= \
-Dselinux=disabled \
-Dlibmount=disabled \
- -Dman=false \
- -Ddtrace=false \
- -Dsystemtap=false \
- -Dsysprof=disabled \
- -Dgtk_doc=false \
- -Dbsymbolic_functions=true \
-Dforce_posix_threads=true \
-Dtests=false \
- -Dinstalled_tests=false \
- -Doss_fuzz=disabled \
-Dglib_debug=disabled \
-Dglib_assert=false \
-Dglib_checks=true \
-Dlibelf=disabled
-MESON_HOST_ARGS += $(COMP_ARGS) -Dxattr=false -Ddefault_library=static -Dnls=disabled
+MESON_HOST_ARGS += $(COMP_ARGS) -Dxattr=false -Ddefault_library=static -Dnls=disabled -Dforce_fallback_for=libpcre2-8
MESON_ARGS += $(COMP_ARGS) -Dxattr=true -Db_lto=true -Ddefault_library=both -Dnls=$(if $(CONFIG_BUILD_NLS),en,dis)abled
define Build/InstallDev
--- a/meson.build
+++ b/meson.build
-@@ -1045,7 +1045,7 @@ if host_system == 'windows' and (cc.get_
+@@ -1118,7 +1118,7 @@ if host_system == 'windows' and (cc.get_
glib_conf.set('HAVE_C99_SNPRINTF', false)
glib_conf.set('HAVE_C99_VSNPRINTF', false)
glib_conf.set('HAVE_UNIX98_PRINTF', false)
--- a/glib/meson.build
+++ b/glib/meson.build
-@@ -365,6 +365,7 @@ pcre2_static_args = []
+@@ -400,8 +400,9 @@ endif
- if use_pcre2_static_flag
+ pcre2_static_args = []
+
+-if use_pcre2_static_flag
++if pcre2.type_name() == 'internal'
pcre2_static_args = ['-DPCRE2_STATIC']
+ pcre2 = pcre2.as_link_whole()
endif
- glib_c_args = ['-DG_LOG_DOMAIN="GLib"', '-DGLIB_COMPILATION'] + pcre2_static_args + glib_hidden_visibility_args
+ glib_c_args = ['-DG_LOG_DOMAIN="GLib"'] + glib_c_args_internal + pcre2_static_args
+++ /dev/null
-From ebcc3c01db27b79af38b42c3c52a79d0225f744c Mon Sep 17 00:00:00 2001
-From: Seungha Yang <seungha@centricular.com>
-Date: Sun, 14 Aug 2022 04:56:20 +0900
-Subject: [PATCH] glib-mkenums: Specify output encoding as UTF-8 explicitly for
- non-English locale
-
-Fixup regression introduced by
-https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2797
----
- gobject/glib-mkenums.in | 3 +++
- 1 file changed, 3 insertions(+)
-
---- a/gobject/glib-mkenums.in
-+++ b/gobject/glib-mkenums.in
-@@ -19,6 +19,9 @@ import errno
- import codecs
- import locale
-
-+# Non-english locale systems might complain to unrecognized character
-+sys.stdout = io.TextIOWrapper(sys.stdout.detach(), encoding='utf-8')
-+
- VERSION_STR = '''glib-mkenums version @VERSION@
- glib-mkenums comes with ABSOLUTELY NO WARRANTY.
- You may redistribute copies of glib-mkenums under the terms of
include $(TOPDIR)/rules.mk
PKG_NAME:=hidapi
-PKG_VERSION:=0.12.0
-PKG_RELEASE:=2
+PKG_VERSION:=0.14.0
+PKG_RELEASE:=1
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=https://codeload.github.com/libusb/hidapi/tar.gz/$(PKG_NAME)-$(PKG_VERSION)?
-PKG_HASH:=28ec1451f0527ad40c1a4c92547966ffef96813528c8b184a665f03ecbb508bc
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_NAME)-$(PKG_VERSION)
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_URL:=https://github.com/libusb/hidapi
+PKG_SOURCE_VERSION:=hidapi-$(PKG_VERSION)
+PKG_MIRROR_HASH:=5267dfc08c67476c4225b3b6165743e2fce9a1ffc082017e9057ef5f5b9619e5
PKG_MAINTAINER:=Paul Fertser <fercerpav@gmail.com>
PKG_LICENSE:=BSD-3-Clause
include $(TOPDIR)/rules.mk
PKG_NAME:=json-glib
-PKG_VERSION:=1.6.6
+PKG_VERSION:=1.8.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNOME/json-glib/$(basename $(PKG_VERSION))
-PKG_HASH:=96ec98be7a91f6dde33636720e3da2ff6ecbb90e76ccaa49497f31a6855a490e
+PKG_HASH:=97ef5eb92ca811039ad50a65f06633f1aae64792789307be7170795d8b319454
PKG_LICENSE:=LGPL-2.1-or-later
PKG_LICENSE_FILES:=COPYING
MESON_ARGS += \
-Dgtk_doc=disabled \
-Dintrospection=disabled \
- -Dman=false \
-Dtests=false
define Build/Prepare
PKG_NAME:=libao
PKG_VERSION:=1.2.0
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://downloads.xiph.org/releases/ao/
--- /dev/null
+From d5221655dfd1a2156aa6be83b5aadea7c1e0f5bd Mon Sep 17 00:00:00 2001
+From: Ron <ron@debian.org>
+Date: Sat, 13 Jan 2018 20:19:20 +1030
+Subject: [PATCH] Check memory allocations for success
+
+Adds some missing checks spotted by eye in a visual review while looking
+into the details of https://bugs.debian.org/870608
+---
+ src/audio_out.c | 58 +++++++++++++++++++++++++---------
+ src/plugins/macosx/ao_macosx.c | 2 +-
+ src/plugins/sndio/ao_sndio.c | 3 ++
+ 3 files changed, 47 insertions(+), 16 deletions(-)
+
+--- a/src/audio_out.c
++++ b/src/audio_out.c
+@@ -634,6 +634,10 @@ static char *_sanitize_matrix(int maxcha
+ char *ret = calloc(strlen(matrix)+1,1); /* can only get smaller */
+ char *p=matrix;
+ int count=0;
++
++ if(!ret)
++ return NULL;
++
+ while(count<maxchannels){
+ char *h,*t;
+ int m=0;
+@@ -707,6 +711,15 @@ static int _find_channel(int needle, cha
+ return -1;
+ }
+
++static void _free_map(char **m){
++ char **in=m;
++ while(m && *m){
++ free(*m);
++ m++;
++ }
++ if(in)free(in);
++}
++
+ static char **_tokenize_matrix(char *matrix){
+ char **ret=NULL;
+ char *p=matrix;
+@@ -731,6 +744,8 @@ static char **_tokenize_matrix(char *mat
+ }
+
+ ret = calloc(count+1,sizeof(*ret));
++ if(!ret)
++ return NULL;
+
+ p=matrix;
+ count=0;
+@@ -749,6 +764,10 @@ static char **_tokenize_matrix(char *mat
+ while(t>p && isspace(*(t-1)))t--;
+
+ ret[count] = calloc(t-p+1,1);
++ if(!ret[count]){
++ _free_map(ret);
++ return NULL;
++ }
+ memcpy(ret[count],p,t-p);
+ count++;
+ if(!*h)break;
+@@ -756,16 +775,6 @@ static char **_tokenize_matrix(char *mat
+ }
+
+ return ret;
+-
+-}
+-
+-static void _free_map(char **m){
+- char **in=m;
+- while(m && *m){
+- free(*m);
+- m++;
+- }
+- if(in)free(in);
+ }
+
+ static unsigned int _matrix_to_channelmask(int ch, char *matrix, char *premap, int **mout){
+@@ -773,7 +782,14 @@ static unsigned int _matrix_to_channelma
+ char *p=matrix;
+ int *perm=(*mout=malloc(ch*sizeof(*mout)));
+ int i;
+- char **map = _tokenize_matrix(premap);
++ char **map;
++
++ if(!perm)
++ return 0;
++
++ map = _tokenize_matrix(premap);
++ if(!map)
++ return 0;
+
+ for(i=0;i<ch;i++) perm[i] = -1;
+ i=0;
+@@ -811,6 +827,9 @@ static char *_channelmask_to_matrix(unsi
+ char buffer[257]={0};
+ char **map = _tokenize_matrix(premap);
+
++ if(!map)
++ return NULL;
++
+ while(map[m]){
+ if(mask & (1<<m)){
+ if(count)
+@@ -850,6 +869,9 @@ static char *_matrix_intersect(char *mat
+ int count=0;
+ char **map = _tokenize_matrix(premap);
+
++ if(!map)
++ return NULL;
++
+ while(1){
+ char *h=p;
+ int m=0;
+@@ -1040,7 +1062,7 @@ static ao_device* _open_device(int drive
+ device->output_matrix,
+ &device->input_map);
+ int channels = _channelmask_bits(mask);
+- if(channels<0){
++ if(channels<=0){
+ aerror("Unable to map any channels from input matrix to output");
+ errno = AO_EBADFORMAT;
+ goto error;
+@@ -1061,7 +1083,7 @@ static ao_device* _open_device(int drive
+ device->output_matrix,
+ &device->input_map);
+ int channels = _channelmask_bits(mask);
+- if(channels<0){
++ if(channels<=0){
+ aerror("Unable to map any channels from input matrix to output");
+ errno = AO_EBADFORMAT;
+ goto error;
+@@ -1112,6 +1134,10 @@ static ao_device* _open_device(int drive
+ int count=0;
+ device->inter_permute = calloc(device->output_channels,sizeof(int));
+
++ if (!device->inter_permute) {
++ errno = AO_EFAIL;
++ goto error;
++ }
+ adebug("\n");
+
+ while(count<device->output_channels){
+@@ -1158,8 +1184,10 @@ static ao_device* _open_device(int drive
+ for(i=0;i<device->output_channels;i++)
+ if(device->inter_permute[i]==j)break;
+ if(i==device->output_channels){
+- adebug("input %d (%s)\t -> none\n",
+- j,inch[j]);
++ if(inch){
++ adebug("input %d (%s)\t -> none\n",
++ j,inch[j]);
++ }
+ unflag=1;
+ }
+ }
+--- a/src/plugins/macosx/ao_macosx.c
++++ b/src/plugins/macosx/ao_macosx.c
+@@ -592,11 +592,11 @@ int ao_plugin_open(ao_device *device, ao
+ internal->firstValidByteOffset = 0;
+ internal->validByteCount = 0;
+ internal->buffer = malloc(internal->bufferByteCount);
+- memset(internal->buffer, 0, internal->bufferByteCount);
+ if (!internal->buffer) {
+ aerror("Unable to allocate queue buffer.\n");
+ return 0;
+ }
++ memset(internal->buffer, 0, internal->bufferByteCount);
+
+ /* limited to stereo for now */
+ //if(!device->output_matrix)
+--- a/src/plugins/sndio/ao_sndio.c
++++ b/src/plugins/sndio/ao_sndio.c
+@@ -67,6 +67,9 @@ int ao_plugin_device_init(ao_device *dev
+ {
+ ao_sndio_internal *internal;
+ internal = (ao_sndio_internal *) calloc(1,sizeof(*internal));
++ if (internal == NULL)
++ return 0;
++
+ internal->id=-1;
+ device->internal = internal;
+ device->output_matrix_order = AO_OUTPUT_MATRIX_FIXED;
include $(TOPDIR)/rules.mk
PKG_NAME:=libarchive
-PKG_VERSION:=3.6.2
-PKG_RELEASE:=2
+PKG_VERSION:=3.7.2
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://www.libarchive.org/downloads
-PKG_HASH:=9e2c1b80d5fbe59b61308fdfab6c79b5021d7ff4ff2489fb12daf0a96a83551d
+PKG_HASH:=04357661e6717b6941682cde02ad741ae4819c67a260593dfb2431861b251acb
PKG_MAINTAINER:=Johannes Morgenroth <morgenroth@ibr.cs.tu-bs.de>
PKG_LICENSE:=BSD-2-Clause
endef
CMAKE_OPTIONS += \
- -DENABLE_MBEDTLS=OFF \
- -DENABLE_NETTLE=OFF \
-DENABLE_LIBB2=OFF \
-DENABLE_LZ4=OFF \
- -DENABLE_LZO=OFF \
- -DENABLE_LZMA=ON \
\
-DENABLE_ZSTD=OFF \
- -DENABLE_ZLIB=ON \
- -DENABLE_BZip2=ON \
-DENABLE_LIBXML2=OFF \
- -DENABLE_EXPAT=ON \
-DENABLE_PCREPOSIX=OFF \
-DENABLE_LibGCC=OFF \
-DENABLE_CNG=OFF \
\
- -DENABLE_TAR=ON \
-DENABLE_TAR_SHARED=ON \
-DENABLE_CPIO=OFF \
-DENABLE_CAT=OFF \
-DENABLE_XATTR=OFF \
-DENABLE_ACL=OFF \
-DENABLE_ICONV=OFF \
- -DENABLE_TEST=OFF \
- -DENABLE_COVERAGE=OFF \
- -DENABLE_INSTALL=ON
+ -DENABLE_TEST=OFF
ifeq ($(BUILD_VARIANT),noopenssl)
CMAKE_OPTIONS += -DENABLE_OPENSSL=OFF
include $(TOPDIR)/rules.mk
PKG_NAME:=libcap-ng
-PKG_VERSION:=0.8.3
-PKG_RELEASE:=2
+PKG_VERSION:=0.8.4
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://people.redhat.com/sgrubb/libcap-ng
-PKG_HASH:=bed6f6848e22bb2f83b5f764b2aef0ed393054e803a8e3a8711cb2a39e6b492d
+PKG_HASH:=68581d3b38e7553cb6f6ddf7813b1fc99e52856f21421f7b477ce5abd2605a8a
PKG_MAINTAINER:=Lucian CRISTIAN <lucian.cristian@gmail.com>
PKG_LICENSE:=GPL-2.0-or-later LGPL-2.1-or-later
include $(TOPDIR)/rules.mk
PKG_NAME:=libcbor
-PKG_VERSION:=0.8.0
+PKG_VERSION:=0.11.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/PJK/libcbor/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=618097166ea4a54499646998ccaa949a5816e6a665cf1d6df383690895217c8b
+PKG_HASH:=89e0a83d16993ce50651a7501355453f5250e8729dfc8d4a251a78ea23bb26d7
PKG_LICENSE:=GPL-3.0-or-later
PKG_LICENSE_FILES:=COPYING
include $(TOPDIR)/rules.mk
PKG_NAME:=libextractor
-PKG_VERSION:=1.11
-PKG_RELEASE:=3
+PKG_VERSION:=1.13
+PKG_RELEASE:=1
# ToDo:
# - package missing optional dependencies: libexiv2, gsf, librpm, smf, tidy
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@GNU/$(PKG_NAME)
-PKG_HASH:=16f633ab8746a38547c4a1da3f4591192b0825ad83c4336f0575b85843d8bd8f
+PKG_HASH:=bb8f312c51d202572243f113c6b62d8210301ab30cbaee604f9837d878cdf755
PKG_LICENSE:=GPL-3.0-or-later
PKG_LICENSE_FILES:=COPYING
include $(INCLUDE_DIR)/nls.mk
CONFIGURE_ARGS += \
- --disable-ffmpeg \
--disable-glibtest \
--disable-gsf \
--disable-rpath \
--with$(if $(CONFIG_PACKAGE_libextractor-plugin-gstreamer),,out)-gstreamer
-CONFIGURE_VARS += \
- ac_cv_lib_jpeg_jpeg_mem_src=yes
-
define Package/libextractor
SECTION:=libs
CATEGORY:=Libraries
+++ /dev/null
---- a/src/plugins/jpeg_extractor.c
-+++ b/src/plugins/jpeg_extractor.c
-@@ -31,8 +31,97 @@ typedef int boolean;
- #define HAVE_BOOLEAN
- #endif
- #include <jpeglib.h>
-+#include <jerror.h>
- #include <setjmp.h>
-
-+#if JPEG_LIB_VERSION < 80 && !defined(MEM_SRCDST_SUPPORTED)
-+typedef struct {
-+ struct jpeg_source_mgr pub; /* public fields */
-+
-+ JOCTET eoi_buffer[2]; /* a place to put a dummy EOI */
-+} my_source_mgr;
-+
-+typedef my_source_mgr * my_src_ptr;
-+
-+static void
-+init_source (j_decompress_ptr cinfo)
-+{
-+ /* No work, since jpeg_mem_src set up the buffer pointer and count.
-+ * Indeed, if we want to read multiple JPEG images from one buffer,
-+ * this *must* not do anything to the pointer.
-+ */
-+}
-+
-+static boolean
-+fill_input_buffer (j_decompress_ptr cinfo)
-+{
-+ my_src_ptr src = (my_src_ptr) cinfo->src;
-+
-+ WARNMS(cinfo, JWRN_JPEG_EOF);
-+
-+ /* Create a fake EOI marker */
-+ src->eoi_buffer[0] = (JOCTET) 0xFF;
-+ src->eoi_buffer[1] = (JOCTET) JPEG_EOI;
-+ src->pub.next_input_byte = src->eoi_buffer;
-+ src->pub.bytes_in_buffer = 2;
-+
-+ return TRUE;
-+}
-+
-+static void
-+skip_input_data (j_decompress_ptr cinfo, long num_bytes)
-+{
-+ my_src_ptr src = (my_src_ptr) cinfo->src;
-+
-+ if (num_bytes > 0) {
-+ while (num_bytes > (long) src->pub.bytes_in_buffer) {
-+ num_bytes -= (long) src->pub.bytes_in_buffer;
-+ (void) fill_input_buffer(cinfo);
-+ /* note we assume that fill_input_buffer will never
-+ * return FALSE, so suspension need not be handled.
-+ */
-+ }
-+ src->pub.next_input_byte += (size_t) num_bytes;
-+ src->pub.bytes_in_buffer -= (size_t) num_bytes;
-+ }
-+}
-+
-+static void
-+term_source (j_decompress_ptr cinfo)
-+{
-+ /* no work necessary here */
-+}
-+
-+static void
-+jpeg_mem_src (j_decompress_ptr cinfo, unsigned char * buffer,
-+ unsigned long bufsize)
-+{
-+ my_src_ptr src;
-+
-+ /* The source object is made permanent so that a series of JPEG images
-+ * can be read from a single buffer by calling jpeg_mem_src
-+ * only before the first one.
-+ * This makes it unsafe to use this manager and a different source
-+ * manager serially with the same JPEG object. Caveat programmer.
-+ */
-+ if (cinfo->src == NULL) { /* first time for this JPEG object? */
-+ cinfo->src = (struct jpeg_source_mgr *)
-+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo,
-+ JPOOL_PERMANENT,
-+ sizeof(my_source_mgr));
-+ }
-+
-+ src = (my_src_ptr) cinfo->src;
-+ src->pub.init_source = init_source;
-+ src->pub.fill_input_buffer = fill_input_buffer;
-+ src->pub.skip_input_data = skip_input_data;
-+ src->pub.resync_to_restart = jpeg_resync_to_restart; /* use default method */
-+ src->pub.term_source = term_source;
-+
-+ src->pub.next_input_byte = buffer;
-+ src->pub.bytes_in_buffer = bufsize;
-+}
-+#endif
-
- /**
- * Context for custom functions.
include $(TOPDIR)/rules.mk
PKG_NAME:=libfastjson
-PKG_VERSION:=0.99.8
+PKG_VERSION:=1.2304.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=http://download.rsyslog.com/libfastjson
-PKG_HASH:=3544c757668b4a257825b3cbc26f800f59ef3c1ff2a260f40f96b48ab1d59e07
+PKG_SOURCE_URL:=https://download.rsyslog.com/libfastjson
+PKG_HASH:=ef30d1e57a18ec770f90056aaac77300270c6203bbe476f4181cc83a2d5dc80c
PKG_MAINTAINER:=Dov Murik <dmurik@us.ibm.com>
PKG_LICENSE:=MIT
include $(TOPDIR)/rules.mk
PKG_NAME:=libffi
-PKG_VERSION:=3.4.2
-PKG_RELEASE:=2
+PKG_VERSION:=3.4.4
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=https://codeload.github.com/libffi/libffi/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=0acbca9fd9c0eeed7e5d9460ae2ea945d3f1f3d48e13a4c54da12c7e0d23c313
+PKG_SOURCE_URL:=https://github.com/libffi/libffi/releases/download/v$(PKG_VERSION)
+PKG_HASH:=d66c56ad259a82cf2a9dfc408b32bf5da52371500b84745f7fb8b645712df676
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=LICENSE
SECTION:=libs
CATEGORY:=Libraries
TITLE:=Foreign Function Interface (FFI) library
- URL:=http://sourceware.org/libffi/
+ URL:=https://sourceware.org/libffi/
MAINTAINER:=Peter Wagner <tripolar@gmx.at>
endef
HOST_CONFIGURE_ARGS += \
--disable-shared \
- --disable-debug \
--disable-docs \
--disable-multi-os-directory \
--disable-raw-api \
--with-pic
CONFIGURE_ARGS += \
- --disable-debug \
--disable-docs \
--disable-multi-os-directory \
--disable-raw-api \
include $(TOPDIR)/rules.mk
PKG_NAME:=libfido2
-PKG_VERSION:=1.12.0
+PKG_VERSION:=1.14.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/Yubico/libfido2/tar.gz/$(PKG_VERSION)?
-PKG_HASH:=813d6d25116143d16d2e96791718a74825da16b774a8d093d96f06ae1730d9c5
+PKG_HASH:=3601792e320032d428002c4cce8499a4c7b803319051a25a0c9f1f138ffee45a
PKG_MAINTAINER:=Linos Giannopoulos <linosgian00+openwrt@gmail.com>
PKG_LICENSE:=GPL-3.0-or-later
CMAKE_OPTIONS += \
-DBUILD_EXAMPLES=OFF \
-DBUILD_MANPAGES=OFF \
- -DBUILD_SHARED_LIBS=ON \
-DBUILD_STATIC_LIBS=OFF \
- -DBUILD_TOOLS=OFF \
- -DFUZZ=OFF \
- -DLIBFUZZER=OFF \
- -DUSE_HIDAPI=OFF
+ -DBUILD_TOOLS=OFF
define Package/libfido2/install
$(INSTALL_DIR) $(1)/usr/lib
include $(TOPDIR)/rules.mk
PKG_NAME:=libidn
-PKG_VERSION:=1.41
+PKG_VERSION:=1.42
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@GNU/libidn
-PKG_HASH:=884d706364b81abdd17bee9686d8ff2ae7431c5a14651047c68adf8b31fd8945
+PKG_HASH:=d6c199dcd806e4fe279360cb4b08349a0d39560ed548ffd1ccadda8cdecb4723
PKG_MAINTAINER:=
PKG_LICENSE:=GPL-2.0-or-later GPL-3.0-or-later LGPL-2.1-or-later LGPL-3.0-or-later Apache-2.0
"terminated by a newline character.\n"));
do
-@@ -195,7 +195,7 @@ main (int argc, char *argv[])
+@@ -199,7 +199,7 @@ main (int argc, char *argv[])
if (feof (stdin))
break;
}
if (strlen (line) > 0)
-@@ -213,7 +213,7 @@ main (int argc, char *argv[])
+@@ -217,7 +217,7 @@ main (int argc, char *argv[])
if (!q)
{
free (p);
_("could not convert from UTF-8 to UCS-4"));
}
-@@ -238,7 +238,7 @@ main (int argc, char *argv[])
+@@ -242,7 +242,7 @@ main (int argc, char *argv[])
if (!q)
{
free (r);
_("could not convert from UTF-8 to UCS-4"));
}
-@@ -275,7 +275,7 @@ main (int argc, char *argv[])
+@@ -279,7 +279,7 @@ main (int argc, char *argv[])
q = stringprep_utf8_to_ucs4 (p, -1, &len);
free (p);
if (!q)
_("could not convert from UTF-8 to UCS-4"));
if (args_info.debug_given)
-@@ -334,7 +334,7 @@ main (int argc, char *argv[])
+@@ -338,7 +338,7 @@ main (int argc, char *argv[])
r = stringprep_ucs4_to_utf8 (q, -1, NULL, NULL);
free (q);
if (!r)
_("could not convert from UCS-4 to UTF-8"));
p = stringprep_utf8_to_locale (r);
-@@ -358,7 +358,7 @@ main (int argc, char *argv[])
+@@ -362,7 +362,7 @@ main (int argc, char *argv[])
q = stringprep_utf8_to_ucs4 (p, -1, NULL);
free (p);
if (!q)
_("could not convert from UCS-4 to UTF-8"));
if (args_info.debug_given)
-@@ -436,7 +436,7 @@ main (int argc, char *argv[])
+@@ -440,7 +440,7 @@ main (int argc, char *argv[])
if (!q)
{
free (p);
_("could not convert from UCS-4 to UTF-8"));
}
-@@ -492,7 +492,7 @@ main (int argc, char *argv[])
+@@ -496,7 +496,7 @@ main (int argc, char *argv[])
r = stringprep_ucs4_to_utf8 (q, -1, NULL, NULL);
free (q);
if (!r)
_("could not convert from UTF-8 to UCS-4"));
p = stringprep_utf8_to_locale (r);
-@@ -521,7 +521,7 @@ main (int argc, char *argv[])
+@@ -525,7 +525,7 @@ main (int argc, char *argv[])
if (!q)
{
free (p);
_("could not convert from UTF-8 to UCS-4"));
}
-@@ -535,7 +535,7 @@ main (int argc, char *argv[])
+@@ -539,7 +539,7 @@ main (int argc, char *argv[])
r = stringprep_utf8_nfkc_normalize (p, -1);
free (p);
if (!r)
if (args_info.debug_given)
{
-@@ -545,7 +545,7 @@ main (int argc, char *argv[])
+@@ -549,7 +549,7 @@ main (int argc, char *argv[])
if (!q)
{
free (r);
include $(TOPDIR)/rules.mk
PKG_NAME:=libinput
-PKG_VERSION:=1.19.4
+PKG_VERSION:=1.25.0
PKG_RELEASE:=1
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
-PKG_SOURCE_URL:=http://www.freedesktop.org/software/libinput
-PKG_HASH:=ff33a570b5a936c81e6c08389a8581c2665311d026ce3d225c88d09c49f9b440
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_URL:=https://gitlab.freedesktop.org/libinput/libinput.git
+PKG_SOURCE_VERSION:=$(PKG_VERSION)
+PKG_MIRROR_HASH:=33220a76fae55ac425bd5f082ddcfedd8cbe501cdd3114064f8dc5f16f8a10cb
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=MIT
SECTION:=libs
CATEGORY:=Libraries
TITLE:=a library to handle input devices
- URL:=http://freedesktop.org/wiki/Software/libinput/
+ URL:=https://freedesktop.org/wiki/Software/libinput/
DEPENDS:=+libevdev +mtdev +libudev
endef
-Dlibwacom=false \
-Ddebug-gui=false \
-Dtests=false \
- -Dinstall-tests=false \
- -Ddocumentation=false \
- -Dcoverity=false \
-Dzshcompletiondir=no
define Build/InstallDev
include $(TOPDIR)/rules.mk
PKG_NAME:=libmariadb
-PKG_VERSION:=3.1.18
-PKG_RELEASE:=2
+PKG_VERSION:=3.1.23
+PKG_RELEASE:=1
PKG_SOURCE:=mariadb-connector-c-$(PKG_VERSION)-src.tar.gz
-PKG_SOURCE_URL := \
+PKG_SOURCE_URL:=\
https://mirror.netcologne.de/mariadb/connector-c-$(PKG_VERSION) \
https://mirror.lstn.net/mariadb/connector-c-$(PKG_VERSION) \
https://ftp.yz.yamagata-u.ac.jp/pub/dbms/mariadb/connector-c-$(PKG_VERSION) \
- https://downloads.mariadb.org/interstitial/connector-c-$(PKG_VERSION)
-PKG_HASH:=b01ecacf7531c2f36d90708845488e66462bf63627c58cb5986bd1c0833e4d9c
+ https://dlm.mariadb.com/3677044/Connectors/c/connector-c-$(PKG_VERSION)
+PKG_HASH:=43642ff0f104a1f79ec530ac81716bab52040016f6ad7cdec56f4ce30be19f6a
PKG_BUILD_DIR:=$(BUILD_DIR)/mariadb-connector-c-$(PKG_VERSION)-src
PKG_MAINTAINER:=Michal Hrusecky <Michal@Hrusecky.net>
include $(INCLUDE_DIR)/nls.mk
include $(INCLUDE_DIR)/cmake.mk
-# Pass CPPFLAGS in the CFLAGS as otherwise the build system will
-# ignore them.
+# Pass CPPFLAGS in the CFLAGS as otherwise the build system will ignore them.
TARGET_CFLAGS+=$(TARGET_CPPFLAGS)
define Package/$(PKG_NAME)/install/plugin
# We won't need unit tests
CMAKE_OPTIONS += -DWITH_UNIT_TESTS=0
-# Make it explicit that we are cross-compiling
-CMAKE_OPTIONS += -DCMAKE_CROSSCOMPILING=1
-
CMAKE_OPTIONS += \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -227,6 +227,14 @@ IF(UNIX)
+@@ -230,6 +230,14 @@ IF(UNIX)
SEARCH_LIBRARY(LIBPTHREAD pthread_getspecific "pthread;pthreads")
SEARCH_LIBRARY(LIBNSL gethostbyname_r "nsl_r;nsl")
SEARCH_LIBRARY(LIBSOCKET setsockopt socket)
include $(TOPDIR)/rules.mk
PKG_NAME:=libmicrohttpd
-PKG_VERSION:=0.9.75
+PKG_VERSION:=0.9.77
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@GNU/libmicrohttpd
-PKG_HASH:=9278907a6f571b391aab9644fd646a5108ed97311ec66f6359cebbedb0a4e3bb
+PKG_HASH:=9e7023a151120060d2806a6ea4c13ca9933ece4eacfc5c9464d20edddb76b0a0
PKG_MAINTAINER:=Alexander Couzens <lynxis@fe80.eu>
PKG_LICENSE:=LGPL-2.1-or-later
include $(TOPDIR)/rules.mk
PKG_NAME:=libmpdclient
-PKG_VERSION:=2.20
-PKG_RELEASE:=2
+PKG_VERSION:=2.22
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://www.musicpd.org/download/libmpdclient/2
-PKG_HASH:=18793f68e939c3301e34d8fcadea1f7daa24143941263cecadb80126194e277d
+PKG_HASH:=eac15b82b5ba5ed0648af580221eb74657394f7fe768e966d9e9ebb27435429f
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=BSD-3-Clause
include $(TOPDIR)/rules.mk
PKG_NAME:=libnpupnp
-PKG_VERSION:=5.1.2
+PKG_VERSION:=6.1.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://www.lesbonscomptes.com/upmpdcli/downloads
-PKG_HASH:=c1be8b2f654ef520791fbfaf13006fdd84522e6480a3126006e40caceea23552
+PKG_HASH:=1e305abf63ac945d9cb4576689670c009a914dc9d05b4c1ed605391e7f6b9719
PKG_MAINTAINER:=
PKG_LICENSE:=LGPL-2.1-or-later
include $(TOPDIR)/rules.mk
PKG_NAME:=libssh2
-PKG_VERSION:=1.10.0
+PKG_VERSION:=1.11.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://www.libssh2.org/download
-PKG_HASH:=2d64e90f3ded394b91d3a2e774ca203a4179f69aebee03003e5a6fa621e41d51
+PKG_HASH:=3736161e41e2693324deb38c26cfdc3efe6209d634ba4258db1cecff6a5ad461
PKG_MAINTAINER:=Jiri Slachta <jiri@slachta.eu>
PKG_LICENSE:=BSD-3-Clause
PKG_HASH:=8d7c17c694efff7d2e2d3632684537e7ba874ce3d7f0e750a539f2299021bbaa
PKG_MAINTAINER:=Chih-Wei Chen <changeway@gmail.com>
-PKG_LICENSE:=GPL-3.0-or-later
+PKG_LICENSE:=MIT OR GPL-3.0-only
PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=autoreconf
include $(TOPDIR)/rules.mk
PKG_NAME:=libtins
-PKG_VERSION:=4.4
-PKG_RELEASE:=4
+PKG_VERSION:=4.5
+PKG_RELEASE:=1
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=https://codeload.github.com/mfontanini/libtins/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=ff0121b4ec070407e29720c801b7e1a972042300d37560a62c57abadc9635634
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_VERSION:=v$(PKG_VERSION)
+PKG_SOURCE_URL:=https://github.com/mfontanini/libtins
+PKG_MIRROR_HASH:=4029af89fd86246f166a89c11d5382bb0f5fe3bda95b00b4cf54d22596b37fcf
PKG_MAINTAINER:= Steven Hessing <steven.hessing@gmail.com>
PKG_LICENSE:=BSD-2-Clause
+++ /dev/null
-From 812be7966d445ec56e88eab512f8fd2d57152427 Mon Sep 17 00:00:00 2001
-From: Vasiliy Glazov <vascom2@gmail.com>
-Date: Tue, 24 Jan 2023 19:29:36 +0300
-Subject: [PATCH] Fix build with GCC13 (#496)
-
-Due to changes in GCC13 need fix include.
----
- include/tins/ip_address.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/include/tins/ip_address.h
-+++ b/include/tins/ip_address.h
-@@ -33,7 +33,7 @@
- #include <string>
- #include <iosfwd>
- #include <functional>
--#include <stdint.h>
-+#include <cstdint>
- #include <tins/cxxstd.h>
- #include <tins/macros.h>
-
include $(TOPDIR)/rules.mk
PKG_NAME:=libupnp
-PKG_VERSION:=1.14.12
+PKG_VERSION:=1.14.18
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=@SF/pupnp
-PKG_HASH:=091c80aada1e939c2294245c122be2f5e337cc932af7f7d40504751680b5b5ac
+PKG_HASH:=16a7cee93ce2868ae63ab1a8164dc7de43577c59983b9f61293a310d6888dceb
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=BSD-3-Clause
-DBUILD_TESTING=OFF \
-Dclient=ON \
-Ddevice=ON \
- -Dwebserver=OFF \
+ -Dwebserver=ON \
-Dssdp=ON \
-Doptssdp=OFF \
-Dsoap=ON \
include $(TOPDIR)/rules.mk
PKG_NAME:=libusb-compat
-PKG_VERSION:=0.1.7
-PKG_RELEASE:=2
+PKG_VERSION:=0.1.8
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://github.com/libusb/libusb-compat-0.1/releases/download/v$(PKG_VERSION)
-PKG_HASH:=8259f8d5b084fe43c47823a939e955e0ba21942b8d112266c39d228cc14764d6
+PKG_HASH:=b692dcf674c070c8c0bee3c8230ce4ee5903f926d77dc8b968a4dd1b70f9b05c
PKG_MAINTAINER:= Felix Fietkau <nbd@nbd.name>
PKG_LICENSE:=LGPL-2.1-or-later
CATEGORY:=Libraries
TITLE:=libusb-0.1 compatibility library
DEPENDS:=+libusb-1.0
- URL:=http://libusb.wiki.sourceforge.net/
+ URL:=https://libusb.info/
ABI_VERSION:=4
endef
include $(TOPDIR)/rules.mk
PKG_NAME:=v4l-utils
-PKG_VERSION:=1.22.1
+PKG_VERSION:=1.26.1
PKG_RELEASE:=1
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://www.linuxtv.org/downloads/v4l-utils
-PKG_HASH:=65c6fbe830a44ca105c443b027182c1b2c9053a91d1e72ad849dfab388b94e31
+PKG_HASH:=4a71608c0ef7df2931176989e6d32b445c0bdc1030a2376d929c8ca6e550ec4e
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
-PKG_BUILD_FLAGS:=no-mips16 lto
-PKG_INSTALL:=1
-PKG_BUILD_PARALLEL:=1
+PKG_BUILD_FLAGS:=no-mips16
PKG_BUILD_DEPENDS:=!USE_GLIBC:argp-standalone
+PKG_CONFIG_DEPENDS:= \
+ CONFIG_BUILD_NLS \
+ CONFIG_PACKAGE_v4l-utils
include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/meson.mk
include $(INCLUDE_DIR)/nls.mk
define Package/libv4l/Default
SECTION:=libs
CATEGORY:=Libraries
TITLE+= wrapper libraries
- DEPENDS := +libpthread +librt $(ICONV_DEPENDS)
+ DEPENDS:=$(ICONV_DEPENDS)
LICENSE:=LGPL-2.1-or-later
LICENSE_FILES:=COPYING.libv4l
endef
SECTION:=utils
CATEGORY:=Utilities
TITLE+= utilities
- DEPENDS:= +libudev +libv4l +libstdcpp $(ICONV_DEPENDS) $(INTL_DEPENDS)
+ DEPENDS:=+libudev +libv4l +libstdcpp $(ICONV_DEPENDS) $(INTL_DEPENDS)
LICENSE:=GPL-2.0-or-later
LICENSE_FILES:=COPYING
endef
This package contains the video4linux utilities.
endef
-TARGET_LDFLAGS += \
- $(if $(CONFIG_USE_GLIBC),,-largp) \
- -Wl,--gc-sections,--as-needed
-
-CONFIGURE_ARGS+= \
- --disable-bpf \
- --disable-doxygen-doc \
- --disable-libdvbv5 \
- --disable-qv4l2 \
- --disable-qvidcap \
- --without-jpeg
+MESON_ARGS += \
+ -Db_lto=true \
+ -Ddefault_library=both \
+ -Dbpf=disabled \
+ -Dgconv=disabled \
+ -Djpeg=disabled \
+ -Dlibdvbv5=disabled \
+ -Dqv4l2=disabled \
+ -Dqvidcap=disabled \
+ -Dv4l-utils=$(if $(CONFIG_PACKAGE_v4l-utils),true,false) \
+ -Ddoxygen-doc=disabled
+
+TARGET_LDFLAGS += -Wl,--gc-sections
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
--- /dev/null
+--- a/lib/libdvbv5/meson.build
++++ b/lib/libdvbv5/meson.build
+@@ -124,6 +124,7 @@ install_headers(libdvbv5_api, subdir: 'l
+
+ libdvbv5_deps = [
+ dep_iconv,
++ dep_intl,
+ dep_libm,
+ dep_librt,
+ dep_libudev,
+--- a/meson.build
++++ b/meson.build
+@@ -178,6 +178,8 @@ size_t iconv (iconv_t cd, char * *inbuf,
+ endif
+ endif
+
++dep_intl = dependency('intl')
++
+ have_gconv = cc.has_header('gconv.h', required : get_option('gconv'))
+
+ # Detect system gconv directory
+--- a/utils/dvb/meson.build
++++ b/utils/dvb/meson.build
+@@ -1,5 +1,6 @@
+ dvb_common_deps = [
+ dep_argp,
++ dep_intl,
+ dep_libdvbv5,
+ dep_libudev,
+ dep_threads,
+--- a/utils/ir-ctl/meson.build
++++ b/utils/ir-ctl/meson.build
+@@ -12,6 +12,7 @@ ir_ctl_sources = files(
+
+ ir_ctl_deps = [
+ dep_argp,
++ dep_intl,
+ ]
+
+ ir_ctl = executable('ir-ctl',
+--- a/utils/keytable/meson.build
++++ b/utils/keytable/meson.build
+@@ -11,6 +11,7 @@ ir_keytable_sources = files(
+
+ ir_keytable_deps = [
+ dep_argp,
++ dep_intl,
+ ]
+
+ ir_keytable_system_dir = udevdir
--- /dev/null
+--- a/utils/v4l2-tracer/retrace.cpp
++++ b/utils/v4l2-tracer/retrace.cpp
+@@ -10,10 +10,7 @@ extern struct retrace_context ctx_retrac
+ void retrace_mmap(json_object *mmap_obj, bool is_mmap64)
+ {
+ json_object *mmap_args_obj;
+- if (is_mmap64)
+- json_object_object_get_ex(mmap_obj, "mmap64", &mmap_args_obj);
+- else
+- json_object_object_get_ex(mmap_obj, "mmap", &mmap_args_obj);
++ json_object_object_get_ex(mmap_obj, "mmap", &mmap_args_obj);
+
+ json_object *len_obj;
+ json_object_object_get_ex(mmap_args_obj, "len", &len_obj);
+@@ -46,10 +43,7 @@ void retrace_mmap(json_object *mmap_obj,
+ return;
+
+ void *buf_address_retrace_pointer = nullptr;
+- if (is_mmap64)
+- buf_address_retrace_pointer = mmap64(0, len, prot, flags, fd_retrace, off);
+- else
+- buf_address_retrace_pointer = mmap(0, len, prot, flags, fd_retrace, off);
++ buf_address_retrace_pointer = mmap(0, len, prot, flags, fd_retrace, off);
+
+ if (buf_address_retrace_pointer == MAP_FAILED) {
+ if (is_mmap64)
+@@ -116,10 +110,7 @@ void retrace_open(json_object *jobj, boo
+ int fd_trace = json_object_get_int(fd_trace_obj);
+
+ json_object *open_args_obj;
+- if (is_open64)
+- json_object_object_get_ex(jobj, "open64", &open_args_obj);
+- else
+- json_object_object_get_ex(jobj, "open", &open_args_obj);
++ json_object_object_get_ex(jobj, "open", &open_args_obj);
+
+ json_object *path_obj;
+ std::string path_trace;
+@@ -148,10 +139,7 @@ void retrace_open(json_object *jobj, boo
+ mode = s2number(json_object_get_string(mode_obj));
+
+ int fd_retrace = 0;
+- if (is_open64)
+- fd_retrace = open64(path_retrace.c_str(), oflag, mode);
+- else
+- fd_retrace = open(path_retrace.c_str(), oflag, mode);
++ fd_retrace = open(path_retrace.c_str(), oflag, mode);
+
+ if (fd_retrace <= 0) {
+ line_info("\n\tCan't open: %s", path_retrace.c_str());
include $(TOPDIR)/rules.mk
PKG_NAME:=libvpx
-PKG_VERSION:=1.13.1
+PKG_VERSION:=1.14.0
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://chromium.googlesource.com/webm/libvpx
-PKG_MIRROR_HASH:=55d6880564e354b2d310047773ac211790421e0f3ea70a9280213f7e27fa5f3a
+PKG_MIRROR_HASH:=d270343d5ecbc5a0d4185329ff3b4e51e523505a3f1ffc5024e4365a58e53d35
PKG_SOURCE_VERSION:=v$(PKG_VERSION)
PKG_MAINTAINER:=Luiz Angelo Daros de Luca <luizluca@gmail.com>
include $(TOPDIR)/rules.mk
PKG_NAME:=x264
-PKG_VERSION:=2020-10-26
+PKG_VERSION:=2024-01-13
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://code.videolan.org/videolan/x264.git
-PKG_SOURCE_VERSION:=4121277b40a667665d4eea1726aefdc55d12d110
-PKG_MIRROR_HASH:=4b4955e8f92d0c4afecbced2cc6414a123085f7472d198b3eeddaa9490b84f60
+PKG_SOURCE_VERSION:=4815ccadb1890572f2bf8b9d9553d56f6c9122ad
+PKG_MIRROR_HASH:=6a8179183bdd88f2d7032342c23670e66571724ad774f96a6abac19f8eb7aad4
PKG_MAINTAINER:=Adrian Panella <ianchi74@outlook.com>
PKG_LICENSE:=GPL-2.0-or-later
# Instead of blacklisting a boatload of platforms just enable
# optimization where it makes sense (matters) ie ARMv7+ and x86_64
-ifneq ($(findstring cortex-a,$(CPU_TYPE)),)
+ifneq ($(findstring cortex-a,$(CONFIG_CPU_TYPE)),)
CONFIGURE_ARGS += --enable-lto
- else
+else
ifneq ($(CONFIG_TARGET_x86_64),)
CONFIGURE_ARGS += --enable-lto
ifeq ($(CONFIG_NASM),y)
CONFIGURE_VARS+= AS=nasm
MAKE_FLAGS+= AS=nasm
endif
- else
+ else
CONFIGURE_VARS+= AS=
MAKE_FLAGS+= AS=
CONFIGURE_ARGS += --disable-asm
--- a/configure
+++ b/configure
-@@ -769,7 +769,13 @@ case $host_cpu in
+@@ -771,7 +771,13 @@ case $host_cpu in
AS_EXT=".asm"
ASFLAGS="$ASFLAGS -DARCH_X86_64=1 -I\$(SRCPATH)/common/x86/"
stack_alignment=16
if [ "$SYS" = MACOSX ]; then
ASFLAGS="$ASFLAGS -f macho64 -DPREFIX"
if cc_check '' "-arch x86_64"; then
-@@ -788,7 +794,11 @@ case $host_cpu in
+@@ -790,7 +796,11 @@ case $host_cpu in
RCFLAGS="--target=pe-x86-64 $RCFLAGS"
fi
else
--- a/configure
+++ b/configure
-@@ -975,9 +975,6 @@ if [ $asm = auto -a \( $ARCH = X86 -o $A
+@@ -988,9 +988,6 @@ if [ $asm = auto -a \( $ARCH = X86 -o $A
fi
if [ $asm = auto -a $ARCH = ARM ] ; then
include $(TOPDIR)/rules.mk
PKG_NAME:=xerces-c
-PKG_VERSION:=3.2.4
+PKG_VERSION:=3.2.5
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@APACHE/xerces/c/3/sources
-PKG_HASH:=075bc57940da0f9be6dd183c550c8ce0b9833e4550dc382048377a1a5e3b2bd9
+PKG_HASH:=6239e6035645b21bc9bf7f02004db334dce3fe6d85428ee4fe7e180c2d948230
PKG_MAINTAINER:=Álvaro Fernández Rojas <noltari@gmail.com>
PKG_LICENSE:=Apache-2.0
include $(TOPDIR)/rules.mk
PKG_NAME:=lmdb
-PKG_VERSION:=0.9.29
+PKG_VERSION:=0.9.32
PKG_RELEASE:=1
-PKG_SOURCE:=LMDB_$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=https://codeload.github.com/LMDB/lmdb/tar.gz/LMDB_$(PKG_VERSION)?
-PKG_HASH:=22054926b426c66d8f2bc22071365df6e35f3aacf19ad943bc6167d4cae3bebb
-PKG_BUILD_DIR:=$(BUILD_DIR)/lmdb-LMDB_$(PKG_VERSION)
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_URL:=https://git.openldap.org/openldap/openldap.git
+PKG_SOURCE_DATE:=2024-01-29
+PKG_SOURCE_VERSION:=LMDB_$(PKG_VERSION)
+PKG_MIRROR_HASH:=27ac1f056222f85b99568db0fd9048b23dee220c83efd1119f607492f4a53352
PKG_MAINTAINER:=Jan Pavlinec <jan.pavlinec1@gmail.com>
PKG_LICENSE:=OLDAP-2.8
########################################################################
-@@ -86,10 +87,10 @@ midl.o: midl.c midl.h
+@@ -87,10 +88,10 @@ midl.o: midl.c midl.h
$(CC) $(CFLAGS) $(CPPFLAGS) -c midl.c
mdb.lo: mdb.c lmdb.h midl.h
include $(TOPDIR)/rules.mk
PKG_NAME:=log4cplus
-PKG_VERSION:=2.0.8
-PKG_RELEASE:=2
+PKG_VERSION:=2.1.1
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@SF/$(PKG_NAME)
-PKG_HASH:=f5949e713cf8635fc554384ab99b04716e3430f28eed6dd7d71ad03d959b91a0
+PKG_HASH:=a1d8e67a207f90a9dd4f82b28a1f3ac6dead5a80c2bed071277a9e865698a82b
PKG_MAINTAINER:=BangLang Huang <banglang.huang@foxmail.com>, Rosy Song <rosysong@rosinson.com>
PKG_LICENSE:=BSD-2-Clause Apache-2.0
include $(TOPDIR)/rules.mk
PKG_NAME:=minizip-ng
-PKG_VERSION:=3.0.4
-PKG_RELEASE:=2
+PKG_VERSION:=4.0.4
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/zlib-ng/minizip-ng/tar.gz/$(PKG_VERSION)?
-PKG_HASH:=2ab219f651901a337a7d3c268128711b80330a99ea36bdc528c76b591a624c3c
+PKG_HASH:=955800fe39f9d830fcb84e60746952f6a48e41093ec7a233c63ad611b5fcfe9f
PKG_MAINTAINER:=David Woodhouse <dwmw2@infradead.org>
PKG_LICENSE:=Zlib
-DINSTALL_INC_DIR=/usr/include/minizip \
-DBUILD_SHARED_LIBS=ON \
-DMZ_BZIP2=OFF \
- -DMZ_COMPAT=ON \
-DMZ_ICONV=OFF \
-DMZ_LIBBSD=OFF \
-DMZ_LZMA=OFF \
SECTION:=libs
CATEGORY:=Libraries
DEPENDS:=+zlib
- URL:=https://github.com/nmoinvaz/minizip
+ URL:=https://github.com/zlib-ng/minizip-ng
endef
define Package/minizip-dev
include $(TOPDIR)/rules.mk
PKG_NAME:=openldap
-PKG_VERSION:=2.6.6
+PKG_VERSION:=2.6.7
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tgz
-PKG_SOURCE_URL:=https://gpl.savoirfairelinux.net/pub/mirrors/openldap/openldap-release/ \
- https://mirror.eu.oneandone.net/software/openldap/openldap-release/ \
+PKG_SOURCE_URL:=https://mirror.eu.oneandone.net/software/openldap/openldap-release/ \
https://www.openldap.org/software/download/OpenLDAP/openldap-release/
-PKG_HASH:=082e998cf542984d43634442dbe11da860759e510907152ea579bdc42fe39ea0
+PKG_HASH:=cd775f625c944ed78a3da18a03b03b08eea73c8aabc97b41bb336e9a10954930
PKG_LICENSE:=OLDAP-2.8
PKG_LICENSE_FILES:=LICENSE
PKG_CPE_ID:=cpe:/a:openldap:openldap
-DURANDOM_DEVICE=\\\"/dev/urandom\\\"
CONFIGURE_ARGS += \
- --enable-shared \
- --enable-static \
--enable-dynamic \
--enable-syslog \
--with-cyrus-sasl \
--with-threads \
--with-tls \
- --with-yielding_select="yes" \
+ --with-yielding-select="yes" \
--enable-null \
--disable-relay
include $(TOPDIR)/rules.mk
PKG_NAME:=postgresql
-PKG_VERSION:=15.3
+PKG_VERSION:=15.6
PKG_RELEASE:=1
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=PostgreSQL
http://ftp.postgresql.org/pub/source/v$(PKG_VERSION) \
ftp://ftp.postgresql.org/pub/source/v$(PKG_VERSION)
-PKG_HASH:=ffc7d4891f00ffbf5c3f4eab7fbbced8460b8c0ee63c5a5167133b9e6599d932
+PKG_HASH:=8455146ed9c69c93a57de954aead0302cafad035c2b242175d6aa1e17ebcb2fb
PKG_BUILD_FLAGS:=no-mips16
PKG_FIXUP:=autoreconf
include $(TOPDIR)/rules.mk
PKG_NAME:=redis
-PKG_VERSION:=6.2.6
+PKG_VERSION:=6.2.14
PKG_RELEASE:=1
-PKG_SOURCE_URL:=http://download.redis.io/releases/
+PKG_SOURCE_URL:=https://download.redis.io/releases/
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_HASH:=5b2b8b7a50111ef395bf1c1d5be11e6e167ac018125055daa8b5c2317ae131ab
+PKG_HASH:=34e74856cbd66fdb3a684fb349d93961d8c7aa668b06f81fd93ff267d09bc277
PKG_MAINTAINER:=Jan Pavlinec <jan.pavlinec1@gmail.com>
PKG_LICENSE:=BSD-3-Clause
include $(TOPDIR)/rules.mk
PKG_NAME:=taglib
-PKG_VERSION:=1.13
-PKG_RELEASE:=2
+PKG_VERSION:=2.0
+PKG_RELEASE:=1
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=https://codeload.github.com/taglib/taglib/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=58f08b4db3dc31ed152c04896ee9172d22052bc7ef12888028c01d8b1d60ade0
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_URL:=https://github.com/taglib/taglib
+PKG_SOURCE_VERSION:=v$(PKG_VERSION)
+PKG_MIRROR_HASH:=dd87b5d02264af72303f109fbaea11c8e1e6a98fe0617717008909b6fdc094a7
PKG_MAINTAINER:=
PKG_LICENSE:=LGPL-2.1-or-later
$(call Build/Compile/Default)
endef
-define Build/InstallDev
+TARGET_VARIANT=$(if $(ALL_VARIANTS),$(if $(VARIANT),$(VARIANT),$(firstword $(ALL_VARIANTS))))
+ifeq ($(if $(TARGET_VARIANT),$(BUILD_VARIANT)),$(TARGET_VARIANT))
+ define Build/InstallDev
$(INSTALL_DIR) \
$(1)/usr/include \
$(1)/usr/lib \
$(INSTALL_DATA) \
$(PKG_INSTALL_DIR)/usr/lib/pkgconfig/*.pc \
$(1)/usr/lib/pkgconfig/
-endef
+ endef
+endif
define Package/xmlrpc-c-libxml2/install
$(INSTALL_DIR) \
PKG_NAME:=yajl
PKG_VERSION:=2.1.0
-PKG_RELEASE:=2
+PKG_RELEASE:=3
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/lloyd/yajl
--- /dev/null
+From 31531a6e6b5641398237ce15b7e62da02d975fc6 Mon Sep 17 00:00:00 2001
+From: Like Ma <likemartinma@gmail.com>
+Date: Sat, 2 Dec 2023 19:55:55 +0800
+Subject: [PATCH] Fix for CVE-2023-33460a
+
+Memory leak in yajl 2.1.0 with use of yajl_tree_parse function
+See https://github.com/lloyd/yajl/issues/250#issuecomment-1628695214
+
+Origin: https://github.com/openEuler-BaseService/yajl/commit/23a122eddaa28165a6c219000adcc31ff9a8a698
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1039984
+Bug: https://github.com/lloyd/yajl/issues/250
+---
+ src/yajl_tree.c | 9 ++++++++-
+ 1 file changed, 8 insertions(+), 1 deletion(-)
+
+--- a/src/yajl_tree.c
++++ b/src/yajl_tree.c
+@@ -143,7 +143,7 @@ static yajl_val context_pop(context_t *c
+ ctx->stack = stack->next;
+
+ v = stack->value;
+-
++ free (stack->key);
+ free (stack);
+
+ return (v);
+@@ -444,7 +444,14 @@ yajl_val yajl_tree_parse (const char *in
+ snprintf(error_buffer, error_buffer_size, "%s", internal_err_str);
+ YA_FREE(&(handle->alloc), internal_err_str);
+ }
++ while(ctx.stack != NULL) {
++ yajl_val v = context_pop(&ctx);
++ yajl_tree_free(v);
++ }
+ yajl_free (handle);
++ //If the requested memory is not released in time, it will cause memory leakage
++ if(ctx.root)
++ yajl_tree_free(ctx.root);
+ return NULL;
+ }
+
+++ /dev/null
---- a/reformatter/CMakeLists.txt
-+++ b/reformatter/CMakeLists.txt
-@@ -26,7 +26,7 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_
-
- ADD_EXECUTABLE(json_reformat ${SRCS})
-
--TARGET_LINK_LIBRARIES(json_reformat yajl_s)
-+TARGET_LINK_LIBRARIES(json_reformat yajl_s m)
-
- # In some environments, we must explicitly link libm (like qnx,
- # thanks @shahbag)
+++ /dev/null
---- a/perf/CMakeLists.txt
-+++ b/perf/CMakeLists.txt
-@@ -20,4 +20,4 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_
-
- ADD_EXECUTABLE(perftest ${SRCS})
-
--TARGET_LINK_LIBRARIES(perftest yajl_s)
-+TARGET_LINK_LIBRARIES(perftest yajl_s m)
include $(TOPDIR)/rules.mk
PKG_NAME:=zlog
-PKG_VERSION:=1.2.15
-PKG_RELEASE:=2
+PKG_RELEASE:=1
+
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_URL:=https://github.com/HardySimpson/zlog
+PKG_SOURCE_VERSION:=1.2.17
+PKG_MIRROR_HASH:=fcad107b91aa251c61b7409dfbae0421662154c4dc158c7a34ee2f69cde8f9a2
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=https://github.com/HardySimpson/$(PKG_NAME)/archive/refs/tags/$(PKG_VERSION).tar.gz?
-PKG_HASH:=00037ab8d52772a95d645f1dcfd2c292b7cea326b54e63e219a5b7fdcb7e6508
PKG_MAINTAINER:=Marko Ratkaj <markoratkaj@gmail.com>
+PKG_LICENSE:=Apache-2.0
+PKG_LICENSE_FILES:=COPYING
PKG_CPE_ID:=cpe:/a:zlog_project:zlog
-PKG_INSTALL:=1
-PKG_BUILD_PARALLEL:=1
-
include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
define Package/zlog
SECTION:=libs
CATEGORY:=Libraries
TITLE:=Pure C logging library
URL:=http://hardysimpson.github.io/zlog/
- LICENSE:=LGPL-2.1-or-later
- LICENSE_FILES:=COPYING
endef
-MAKE_FLAGS+= \
- PREFIX="$(PKG_INSTALL_DIR)/usr"
-
define Package/zlog/description
zlog is a reliable, high-performance, thread safe, flexible, clear-model, pure C logging library.
endef
--- /dev/null
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -25,7 +25,6 @@ SET(zlog_so_ver ${CPACK_PACKAGE_VERSION_
+ message(STATUS "plateform : ${CMAKE_SYSTEM}")
+
+ add_definitions("-g -Wall -Wstrict-prototypes")
+-set(CMAKE_C_FLAGS "-std=c99 -pedantic -D_DEFAULT_SOURCE")
+ set(CMAKE_C_FLAGS_DEBUG "-ggdb3 -DDEBUG")
+ set(CMAKE_C_FLAGS_RELEASE "-O2")
+
include $(TOPDIR)/rules.mk
PKG_NAME:=zeromq
-PKG_VERSION:=4.3.4
-PKG_RELEASE:=4
+PKG_VERSION:=4.3.5
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/zeromq/libzmq/releases/download/v$(PKG_VERSION)
-PKG_HASH:=c593001a89f5a85dd2ddf564805deb860e02471171b3f204944857336295c3e5
+PKG_HASH:=6653ef5910f17954861fe72332e68b03ca6e4d9c7160eb3a8de5a5a913bfab43
PKG_MAINTAINER:=Dirk Chang <dirk@kooiot.com>
PKG_LICENSE:=GPL-3.0-or-later
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -793,7 +793,7 @@ else()
+@@ -809,7 +809,7 @@ else()
# message(FATAL_ERROR "WITH_OPENPGM not implemented")
if(NOT OPENPGM_PKGCONFIG_NAME)
endif()
set(OPENPGM_PKGCONFIG_NAME
-@@ -804,6 +804,8 @@ else()
+@@ -820,6 +820,8 @@ else()
if(OPENPGM_FOUND)
message(STATUS ${OPENPGM_PKGCONFIG_NAME}" found")
set(pkg_config_names_private "${pkg_config_names_private} ${OPENPGM_PKGCONFIG_NAME}")
else()
message(
-@@ -1447,6 +1449,10 @@ if(BUILD_SHARED)
+@@ -1494,6 +1496,10 @@ if(BUILD_SHARED)
endif()
endif()
I rewrote the code that used it without the need for it.
---
CMakeLists.txt | 41 ++++++-----------------------
- Makefile.am | 12 ++++-----
builds/cmake/platform.hpp.in | 2 --
- configure.ac | 39 +--------------------------
- packaging/debian/control | 2 --
- packaging/debian/zeromq.dsc | 2 +-
- packaging/redhat/zeromq.spec | 2 +-
src/compat.hpp | 51 +++++++++++++++++++++++-------------
8 files changed, 50 insertions(+), 101 deletions(-)
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -240,19 +240,6 @@ if(NOT ZMQ_USE_GNUTLS)
- endif()
- endif()
-
--if(NOT MSVC)
-- option(WITH_LIBBSD "Use libbsd instead of builtin strlcpy" ON)
-- if(WITH_LIBBSD)
-- pkg_check_modules(LIBBSD "libbsd")
-- if(LIBBSD_FOUND)
-- message(STATUS "Using libbsd")
-- set(pkg_config_names_private "${pkg_config_names_private} libbsd")
-- set(ZMQ_HAVE_LIBBSD 1)
-- endif()
-- endif()
-- check_cxx_symbol_exists(strlcpy string.h ZMQ_HAVE_STRLCPY)
--endif()
--
- # Select curve encryption library, defaults to tweetnacl To use libsodium instead, use --with-libsodium(must be
- # installed) To disable curve, use --disable-curve
-
-@@ -1437,10 +1424,6 @@ if(BUILD_SHARED)
+@@ -1484,10 +1484,6 @@ if(BUILD_SHARED)
target_link_libraries(libzmq ${NSS3_LIBRARIES})
endif()
if(SODIUM_FOUND)
target_link_libraries(libzmq ${SODIUM_LIBRARIES})
# On Solaris, libsodium depends on libssp
-@@ -1482,10 +1465,6 @@ if(BUILD_STATIC)
- target_link_libraries(libzmq-static ${GNUTLS_LIBRARIES})
+@@ -1534,10 +1530,6 @@ if(BUILD_STATIC)
+ target_include_directories(libzmq-static PRIVATE "${GNUTLS_INCLUDE_DIR}")
endif()
- if(LIBBSD_FOUND)
if(NSS3_FOUND)
target_link_libraries(libzmq-static ${NSS3_LIBRARIES})
endif()
-@@ -1550,10 +1529,6 @@ if(BUILD_SHARED)
- target_link_libraries(${perf-tool} ${GNUTLS_LIBRARIES})
+@@ -1607,10 +1599,6 @@ if(BUILD_SHARED)
+ target_include_directories(${perf-tool} PRIVATE "${GNUTLS_INCLUDE_DIR}")
endif()
- if(LIBBSD_FOUND)
if(NSS3_FOUND)
target_link_libraries(${perf-tool} ${NSS3_LIBRARIES})
endif()
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -351,11 +351,11 @@ if HAVE_VSCRIPT_COMPLEX
- src_libzmq_la_LDFLAGS += $(VSCRIPT_LDFLAGS),$(srcdir)/src/libzmq.vers
- endif
-
--src_libzmq_la_CPPFLAGS = $(CODE_COVERAGE_CPPFLAGS) $(LIBUNWIND_CFLAGS) $(LIBBSD_CFLAGS)
--src_libzmq_la_CFLAGS = $(CODE_COVERAGE_CFLAGS) $(LIBUNWIND_CFLAGS) $(LIBBSD_CFLAGS)
-+src_libzmq_la_CPPFLAGS = $(CODE_COVERAGE_CPPFLAGS) $(LIBUNWIND_CFLAGS)
-+src_libzmq_la_CFLAGS = $(CODE_COVERAGE_CFLAGS) $(LIBUNWIND_CFLAGS)
- src_libzmq_la_CXXFLAGS = @LIBZMQ_EXTRA_CXXFLAGS@ $(CODE_COVERAGE_CXXFLAGS) \
-- $(LIBUNWIND_CFLAGS) $(LIBBSD_CFLAGS)
--src_libzmq_la_LIBADD = $(CODE_COVERAGE_LDFLAGS) $(LIBUNWIND_LIBS) $(LIBBSD_LIBS)
-+ $(LIBUNWIND_CFLAGS)
-+src_libzmq_la_LIBADD = $(CODE_COVERAGE_LDFLAGS) $(LIBUNWIND_LIBS)
-
- if USE_NSS
- src_libzmq_la_CPPFLAGS += ${NSS3_CFLAGS}
-@@ -849,10 +849,10 @@ tests_test_security_curve_SOURCES += \
- endif
-
- tests_test_security_curve_LDADD = \
-- ${TESTUTIL_LIBS} src/libzmq.la $(LIBUNWIND_LIBS) $(LIBBSD_LIBS)
-+ ${TESTUTIL_LIBS} src/libzmq.la $(LIBUNWIND_LIBS)
- tests_test_security_curve_CPPFLAGS = \
- ${TESTUTIL_CPPFLAGS} \
-- ${LIBUNWIND_CFLAGS} ${LIBBSD_CFLAGS}
-+ ${LIBUNWIND_CFLAGS}
-
- if USE_LIBSODIUM
- tests_test_security_curve_CPPFLAGS += \
--- a/builds/cmake/platform.hpp.in
+++ b/builds/cmake/platform.hpp.in
-@@ -52,8 +52,6 @@
+@@ -56,8 +56,6 @@
#cmakedefine ZMQ_HAVE_PTHREAD_SET_AFFINITY
#cmakedefine HAVE_ACCEPT4
#cmakedefine HAVE_STRNLEN
-#cmakedefine ZMQ_HAVE_LIBBSD
#cmakedefine ZMQ_HAVE_IPC
-
---- a/configure.ac
-+++ b/configure.ac
-@@ -12,7 +12,7 @@ AC_CONFIG_AUX_DIR(config)
- AC_CONFIG_MACRO_DIR(config)
- AC_CONFIG_HEADERS([src/platform.hpp])
- AM_INIT_AUTOMAKE(foreign subdir-objects tar-ustar dist-zip)
--# Allow "configure --disable-maintainer-mode" to disable timestamp checking
-+# Allow "configure --disable-maintainer-mode" to disable timestamp checking
- AM_MAINTAINER_MODE([enable])
-
- m4_pattern_allow([AC_PROG_CC_C99])
-@@ -806,43 +806,6 @@ AC_COMPILE_IFELSE(
- ],[
- AC_MSG_RESULT([no])
- ])
--
--AC_ARG_ENABLE([libbsd],
-- [AS_HELP_STRING([--enable-libbsd],
-- [enable libbsd [default=auto]])],
-- [enable_libbsd=$enableval],
-- [enable_libbsd="auto"])
--
--if test "x$enable_libbsd" != "xno"; then
-- PKG_CHECK_MODULES(LIBBSD, [libbsd],
-- [
-- AC_DEFINE(ZMQ_HAVE_LIBBSD, 1, [The libbsd library is to be used])
-- AC_SUBST([LIBBSD_CFLAGS])
-- AC_SUBST([LIBBSD_LIBS])
-- PKGCFG_NAMES_PRIVATE="$PKGCFG_NAMES_PRIVATE libbsd"
-- found_libbsd="yes"
-- ],
-- [
-- found_libbsd="no"
-- if test "x$enable_libbsd" = "xyes"; then
-- AC_MSG_ERROR([Cannot find libbsd])
-- else
-- AC_MSG_WARN([Cannot find libbsd])
-- fi
-- ])
--fi
--AC_MSG_CHECKING([whether strlcpy is available])
--AC_COMPILE_IFELSE(
-- [AC_LANG_PROGRAM(
-- [[#include <string.h>]],
-- [[char buf [100]; size_t bar = strlcpy (buf, "foo", 100); (void)bar; return 0;]])
-- ],[
-- AC_MSG_RESULT([yes])
-- AC_DEFINE(ZMQ_HAVE_STRLCPY, [1],
-- [strlcpy is available])
-- ],[
-- AC_MSG_RESULT([no])
--])
-
- # pthread_setname is non-posix, and there are at least 4 different implementations
- AC_MSG_CHECKING([whether signature of pthread_setname_np() has 1 argument])
+ #cmakedefine ZMQ_HAVE_STRUCT_SOCKADDR_UN
--- a/src/compat.hpp
+++ b/src/compat.hpp
-@@ -37,26 +37,41 @@
+@@ -10,26 +10,41 @@
#define strcasecmp _stricmp
#define strtok_r strtok_s
#else
+++ /dev/null
-Patch-Source: https://github.com/zeromq/libzmq/commit/438d5d88392baffa6c2c5e0737d9de19d6686f0d
---
-From 438d5d88392baffa6c2c5e0737d9de19d6686f0d Mon Sep 17 00:00:00 2001
-From: Sergei Trofimovich <slyich@gmail.com>
-Date: Tue, 20 Dec 2022 21:45:16 +0000
-Subject: [PATCH] src/secure_allocator.hpp: define missing 'rebind' type
-
-`gcc-13` added an assert to standard headers to make sure custom
-allocators have intended implementation of rebind type instead
-of inherited rebind. gcc change:
- https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=64c986b49558a7
-
-Without the fix build fails on this week's `gcc-13` as:
-
- [ 92%] Building CXX object tests/CMakeFiles/test_security_curve.dir/test_security_curve.cpp.o
- In file included from /<<NIX>>/gcc-13.0.0/include/c++/13.0.0/ext/alloc_traits.h:34,
- from /<<NIX>>/gcc-13.0.0/include/c++/13.0.0/bits/stl_uninitialized.h:64,
- from /<<NIX>>/gcc-13.0.0/include/c++/13.0.0/memory:69,
- from tests/../src/secure_allocator.hpp:42,
- from tests/../src/curve_client_tools.hpp:49,
- from tests/test_security_curve.cpp:53:
- /<<NIX>>/gcc-13.0.0/include/c++/13.0.0/bits/alloc_traits.h: In instantiation of 'struct std::__allocator_traits_base::__rebind<zmq::secure_allocator_t<unsigned char>, unsigned char, void>':
- /<<NIX>>/gcc-13.0.0/include/c++/13.0.0/bits/alloc_traits.h:94:11: required by substitution of 'template<class _Alloc, class _Up> using std::__alloc_rebind = typename std::__allocator_traits_base::__rebind<_Alloc, _Up>::type [with _Alloc = zmq::secure_allocator_t<unsigned char>; _Up = unsigned char]'
- /<<NIX>>/gcc-13.0.0/include/c++/13.0.0/bits/alloc_traits.h:228:8: required by substitution of 'template<class _Alloc> template<class _Tp> using std::allocator_traits< <template-parameter-1-1> >::rebind_alloc = std::__alloc_rebind<_Alloc, _Tp> [with _Tp = unsigned char; _Alloc = zmq::secure_allocator_t<unsigned char>]'
- /<<NIX>>/gcc-13.0.0/include/c++/13.0.0/ext/alloc_traits.h:126:65: required from 'struct __gnu_cxx::__alloc_traits<zmq::secure_allocator_t<unsigned char>, unsigned char>::rebind<unsigned char>'
- /<<NIX>>/gcc-13.0.0/include/c++/13.0.0/bits/stl_vector.h:88:21: required from 'struct std::_Vector_base<unsigned char, zmq::secure_allocator_t<unsigned char> >'
- /<<NIX>>/gcc-13.0.0/include/c++/13.0.0/bits/stl_vector.h:423:11: required from 'class std::vector<unsigned char, zmq::secure_allocator_t<unsigned char> >'
- tests/../src/curve_client_tools.hpp:64:76: required from here
- /<<NIX>>/gcc-13.0.0/include/c++/13.0.0/bits/alloc_traits.h:70:31: error: static assertion failed: allocator_traits<A>::rebind_alloc<A::value_type> must be A
- 70 | _Tp>::value,
- | ^~~~~
-
-The change adds trivial `rebind` definition with expected return type
-and satisfies conversion requirements.
----
- src/secure_allocator.hpp | 11 +++++++++++
- 1 file changed, 11 insertions(+)
-
---- a/src/secure_allocator.hpp
-+++ b/src/secure_allocator.hpp
-@@ -95,6 +95,17 @@ bool operator!= (const secure_allocator_
- #else
- template <typename T> struct secure_allocator_t : std::allocator<T>
- {
-+ secure_allocator_t () ZMQ_DEFAULT;
-+
-+ template <class U>
-+ secure_allocator_t (const secure_allocator_t<U> &) ZMQ_NOEXCEPT
-+ {
-+ }
-+
-+ template <class U> struct rebind
-+ {
-+ typedef secure_allocator_t<U> other;
-+ };
- };
- #endif
- }
PKG_NAME:=imagemagick
PKG_VERSION:=7.1.1
-PKG_REVISION:=27
+PKG_REVISION:=28
PKG_RELEASE:=1
PKG_MAINTAINER:=Aleksey Vasilenko <aleksey.vasilenko@gmail.com>
-PKG_SOURCE:=ImageMagick-$(PKG_VERSION)-$(PKG_REVISION).tar.gz
+PKG_SOURCE:=ImageMagick-$(PKG_VERSION)-$(PKG_REVISION).tar.xz
PKG_SOURCE_URL:=https://imagemagick.org/archive
-PKG_HASH:=df0af0386df5bb3333ac9b1173ac4c893dcdd20b28100128e857f3d8f6466e1a
+PKG_HASH:=ee4b6cdaaf2fa6020b6a3c6e055d993e970361a2fadf2bf2f984308b35c61915
PKG_BUILD_DIR:=$(BUILD_DIR)/ImageMagick-$(PKG_VERSION)-$(PKG_REVISION)
PKG_FIXUP:=autoreconf
include $(TOPDIR)/rules.mk
PKG_NAME:=minisatip
-PKG_VERSION:=1.0.4
-PKG_RELEASE:=2
+PKG_VERSION:=1.3.2
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=https://codeload.github.com/catalinii/minisatip/tar.gz/$(PKG_VERSION)?
-PKG_HASH:=aa6ef68228a19faf04cf1283e994cae80134a01d9ee6bc45b9969d145b1281e5
+PKG_SOURCE_URL:=https://codeload.github.com/catalinii/minisatip/tar.gz/v$(PKG_VERSION)?
+PKG_HASH:=0c5d2153e3ab080e6b33474a6947e7f1ab8057e7f116d33ccbe2bd710a3ab0b1
PKG_MAINTAINER:=Daniel Kucera <github@danman.eu>
PKG_LICENSE:=GPL-2.0-or-later
PKG_NAME:=v4l2camera
PKG_VERSION:=0.1.8
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/mpromonet/v4l2camera
PKG_LICENSE:=Unlicense
PKG_LICENSE_FILES:=LICENCE
+PKG_BUILD_FLAGS:=gc-sections lto
+
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
PKG_NAME:=autossh
PKG_VERSION:=1.4g
-PKG_RELEASE:=4
+PKG_RELEASE:=5
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tgz
PKG_SOURCE_URL:=https://www.harding.motd.ca/autossh/
config_get path "$section" path
config_get pidfile "$section" pidfile
- if [ -z "$localport" ]; then
- echo "autossh: localport option is required"
+ if [ -n "$localport" ] && [ -n "$remoteport" ]; then
+ if [ -n "$remotehost" ]; then
+ forwarding="-L ${localport}:${remotehost}:${remoteport}"
+ else
+ forwarding="-R ${remoteport}:${localhost}:${localport}"
+ fi
+ elif [ -n "$localport" ] || [ -n "$remoteport" ]; then
+ echo "autossh: both localport and remoteport options are required"
return 1
fi
- if [ -n "$remotehost" ]; then
- forwarding="-L ${localport}:${remotehost}:${remoteport}"
- else
- forwarding="-R ${remoteport}:${localhost}:${localport}"
- fi
-
procd_open_instance "$section"
procd_set_param command /usr/sbin/autossh ${forwarding} ${ssh}
procd_set_param respawn ${respawn_threshold:-3600} ${respawn_timeout:-5} ${respawn_retry:-5}
include $(TOPDIR)/rules.mk
PKG_NAME:=cloudflared
-PKG_VERSION:=2024.1.5
+PKG_VERSION:=2024.2.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/cloudflare/cloudflared/tar.gz/$(PKG_VERSION)?
-PKG_HASH:=0a0da188e162680927ebafcef32c3366aed26661273dc63c540bbebee435bd4e
+PKG_HASH:=62d8b3c32fcddee24e22707a22b4a33a014cd9314471e069f991fd359a102d75
PKG_LICENSE:=Apache-2.0
PKG_LICENSE_FILES:=LICENSE
include $(TOPDIR)/rules.mk
PKG_NAME:=croc
-PKG_VERSION:=9.6.6
+PKG_VERSION:=9.6.9
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/schollz/croc/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=9dd954e0068df2be416c71161665bfc283f150d30ba0bf96cee723701e93616f
+PKG_HASH:=5f3aa59b938e8dd0aad1c8c00933740c6cc612f392ef19f942429bb15fbf82cf
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=LICENSE
include $(TOPDIR)/rules.mk
PKG_NAME:=git-lfs
-PKG_VERSION:=3.0.1
+PKG_VERSION:=3.4.1
PKG_RELEASE:=1
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=https://codeload.github.com/git-lfs/git-lfs/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=ea47feff8cf10855393dd20f22a7168c462043c7a654a5fd0546af0a9d28a3a2
+PKG_SOURCE:=$(PKG_NAME)-v$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://github.com/git-lfs/git-lfs/releases/download/v$(PKG_VERSION)
+PKG_HASH:=89acbe51799c5d7bdf6d8e6704fcd1a07735ee7d1ed67a0bc646a5d9a9d1099f
PKG_MAINTAINER:=Jan Pavlinec <jan.pavlinec1@gmail.com>
PKG_LICENSE:=MIT
SECTION:=net
CATEGORY:=Network
TITLE:=Git Large File Storage
- URL:=https://git-lfs.github.com
+ URL:=https://git-lfs.com
DEPENDS:=$(GO_ARCH_DEPENDS) +git
endef
include $(TOPDIR)/rules.mk
PKG_NAME:=git
-PKG_VERSION:=2.39.2
+PKG_VERSION:=2.43.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@KERNEL/software/scm/git/
-PKG_HASH:=475f75f1373b2cd4e438706185175966d5c11f68c4db1e48c26257c43ddcf2d6
+PKG_HASH:=5446603e73d911781d259e565750dcd277a42836c8e392cac91cf137aa9b76ec
PKG_LICENSE:=GPL-2.0-or-later
PKG_LICENSE_FILES:=COPYING
--- a/configure.ac
+++ b/configure.ac
-@@ -955,7 +955,8 @@ AC_RUN_IFELSE(
+@@ -964,7 +964,8 @@ AC_RUN_IFELSE(
FILE *f = fopen(".", "r");
return f != NULL;]])],
[ac_cv_fread_reads_directories=no],
])
if test $ac_cv_fread_reads_directories = yes; then
FREAD_READS_DIRECTORIES=UnfortunatelyYes
-@@ -989,7 +990,8 @@ AC_RUN_IFELSE(
+@@ -998,7 +999,8 @@ AC_RUN_IFELSE(
if (snprintf(buf, 3, "%s", "12345") != 5
|| strcmp(buf, "12")) return 1]])],
[ac_cv_snprintf_returns_bogus=no],
])
if test $ac_cv_snprintf_returns_bogus = yes; then
SNPRINTF_RETURNS_BOGUS=UnfortunatelyYes
-@@ -1012,7 +1014,8 @@ yippeeyeswehaveit
+@@ -1021,7 +1023,8 @@ yippeeyeswehaveit
#endif
]),
[ac_cv_sane_mode_bits=yes],
--- a/imap-send.c
+++ b/imap-send.c
-@@ -274,8 +274,10 @@ static int ssl_socket_connect(struct ima
+@@ -279,8 +279,10 @@ static int ssl_socket_connect(struct ima
int ret;
X509 *cert;
include $(TOPDIR)/rules.mk
PKG_NAME:=gitolite
-PKG_VERSION:=3.6.11
-PKG_RELEASE:=3
+PKG_VERSION:=3.6.13
+PKG_RELEASE:=1
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_HASH:=2166a61b14de19e605b14f4a13a070fbfd5ecd247b6fd725108f111198a2c121
-PKG_SOURCE_URL:=https://codeload.github.com/sitaramc/gitolite/tar.gz/v$(PKG_VERSION)?
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_URL:=https://github.com/sitaramc/gitolite.git
+PKG_SOURCE_VERSION:=v$(PKG_VERSION)
+PKG_MIRROR_HASH:=f4ac58bc11fde65ef2c6a07f84af214989324147c4aa117ae1483ba0453e402f
PKG_CPE_ID:=cpe:/a:sitaram_chamarty:gitolite
+perlbase-utf8 \
TITLE:=Easy administration of git repositories
- URL:=http://gitolite.com/gitolite
+ URL:=https://gitolite.com/gitolite/
USERID:=git=382:git=382
endef
+ while ( $pos <= length($keydata) ) {
+ $partlen = unpack('N', substr $keydata, $pos, 4) or last;
+ $data = unpack('s>*', substr $keydata, $pos + 4, 4) or last;
-+ $pos = $pos + 4 + $partlen;
++ $pos = $pos + 4 + $partlen;
+ push @keyparts, $data;
+ }
+ return ( $algorithm, @keyparts );
+# If the file cannot be parsed it will be undef
+# Returns (restrictions, algorithm, PEMkey, comment)
+sub ssh_parse_line($) {
-+ my $ssh_line = shift;
-+ my @ssh_parts = split / /, $ssh_line, 5;
-+ if (scalar @ssh_parts < 4) {
-+ @ssh_parts = ('', @ssh_parts);
-+ }
-+ if (scalar @ssh_parts > 4) {
-+ @ssh_parts = @ssh_parts[0,3]
-+ }
-+ if (scalar @ssh_parts < 4) {
-+ @ssh_parts = undef;
-+ }
-+ return ( @ssh_parts );
++ my $ssh_line = shift;
++ my @ssh_parts = split / /, $ssh_line, 5;
++ if (scalar @ssh_parts < 4) {
++ @ssh_parts = ('', @ssh_parts);
++ }
++ if (scalar @ssh_parts > 4) {
++ @ssh_parts = @ssh_parts[0,3]
++ }
++ if (scalar @ssh_parts < 4) {
++ @ssh_parts = undef;
++ }
++ return ( @ssh_parts );
+}
+
+# ----------------------------------------------------------------------
my $in = shift;
-f $in or die "file not found: $in\n";
my $fh;
-- open( $fh, "ssh-keygen -l -f $in |" ) or die "could not fork: $!\n";
+- open( $fh, "ssh-keygen -l -f $in 2>&1 |" ) or die "could not fork: $!\n";
+ open( $fh, $in ) or die "could not open $in: $!\n";
my $output = <$fh>;
chomp $output;
include $(TOPDIR)/rules.mk
PKG_NAME:=iodine
-PKG_VERSION:=0.7.0
+PKG_VERSION:=0.8.0
PKG_RELEASE:=4
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://code.kryo.se/iodine/
-PKG_HASH:=ad2b40acf1421316ec15800dcde0f587ab31d7d6f891fa8b9967c4ded93c013e
+PKG_HASH:=546e92cf8617f7970ea81c850b1063eb189c68c406d0c6a67e02c55e72e714c6
PKG_MAINTAINER:=Uwe Kleine-König <uwe+openwrt@kleine-koenig.org>
PKG_LICENSE:=ISC
--- a/src/osflags
+++ b/src/osflags
-@@ -16,12 +16,6 @@ link)
+@@ -18,13 +18,6 @@ link)
windows32)
echo '-lws2_32 -liphlpapi';
;;
- Linux)
- FLAGS="";
- [ -e /usr/include/selinux/selinux.h ] && FLAGS="$FLAGS -lselinux";
-- [ -e /usr/include/systemd/sd-daemon.h ] && FLAGS="$FLAGS -lsystemd-daemon";
+- "$PKG_CONFIG" --exists libsystemd-daemon && FLAGS="$FLAGS $($PKG_CONFIG --libs libsystemd-daemon)";
+- "$PKG_CONFIG" --exists libsystemd && FLAGS="$FLAGS $($PKG_CONFIG --libs libsystemd)";
- echo $FLAGS;
- ;;
esac
;;
cflags)
-@@ -34,8 +28,6 @@ cflags)
+@@ -40,9 +33,6 @@ cflags)
;;
Linux)
FLAGS="-D_GNU_SOURCE"
- [ -e /usr/include/selinux/selinux.h ] && FLAGS="$FLAGS -DHAVE_SETCON";
-- [ -e /usr/include/systemd/sd-daemon.h ] && FLAGS="$FLAGS -DHAVE_SYSTEMD";
+- "$PKG_CONFIG" --exists libsystemd-daemon && FLAGS="$FLAGS -DHAVE_SYSTEMD";
+- "$PKG_CONFIG" --exists libsystemd && FLAGS="$FLAGS -DHAVE_SYSTEMD";
echo $FLAGS;
;;
- esac
+ GNU/kFreeBSD|GNU)
--- a/src/osflags
+++ b/src/osflags
-@@ -27,7 +27,7 @@ cflags)
- echo '-Dsocklen_t=int';
+@@ -32,7 +32,7 @@ cflags)
+ echo '-D__APPLE_USE_RFC_3542';
;;
Linux)
- FLAGS="-D_GNU_SOURCE"
+ FLAGS="-D_GNU_SOURCE -include endian.h"
echo $FLAGS;
;;
- esac
+ GNU/kFreeBSD|GNU)
include $(TOPDIR)/rules.mk
PKG_NAME:=iptraf-ng
-PKG_VERSION:=1.1.4
+PKG_VERSION:=1.2.1
PKG_RELEASE:=1
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=https://infrastructure.fedoraproject.org/infra/hosted-content/$(PKG_NAME)/$(PKG_NAME)
-PKG_HASH:=79140cf07c0cceb1b5723242847a73aa86f5e4f9dccfe8970fda6801d347eb09
+PKG_SOURCE:=v$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://src.fedoraproject.org/repo/pkgs/iptraf-ng/v$(PKG_VERSION).tar.gz/sha512/44d36fc92cdbf379f62cb63638663c3ee610225b9c28d60ee55e62e358f398a6b0db281129327b3472e45fb553ee3dd605af09c129f2233f8839ae3dbd799384
+PKG_HASH:=9f5cef584065420dea1ba32c86126aede1fa9bd25b0f8362b0f9fd9754f00870
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=LICENSE
CATEGORY:=Network
DEPENDS:=+libncurses
TITLE:=A console-based network monitoring program
- URL:=https://infrastructure.fedoraproject.org/infra/hosted-content/iptraf-ng/
+ URL:=https://github.com/iptraf-ng/iptraf-ng
endef
define Package/iptraf-ng/description
CPPFLAGS="$(TARGET_CPPFLAGS) -D_GNU_SOURCE" \
NCURSES_CFLAGS="$(TARGET_CFLAGS)" \
NCURSES_LDFLAGS="$(TARGET_LDFLAGS) -lncurses -lpanel" \
- iptraf-ng rvnamed-ng
+ iptraf-ng
define Package/iptraf-ng/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/iptraf-ng $(1)/usr/bin/
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/rvnamed-ng $(1)/usr/bin/
endef
$(eval $(call BuildPackage,iptraf-ng))
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=jool
-PKG_VERSION:=4.1.10
+PKG_VERSION:=4.1.11
PKG_RELEASE:=1
PKG_LICENSE:=GPL-2.0-only
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/NICMx/Jool.git
-PKG_SOURCE_VERSION:=47334c9124b7a2e3253fb279e6c33acb9c2b09a6
-PKG_MIRROR_HASH:=ef34f68eb911c97016180ed09e852625a3c0fe49f7d7574382a03db75c23b60e
+PKG_SOURCE_VERSION:=aed966aa4873af2d84fd445f49cf33f719539c9e
+PKG_MIRROR_HASH:=84dcd6884d849f45a3374ab25654b20cef681a3bcf0fb7f7381281f6f14c31a4
PKG_BUILD_DIR=$(KERNEL_BUILD_DIR)/$(PKG_SOURCE_SUBDIR)
PKG_BUILD_PARALLEL:=1
+++ /dev/null
-From aa511f8856b4a437de005f23c6932948fffd8768 Mon Sep 17 00:00:00 2001
-From: Alberto Leiva Popper <ydahhrk@gmail.com>
-Date: Sat, 1 Jul 2023 09:52:09 -0600
-Subject: [PATCH] Include csum_tcpudp_magic's header
-
-Fixes build in some kernels.
-In fact, I'm not sure why I'm not getting the warning. It looks as
-though I should.
-
-Thanks to Charles Hardin for this patch.
-
-Fixes #407.
----
- src/mod/common/rfc7915/6to4.c | 1 +
- 1 file changed, 1 insertion(+)
-
---- a/src/mod/common/rfc7915/6to4.c
-+++ b/src/mod/common/rfc7915/6to4.c
-@@ -1,6 +1,7 @@
- #include "mod/common/rfc7915/6to4.h"
-
- #include <linux/inetdevice.h>
-+#include <net/ip6_checksum.h>
- #include <net/udp.h>
- #include <net/tcp.h>
-
static int truncated(unsigned int tabs)
--- a/src/mod/common/xlator.c
+++ b/src/mod/common/xlator.c
-@@ -889,7 +889,7 @@ void xlator_put(struct xlator *jool)
+@@ -890,7 +890,7 @@ void xlator_put(struct xlator *jool)
static bool offset_equals(struct instance_entry_usr *offset,
struct jool_instance *instance)
{
include $(TOPDIR)/rules.mk
PKG_NAME:=knxd
-PKG_VERSION:=0.14.60
+PKG_VERSION:=0.14.61
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/knxd/knxd/tar.gz/$(PKG_VERSION)?
-PKG_HASH:=0d7e7265761e291014f670dce6a24efc4a6e9ef1a88e2f96ffa347c98c91588f
+PKG_HASH:=b5284c89a55a2c53e0ff769ec4f736fc1ad4b55afdd2a18b9258fa95f708d798
PKG_MAINTAINER:=Othmar Truniger <github@truniger.ch>
PKG_LICENSE:=GPL-2.0-or-later
-test -d .git || exit
-# git describe --tags
-git log --format=format:%D | perl -ne 'next unless s#.*tag: ##; s#,.*##; next if m#/#; print; exit;'
-+echo -n "0.14.60"
++echo -n "0.14.61"
include $(TOPDIR)/rules.mk
PKG_NAME:=lynx
-PKG_VERSION:=2.8.9rel.1
+PKG_VERSION:=2.9.0
PKG_RELEASE:=2
PKG_LICENSE:=GPL-2.0
PKG_CPE_ID:=cpe:/a:lynx:lynx
PKG_SOURCE:=$(PKG_NAME)$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://invisible-mirror.net/archives/lynx/tarballs/ \
- https://ftp.icm.edu.pl/packages/lynx/tarballs/ \
- http://ftp.oregonstate.edu/pub/blfs/conglomeration/lynx/ \
- https://ftp.osuosl.org/pub/blfs/conglomeration/lynx/ \
https://fossies.org/linux/www/
-PKG_HASH:=387f193d7792f9cfada14c60b0e5c0bff18f227d9257a39483e14fa1aaf79595
+PKG_HASH:=5bcae5e2e6043ca7b220963a97763c49c13218d849ffda6be7739bfd5a2d36ff
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)$(PKG_VERSION)
-# try current development version
-# URL for current development version - http://invisible-island.net/datafiles/release/lynx-cur.tar.bz2
-
include $(INCLUDE_DIR)/package.mk
SECTION:=net
CATEGORY:=Network
DEPENDS:=+libncursesw +zlib +libopenssl +ca-bundle
- URL:=http://lynx.invisible-island.net/
+ URL:=https://lynx.invisible-island.net/
endef
define Package/lynx/description
Classic non-graphical (text-mode) web browser
endef
-# customize as you need
-CONFIGURE_ARGS += --with-zlib --with-ssl \
- --with-build-cc="$(HOSTCC)" \
- --with-build-cflags="$(HOST_CFLAGS)" \
- --with-build-cppflags="$(HOST_CPPFLAGS)" \
- --with-build-ldflags="$(HOST_LDFLAGS)" \
- --enable-ipv6 \
- --with-screen=ncursesw \
- --enable-widec \
- --enable-locale-charset \
- --enable-charset-choice \
- --enable-cjk \
- --enable-japanese-utf8 \
- --enable-nsl-fork \
- --disable-config-info --disable-echo \
- --disable-dired --disable-trace \
- --disable-finger --disable-gopher --disable-news --disable-wais \
- --disable-prettysrc --disable-scrollbar --disable-gzip-help \
- --disable-idna --disable-syslog --disable-font-switch
+CONFIGURE_ARGS += \
+ --with-ssl \
+ --with-build-cc="$(HOSTCC)" \
+ --with-build-cflags="$(HOST_CFLAGS)" \
+ --with-build-cppflags="$(HOST_CPPFLAGS)" \
+ --with-build-ldflags="$(HOST_LDFLAGS)" \
+ --enable-ipv6 \
+ --with-screen=ncursesw \
+ --enable-widec \
+ --enable-charset-choice \
+ --enable-nsl-fork \
+ --disable-config-info \
+ --disable-dired \
+ --disable-trace \
+ --disable-finger \
+ --disable-gopher \
+ --disable-news \
+ --disable-wais \
+ --disable-prettysrc \
+ --disable-scrollbar \
+ --disable-idna \
+ --without-bzlib
-CONFIGURE_VARS += cf_cv_ncurses_header="ncursesw/curses.h" \
- ac_cv_path_NCURSES_CONFIG=""
+CONFIGURE_VARS += \
+ ac_cv_lib_bsd_arc4random=no \
+ cf_cv_ncurses_header="ncursesw/curses.h" \
+ ac_cv_path_NCURSES_CONFIG=""
define Package/lynx/install
$(INSTALL_DIR) $(1)/usr/bin
endef
$(eval $(call BuildPackage,lynx))
-
include $(TOPDIR)/rules.mk
PKG_NAME:=nbd
-PKG_VERSION:=3.19
-PKG_RELEASE:=2
+PKG_VERSION:=3.25
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
-PKG_SOURCE_URL:=@SF/nbd
-PKG_HASH:=b4466412f13e057659f25d35e1e8e181afd62c7179bff22a6add81445ecb8690
+PKG_SOURCE_URL:=https://github.com/NetworkBlockDevice/nbd/releases/download/$(PKG_NAME)-$(PKG_VERSION)
+PKG_HASH:=f5c8fd0fcb57b1c926594d0e57f356432ee08678bef1d40d088f0830f0cbdd0a
PKG_LICENSE:=GPL-2.0-or-later
PKG_MAINTAINER:=Marcin Jurkowski <marcin1j@gmail.com>
PKG_CPE_ID:=cpe:/a:network_block_device_project:network_block_device
SECTION:=net
CATEGORY:=Network
TITLE:=Network Block Device utilities
- URL:=http://nbd.sourceforge.net
+ URL:=https://nbd.sourceforge.io
DEPENDS:=+kmod-nbd
endef
SECTION:=net
CATEGORY:=Network
TITLE:=Network Block Device Server
- URL:=http://nbd.sourceforge.net
+ URL:=https://nbd.sourceforge.io
DEPENDS:=+glib2
endef
endef
CONFIGURE_ARGS += \
- --disable-glibtest \
--without-gnutls \
--without-libnl \
- --with-syslog
+ --enable-syslog
-TARGET_CFLAGS += --std=gnu99 -DNODAEMON
+TARGET_CFLAGS += -DNODAEMON
define Package/nbd/install
$(INSTALL_DIR) $(1)/usr/sbin
include $(TOPDIR)/rules.mk
PKG_NAME:=net-snmp
-PKG_VERSION:=5.9.1
-PKG_RELEASE:=7
+PKG_VERSION:=5.9.4
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@SF/net-snmp
-PKG_HASH:=eb7fd4a44de6cddbffd9a92a85ad1309e5c1054fb9d5a7dd93079c8953f48c3f
+PKG_HASH:=8b4de01391e74e3c7014beb43961a2d6d6fa03acc34280b9585f4930745b0544
PKG_MAINTAINER:=Stijn Tintel <stijn@linux-ipv6.be>
PKG_LICENSE:=MIT BSD-3-Clause-Clear
PKG_CPE_ID:=cpe:/a:net-snmp:net-snmp
snmpv3/usmStats \
snmpv3/usmUser \
tunnel \
- ucd-snmp/disk \
+ ucd-snmp/disk_hw \
ucd-snmp/dlmod \
ucd-snmp/extensible \
ucd-snmp/loadave \
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
--- a/configure.d/config_os_libs2
+++ b/configure.d/config_os_libs2
-@@ -247,14 +247,22 @@ if test "x$with_nl" != "xno"; then
- )
-
+@@ -252,14 +252,22 @@ if test "x$with_nl" != "xno"; then
+ case $target_os in
+ linux*) # Check for libnl (linux)
netsnmp_save_CPPFLAGS="$CPPFLAGS"
-- CPPFLAGS="${LIBNL3_CFLAGS} $CPPFLAGS"
+- CPPFLAGS="${LIBNL3_CFLAGS} ${LIBNLROUTE3_CFLAGS} $CPPFLAGS"
- NETSNMP_SEARCH_LIBS(nl_connect, nl-3,
- [AC_CHECK_HEADERS(netlink/netlink.h)
- EXTERNAL_MIBGROUP_INCLUDES="$EXTERNAL_MIBGROUP_INCLUDES ${LIBNL3_CFLAGS}"],
{
-next:
+next: ;
- #if HAVE_GETFSSTAT
+ #ifdef HAVE_GETFSSTAT
if (HRFS_index >= fscount)
return -1;
--- a/agent/mibgroup/mibII/interfaces.c
+++ b/agent/mibgroup/mibII/interfaces.c
-@@ -1579,6 +1579,10 @@ Interface_Scan_Init(void)
- struct ifnet *nnew;
+@@ -1586,6 +1586,10 @@ Interface_Scan_Init(void)
char *stats, *ifstart = line;
+ size_t len;
+ /* Ignore interfaces with no statistics. */
+ if (strstr(line, "No statistics available."))
-+ continue;
++ continue;
+
- if (line[strlen(line) - 1] == '\n')
- line[strlen(line) - 1] = '\0';
-
-@@ -1611,7 +1615,7 @@ Interface_Scan_Init(void)
- &coll) != 5)) {
- if ((scan_line_to_use == scan_line_2_2)
- && !strstr(line, "No statistics available"))
-- snmp_log(LOG_ERR,
-+ snmp_log(LOG_DEBUG,
- "/proc/net/dev data format error, line ==|%s|",
- line);
- continue;
+ len = strlen(line);
+ if (len && line[len - 1] == '\n')
+ line[len - 1] = '\0';
--- a/configure
+++ b/configure
-@@ -15602,7 +15602,7 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu
+@@ -16599,7 +16599,7 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu
need_version=no
library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
soname_spec='$libname$release$shared_ext$major'
--- /dev/null
+--- a/configure.d/config_project_types
++++ b/configure.d/config_project_types
+@@ -66,7 +66,7 @@ netsnmp_save_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS -Werror"
+
+ AC_MSG_CHECKING([for the type of fd_set::fds_bits])
+-for type in __fd_mask __int32_t unknown; do
++for type in __fd_mask __int32_t u_int32_t; do
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+ #include <sys/select.h>
+ #include <stddef.h>
--- a/Makefile.top
+++ b/Makefile.top
-@@ -87,7 +87,7 @@ LIBCURRENT = 41
- LIBAGE = 1
- LIBREVISION = 0
+@@ -87,7 +87,7 @@ LIBCURRENT = 42
+ LIBAGE = 2
+ LIBREVISION = 1
--LIB_LD_CMD = $(LIBTOOL) --mode=link $(LINKCC) $(CFLAGS) -rpath $(libdir) -version-info $(LIBCURRENT):$(LIBREVISION):$(LIBAGE) -o
-+LIB_LD_CMD = $(LIBTOOL) --mode=link $(LINKCC) $(CFLAGS) -rpath $(libdir) $(LDFLAGS) -version-info $(LIBCURRENT):$(LIBREVISION):$(LIBAGE) -o
+-LIB_LD_CMD = $(LIBTOOL) --mode=link $(LINKCC) $(CFLAGS) -rpath $(libdir) -version-info $(LIBCURRENT):$(LIBREVISION):$(LIBAGE) @LD_NO_UNDEFINED@ -o
++LIB_LD_CMD = $(LIBTOOL) --mode=link $(LINKCC) $(CFLAGS) -rpath $(libdir) $(LDFLAGS) -version-info $(LIBCURRENT):$(LIBREVISION):$(LIBAGE) @LD_NO_UNDEFINED@ -o
LIB_EXTENSION = la
LIB_VERSION =
LIB_LDCONFIG_CMD = $(LIBTOOL) --mode=finish $(INSTALL_PREFIX)$(libdir)
#include "swrun.h"
#include "swrun_private.h"
--#if HAVE_PCRE_H
+-#ifdef HAVE_PCRE_H
+#if defined(HAVE_PCRE2_H)
+#define PCRE2_CODE_UNIT_WIDTH 8
+#include <pcre2.h>
#endif /* NETSNMP_FEATURE_REMOVE_SWRUN_MAX_PROCESSES */
#ifndef NETSNMP_FEATURE_REMOVE_SWRUN_COUNT_PROCESSES_BY_REGEX
--#if HAVE_PCRE_H
+-#ifdef HAVE_PCRE_H
+#if defined(HAVE_PCRE2_H) || defined(HAVE_PCRE_H)
int
swrun_count_processes_by_regex( char *name, netsnmp_regex_ptr regexp )
+ int *found_ndx;
+ ndx_match = pcre2_match_data_create(30, NULL);
+ found_ndx = pcre2_get_ovector_pointer(ndx_match);
-+#elif HAVE_PCRE_H
++#elif defined(HAVE_PCRE_H)
int found_ndx[30];
+#endif
int found;
#include "if-mib/ifTable/ifTable.h"
#include "if-mib/data_access/interface.h"
#include "interface_private.h"
--#if HAVE_PCRE_H
+-#if defined(HAVE_PCRE_H)
+
+#if defined(HAVE_PCRE2_H)
+#define PCRE2_CODE_UNIT_WIDTH 8
+#include <pcre2.h>
+#elif defined(HAVE_PCRE_H)
#include <pcre.h>
- #elif HAVE_REGEX_H
+ #elif defined(HAVE_REGEX_H)
#include <sys/types.h>
-@@ -840,7 +844,13 @@ int netsnmp_access_interface_max_reached
+@@ -824,7 +828,13 @@ int netsnmp_access_interface_max_reached
int netsnmp_access_interface_include(const char *name)
{
netsnmp_include_if_list *if_ptr;
--#if HAVE_PCRE_H
+-#ifdef HAVE_PCRE_H
+#if defined(HAVE_PCRE2_H)
+ //pcre_exec->pcre2_match
+ //ovector->pcre2_match_data
int found_ndx[3];
#endif
-@@ -856,7 +866,13 @@ int netsnmp_access_interface_include(con
+@@ -840,7 +850,13 @@ int netsnmp_access_interface_include(con
for (if_ptr = include_list; if_ptr; if_ptr = if_ptr->next) {
--#if HAVE_PCRE_H
+-#if defined(HAVE_PCRE_H)
+#if defined(HAVE_PCRE2_H)
+ if (pcre2_match(if_ptr->regex_ptr, name, strlen(name), 0, 0,
+ ndx_match, NULL) >= 0) {
if (pcre_exec(if_ptr->regex_ptr, NULL, name, strlen(name), 0, 0,
found_ndx, 3) >= 0)
return TRUE;
-@@ -869,6 +885,9 @@ int netsnmp_access_interface_include(con
+@@ -853,6 +869,9 @@ int netsnmp_access_interface_include(con
#endif
}
return FALSE;
}
-@@ -980,7 +999,13 @@ _parse_include_if_config(const char *tok
+@@ -964,7 +983,13 @@ _parse_include_if_config(const char *tok
{
netsnmp_include_if_list *if_ptr, *if_new;
char *name, *st;
--#if HAVE_PCRE_H
+-#if defined(HAVE_PCRE_H)
+#if defined(HAVE_PCRE2_H)
+ //we can only get the message upon calling pcre2_error_message.
+ // so an additional variable is required.
+#elif defined(HAVE_PCRE_H)
const char *pcre_error;
int pcre_error_offset;
- #elif HAVE_REGEX_H
-@@ -1012,7 +1037,15 @@ _parse_include_if_config(const char *tok
+ #elif defined(HAVE_REGEX_H)
+@@ -996,7 +1021,15 @@ _parse_include_if_config(const char *tok
config_perror("Out of memory");
goto err;
}
--#if HAVE_PCRE_H
+-#if defined(HAVE_PCRE_H)
+#if defined(HAVE_PCRE2_H)
+ if_new->regex_ptr = pcre2_compile(if_new->name, PCRE2_ZERO_TERMINATED, 0,
+ &pcre2_err_code, &pcre2_error_offset, NULL);
if_new->regex_ptr = pcre_compile(if_new->name, 0, &pcre_error,
&pcre_error_offset, NULL);
if (!if_new->regex_ptr) {
-@@ -1048,7 +1081,7 @@ _parse_include_if_config(const char *tok
+@@ -1032,7 +1065,7 @@ _parse_include_if_config(const char *tok
err:
if (if_new) {
free(if_new->regex_ptr);
#endif
free(if_new->name);
-@@ -1063,7 +1096,7 @@ _free_include_if_config(void)
+@@ -1047,7 +1080,7 @@ _free_include_if_config(void)
while (if_ptr) {
if_next = if_ptr->next;
--#if HAVE_PCRE_H
+-#if defined(HAVE_PCRE_H)
+#if defined(HAVE_PCRE2_H) || defined(HAVE_PCRE_H)
free(if_ptr->regex_ptr);
- #elif HAVE_REGEX_H
+ #elif defined(HAVE_REGEX_H)
regfree(if_ptr->regex_ptr);
--- a/agent/mibgroup/struct.h
+++ b/agent/mibgroup/struct.h
struct myproc {
char name[STRMAX];
--#if HAVE_PCRE_H
+-#ifdef HAVE_PCRE_H
+#if defined(HAVE_PCRE2_H) || defined(HAVE_PCRE_H)
netsnmp_regex_ptr regexp;
#endif
# include <time.h>
# endif
#endif
--#if HAVE_PCRE_H
+-#ifdef HAVE_PCRE_H
+#ifdef HAVE_PCRE2_H
+#define PCRE2_CODE_UNIT_WIDTH 8
+#include <pcre2.h>
-+#elif HAVE_PCRE_H
++#elifdef HAVE_PCRE_H
#include <pcre.h>
#endif
for (ptmp = procwatch; ptmp != NULL;) {
ptmp2 = ptmp;
ptmp = ptmp->next;
--#if HAVE_PCRE_H
+-#ifdef HAVE_PCRE_H
+#if defined(HAVE_PCRE2_H) || defined(HAVE_PCRE_H)
free(ptmp2->regexp.regex_ptr);
#endif
if (*procp == NULL)
return; /* memory alloc error */
numprocs++;
--#if HAVE_PCRE_H
+-#ifdef HAVE_PCRE_H
+#if defined(HAVE_PCRE2_H) || defined(HAVE_PCRE_H)
(*procp)->regexp.regex_ptr = NULL;
#endif
cptr = skip_not_white(cptr);
if ((cptr = skip_white(cptr))) {
(*procp)->min = atoi(cptr);
--#if HAVE_PCRE_H
+-#ifdef HAVE_PCRE_H
+#if defined(HAVE_PCRE2_H) || defined(HAVE_PCRE_H)
cptr = skip_not_white(cptr);
if ((cptr = skip_white(cptr))) {
+ if ((*procp)->regexp.regex_ptr == NULL) {
+ config_perror(pcre2_error_msg);
+ }
-+#elif HAVE_PCRE_H
++#elifdef HAVE_PCRE_H
const char *pcre_error;
int pcre_error_offset;
return swrun_count_processes_by_name( procname );
}
--#if HAVE_PCRE_H
+-#ifdef HAVE_PCRE_H
+#if defined(HAVE_PCRE2_H) || defined(HAVE_PCRE_H)
netsnmp_feature_require(swrun_count_processes_by_regex);
int
sh_count_procs_by_regex(char *procname, netsnmp_regex_ptr regexp)
--- a/agent/mibgroup/ucd-snmp/proc.h
+++ b/agent/mibgroup/ucd-snmp/proc.h
-@@ -12,7 +12,7 @@ config_require(util_funcs)
+@@ -12,7 +12,7 @@ config_require(util_funcs);
extern WriteMethod fixProcError;
int sh_count_myprocs(struct myproc *);
int sh_count_procs(char *);
if test "x$with_pcre" != "xno"; then
AC_CHECK_HEADER([pcre.h], [
AC_DEFINE([HAVE_PCRE_H], [1], [Define to 1 if you have <pcre.h>.])
-@@ -121,3 +147,4 @@ NETSNMP_SEARCH_LIBS([pcre_exec], [pcre],
- ],,, LAGENTLIBS)
- AC_SUBST(LAGENTLIBS)
- AC_SUBST(LMIBLIBS)
+@@ -123,3 +149,4 @@ if test "x$with_pcre" != "xno"; then
+ AC_SUBST(LAGENTLIBS)
+ AC_SUBST(LMIBLIBS)
+ fi
+fi
--- a/configure.d/config_project_with_enable
+++ b/configure.d/config_project_with_enable
extern "C" {
#endif
--#if HAVE_PCRE_H
+-#if defined(HAVE_PCRE_H)
+#if defined(HAVE_PCRE2_H)
+#define PCRE2_CODE_UNIT_WIDTH 8
+#include <pcre2.h>
+#elif defined(HAVE_PCRE_H)
#include <pcre.h>
- #elif HAVE_REGEX_H
+ #elif defined(HAVE_REGEX_H)
#include <regex.h>
@@ -211,7 +214,9 @@ typedef struct _conf_if_list {
typedef netsnmp_conf_if_list conf_if_list; /* backwards compat */
typedef struct _include_if_list {
--#if HAVE_PCRE_H
+-#if defined(HAVE_PCRE_H)
+#if defined(HAVE_PCRE2_H)
+ pcre2_code *regex_ptr;
+#elif defined(HAVE_PCRE_H)
pcre *regex_ptr;
- #elif HAVE_REGEX_H
+ #elif defined(HAVE_REGEX_H)
regex_t *regex_ptr;
--- a/include/net-snmp/data_access/swrun.h
+++ b/include/net-snmp/data_access/swrun.h
--- a/configure
+++ b/configure
-@@ -898,6 +898,8 @@ with_dnssec
+@@ -928,6 +928,8 @@ with_dnssec
enable_dnssec
with_rpm
enable_rpm
with_pcre
enable_pcre
with_install_prefix
-@@ -1810,6 +1812,8 @@ Compiler Options:
+@@ -1851,6 +1853,8 @@ Compiler Options:
--without-rpm Don't include support for the RPM package
management system when building the host MIB
module.
--without-pcre Don't include pcre process searching
support in the agent.
--with-install-prefix=PATH Just for installing, prefix all
-@@ -4907,6 +4911,21 @@ fi
+@@ -5259,6 +5263,21 @@ fi
+
# Check whether --with-pcre was given.
- if test "${with_pcre+set}" = set; then :
-@@ -22321,6 +22340,112 @@ LIBS="$netsnmp_save_LIBS"
+ if test ${with_pcre+y}
+@@ -26477,6 +26496,112 @@ LIBS="$netsnmp_save_LIBS"
#
# regex in process table
#
+if test "x$with_pcre2" != "xyes"; then
+
if test "x$with_pcre" != "xno"; then
- ac_fn_c_check_header_mongrel "$LINENO" "pcre.h" "ac_cv_header_pcre_h" "$ac_includes_default"
- if test "x$ac_cv_header_pcre_h" = xyes; then :
-@@ -25886,6 +26011,7 @@ done
+ ac_fn_c_check_header_compile "$LINENO" "pcre.h" "ac_cv_header_pcre_h" "$ac_includes_default"
+ if test "x$ac_cv_header_pcre_h" = xyes
+@@ -31486,6 +31611,7 @@ printf "%s\n" "#define pid_t $ac_pid_typ
fi
--- a/include/net-snmp/net-snmp-config.h.in
+++ b/include/net-snmp/net-snmp-config.h.in
-@@ -722,6 +722,9 @@
+@@ -727,6 +727,9 @@
/* Define to 1 if you have the <pci/pci.h> header file. */
#undef HAVE_PCI_PCI_H
- ndx_match = pcre2_match_data_create(30, NULL);
- found_ndx = pcre2_get_ovector_pointer(ndx_match);
+ pcre2_match_data *ndx_match = pcre2_match_data_create(30, NULL);
- #elif HAVE_PCRE_H
+ #elif defined(HAVE_PCRE_H)
int found_ndx[30];
#endif
@@ -122,22 +119,20 @@ swrun_count_processes_by_regex( char *na
#endif
--- a/agent/mibgroup/if-mib/data_access/interface.c
+++ b/agent/mibgroup/if-mib/data_access/interface.c
-@@ -844,12 +844,8 @@ int netsnmp_access_interface_max_reached
+@@ -828,12 +828,8 @@ int netsnmp_access_interface_max_reached
int netsnmp_access_interface_include(const char *name)
{
netsnmp_include_if_list *if_ptr;
#elif defined(HAVE_PCRE_H)
int found_ndx[3];
#endif
-@@ -867,8 +863,8 @@ int netsnmp_access_interface_include(con
+@@ -851,8 +847,8 @@ int netsnmp_access_interface_include(con
for (if_ptr = include_list; if_ptr; if_ptr = if_ptr->next) {
#if defined(HAVE_PCRE2_H)
pcre2_match_data_free(ndx_match);
return TRUE;
}
-@@ -1000,11 +996,13 @@ _parse_include_if_config(const char *tok
+@@ -984,11 +980,13 @@ _parse_include_if_config(const char *tok
netsnmp_include_if_list *if_ptr, *if_new;
char *name, *st;
#if defined(HAVE_PCRE2_H)
#elif defined(HAVE_PCRE_H)
const char *pcre_error;
int pcre_error_offset;
-@@ -1038,10 +1036,14 @@ _parse_include_if_config(const char *tok
+@@ -1022,10 +1020,14 @@ _parse_include_if_config(const char *tok
goto err;
}
#if defined(HAVE_PCRE2_H)
--- a/agent/mibgroup/if-mib/data_access/interface.c
+++ b/agent/mibgroup/if-mib/data_access/interface.c
-@@ -845,7 +845,7 @@ int netsnmp_access_interface_include(con
+@@ -829,7 +829,7 @@ int netsnmp_access_interface_include(con
{
netsnmp_include_if_list *if_ptr;
#if defined(HAVE_PCRE2_H)
#elif defined(HAVE_PCRE_H)
int found_ndx[3];
#endif
-@@ -860,6 +860,9 @@ int netsnmp_access_interface_include(con
+@@ -844,6 +844,9 @@ int netsnmp_access_interface_include(con
*/
return TRUE;
--- /dev/null
+--- a/configure.d/config_modules_agent
++++ b/configure.d/config_modules_agent
+@@ -27,8 +27,6 @@ done
+ #
+ AC_MSG_CHECKING([for and configuring mib modules to use])
+
+-AH_TOP([#define NETSNMP_REQUIRE_SEMICOLON extern void netsnmp_unused_function(void)])
+-
+ # set up the CPP command
+ MODULECPP="$CPP $PARTIALTARGETFLAGS $CPPFLAGS -DNETSNMP_FEATURE_CHECKING -I${srcdir}/include -I${srcdir}/agent/mibgroup"
+ if test "x$enable_mfd_rewrites" = "xyes"; then
+@@ -194,7 +192,7 @@ while test "x$new_module_list" != "x"; d
+ # - mib_module => libnetsnmpmibs (default)
+ # - agent_module => libnetsnmpagent
+ #
+- AH_TOP([#define config_belongs_in(x) NETSNMP_REQUIRE_SEMICOLON])
++ AH_TOP([#define config_belongs_in(x)])
+ module_type=mib_module
+ if test -f $srcdir/$mibdir/$i.h; then
+ changequote(, )
+@@ -279,7 +277,7 @@ while test "x$new_module_list" != "x"; d
+ #
+ # check if $i has any conflicts
+ #
+- AH_TOP([#define config_exclude(x) NETSNMP_REQUIRE_SEMICOLON])
++ AH_TOP([#define config_exclude(x)])
+ new_list_excl=`$MODULECPP module_tmp_header.h | \
+ $SED -n 's/.*config_exclude(\(.*\)).*/\1/p'`
+ if test "x$new_list_excl" != "x"; then
+@@ -308,7 +306,7 @@ while test "x$new_module_list" != "x"; d
+ #
+ # check if $i has any architecture specific requirements
+ #
+- AH_TOP([#define config_arch_require(x,y) NETSNMP_REQUIRE_SEMICOLON])
++ AH_TOP([#define config_arch_require(x,y)])
+ changequote(, )
+ new_list_arch=`$MODULECPP module_tmp_header.h | \
+ $SED -n 's/.*config_arch_require( *\([^ ]*\) *, *\([^ ]*\) *).*/\1-xarchx-\2/p'`
+@@ -330,7 +328,7 @@ while test "x$new_module_list" != "x"; d
+ # macro: config_version_require((base, version, version-modules, ...))
+ # - lists alternative modules used from different versions.
+ #
+- AH_TOP([#define config_version_require(x) NETSNMP_REQUIRE_SEMICOLON])
++ AH_TOP([#define config_version_require(x)])
+ [new_list_alt3=`$MODULECPP module_tmp_header.h | \
+ $AWK '
+ BEGIN {
+@@ -372,7 +370,7 @@ while test "x$new_module_list" != "x"; d
+ #
+ # check if $i has any other required modules
+ #
+- AH_TOP([#define config_require(x) NETSNMP_REQUIRE_SEMICOLON])
++ AH_TOP([#define config_require(x)])
+ new_list="$new_list `$MODULECPP module_tmp_header.h | \
+ $SED -n 's/.*config_require(\(.*\)).*/\1/p'`"
+ AC_MSG_MODULE_DBG(" $i will test: $new_list")
+@@ -409,7 +407,7 @@ while test "x$new_module_list" != "x"; d
+ #
+ # check if $i has any mibs to add
+ #
+- AH_TOP([#define config_add_mib(x) NETSNMP_REQUIRE_SEMICOLON])
++ AH_TOP([#define config_add_mib(x)])
+ new_mibs=`$MODULECPP module_tmp_header.h | \
+ $SED -n 's/.*config_add_mib(\(.*\)).*/\1/p'`
+ if test "x$new_mibs" != "x"; then
+@@ -456,7 +454,7 @@ while test "x$new_module_list" != "x"; d
+ # check for config_parse_dot_conf
+ # (generally not used any longer; old auto-load a .conf token)
+ #
+- AH_TOP([#define config_parse_dot_conf(w,x,y,z) NETSNMP_REQUIRE_SEMICOLON])
++ AH_TOP([#define config_parse_dot_conf(w,x,y,z)])
+ changequote(, )
+ $MODULECPP module_tmp_header.h | \
+ $SED -n 's@.*config_parse_dot_conf(\([^)]*\), *\([^),]*\), *\([^),]*\), *\([^),]*\)).*@register_config_handler("snmpd",\1, \2, \3, \4);@p' >> $mibdir/mib_module_dot_conf.h
+@@ -468,7 +466,7 @@ while test "x$new_module_list" != "x"; d
+ #
+ # check if $i has any errors, or warnings
+ #
+- AH_TOP([#define config_error(x) NETSNMP_REQUIRE_SEMICOLON])
++ AH_TOP([#define config_error(x)])
+ error=`$MODULECPP module_tmp_header.h | \
+ $SED -n 's/.*config_error(\(.*\)).*/\1/p'`
+ if test "x$error" != "x"; then
+@@ -481,7 +479,7 @@ while test "x$new_module_list" != "x"; d
+ # macro: config_warning(warning text)
+ # - used to signal a configuration "warning" to be printed to the user
+ #
+- AH_TOP([#define config_warning(x) NETSNMP_REQUIRE_SEMICOLON])
++ AH_TOP([#define config_warning(x)])
+ warning=`$MODULECPP module_tmp_header.h | \
+ $SED -n 's/.*config_warning(\(.*\)).*/\1/p'`
+ if test "x$warning" != "x"; then
+--- a/include/net-snmp/net-snmp-config.h.in
++++ b/include/net-snmp/net-snmp-config.h.in
+@@ -36,25 +36,25 @@
+
+ /* definitions added by configure on-the-fly */
+
+-#define config_parse_dot_conf(w,x,y,z) NETSNMP_REQUIRE_SEMICOLON
++#define config_parse_dot_conf(w,x,y,z)
+
+-#define config_error(x) NETSNMP_REQUIRE_SEMICOLON
++#define config_error(x)
+
+-#define config_warning(x) NETSNMP_REQUIRE_SEMICOLON
++#define config_warning(x)
+
+-#define NETSNMP_REQUIRE_SEMICOLON extern void netsnmp_unused_function(void)
++#define extern void netsnmp_unused_function(void)
+
+-#define config_belongs_in(x) NETSNMP_REQUIRE_SEMICOLON
++#define config_belongs_in(x)
+
+-#define config_exclude(x) NETSNMP_REQUIRE_SEMICOLON
++#define config_exclude(x)
+
+-#define config_arch_require(x,y) NETSNMP_REQUIRE_SEMICOLON
++#define config_arch_require(x,y)
+
+-#define config_version_require(x) NETSNMP_REQUIRE_SEMICOLON
++#define config_version_require(x)
+
+-#define config_require(x) NETSNMP_REQUIRE_SEMICOLON
++#define config_require(x)
+
+-#define config_add_mib(x) NETSNMP_REQUIRE_SEMICOLON
++#define config_add_mib(x)
+
+ /* Define to 1 if using 'alloca.c'. */
+ #undef C_ALLOCA
PKG_NAME:=openvpn
PKG_VERSION:=2.6.8
-PKG_RELEASE:=4
+PKG_RELEASE:=5
PKG_SOURCE_URL:=\
https://build.openvpn.net/downloads/releases/ \
client_to_client
comp_noadapt
disable
+disable_dco
disable_occ
down_pre
duplicate_cn
PKG_NAME:=p910nd
PKG_VERSION:=0.97
-PKG_RELEASE:=10
+PKG_RELEASE:=11
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=@SF/p910nd
#!/bin/sh
+# shellcheck disable=SC3043 # aka 'local VAR'
# c 2024 systemcrash (GitHub)
#hotplug.d triggers this script on the plug {in|out} of USB printers
DAEMON_HOTPLUG="$DAEMON hotplug"
DAEMON_ERR="daemon.err"
DAEMON_INFO="daemon.info"
-DRIVER_HOME_DEFAULT="/opt/"$DAEMON"_drivers"
+DRIVER_HOME_DEFAULT=/opt/"$DAEMON"_drivers
SYSUPGRADE_CONF="/etc/sysupgrade.conf"
# Assumptions:
# DEV_TYPE_FILTER="usb_device"
# Test the script by running $0 -d.
-if [ -n "$1" -a "$1" == "-d" ]; then
+if [ -n "$1" ] && [ "$1" = "-d" ]; then
# Set the variable DEBUG to true (or anything) for extra debug output
DEBUG=true
ACTUAL_DEVPATH=${DEVPATH%/usbmisc/lp*}
# Prepend /sys/ to get actual device path,
ACTUAL_DEVPATH="/sys$ACTUAL_DEVPATH"
-[ $DEBUG ] && echo ACTUAL_DEVPATH is $ACTUAL_DEVPATH
+[ "$DEBUG" ] && echo ACTUAL_DEVPATH is "$ACTUAL_DEVPATH"
PARENT_DEVPATH=$( dirname "${ACTUAL_DEVPATH}" )
# We might need to do this if symlinks are problematic. Might not:
# devpath="$(readlink -f $ACTUAL_DEVPATH)"
# https://www.usb.org/sites/default/files/usbprint11a021811.pdf
# Check whether connected device is a "Printer"
-[ "$(cat "$ACTUAL_DEVPATH/bInterfaceClass")" == "07" ] && [ "$(cat "$ACTUAL_DEVPATH/bInterfaceSubClass")" == "01" ] && iAmAPrinter=true
+[ "$(cat "$ACTUAL_DEVPATH/bInterfaceClass")" = "07" ] && [ "$(cat "$ACTUAL_DEVPATH/bInterfaceSubClass")" = "01" ] && iAmAPrinter=true
# Not a printer? Bail.
-[ ! $iAmAPrinter ] && exit 0
+[ ! "$iAmAPrinter" ] && exit 0
# Port directionality
BIP=$( cat "$ACTUAL_DEVPATH/bInterfaceProtocol" )
-[ $DEBUG ] && echo BIP: $BIP
+[ "$DEBUG" ] && echo BIP: "$BIP"
case $BIP in
01 )
BIDIR=0
;;
esac
+# Verify that we have p910nd settings
+if ! uci -q get $DAEMON; then
+ touch /etc/config/$DAEMON
+ uci -q add $DAEMON $DAEMON
+ uci -q commit
+fi
# Next, we need THIS_USB_VIDPID. This is to ensure that we send the right blob
# to the right USB printer. THIS_USB_VIDPID is an anchor, or filter, if you will.
# printer driver blobs account for different hw versions anyway, so ignore it.
# THIS_USB_VIDPID="3f0/4117"
-idVendor=$( cat ""$PARENT_DEVPATH"/idVendor" )
-idProduct=$( cat ""$PARENT_DEVPATH"/idProduct" )
-[ $DEBUG ] && echo idVendor+idProduct: $idVendor + $idProduct
+idVendor=$( cat "$PARENT_DEVPATH/idVendor" )
+idProduct=$( cat "$PARENT_DEVPATH/idProduct" )
+[ "$DEBUG" ] && echo idVendor+idProduct: "$idVendor" + "$idProduct"
THIS_USB_VIDPID="$idVendor/$idProduct"
# Driver blob e.g.: Hewlett-Packard_HP_LaserJet_1018_03f0_4117.bin
# Not always available:
-iSerialNumber=$( cat "iSerialNumber" 2>/dev/null ) || iSerialNumber=$( cat "serial" 2>/dev/null )
-[ $DEBUG ] && echo iSerialNumber is $iSerialNumber
+iSerialNumber=$( cat "$PARENT_DEVPATH/iSerialNumber" 2>/dev/null ) || iSerialNumber=$( cat "$PARENT_DEVPATH/serial" 2>/dev/null )
+[ "$DEBUG" ] && echo iSerialNumber is "$iSerialNumber"
# Get the special IEEE1284 Device ID string (apparently limited to 127 chars)
-ieee1284info=$(cat ""$ACTUAL_DEVPATH"/ieee1284_id" )
-[ $DEBUG ] && echo ieee1284info is $ieee1284info
+ieee1284info=$(cat "$ACTUAL_DEVPATH/ieee1284_id" )
+[ "$DEBUG" ] && echo ieee1284info is "$ieee1284info"
# Absent the uci daemon hotplug config group, set it to a default
-[ -z $(uci -q get $DAEMON.@hotplug[0]) ] && uci -q add $DAEMON hotplug
+[ -z "$(uci -q get $DAEMON.@hotplug[0])" ] && uci -q add $DAEMON hotplug
# # Absent the driver_home path config, set it to a default
-[ -z $(uci -q get $DAEMON.@hotplug[0].driver_home) ] && uci -q set $DAEMON.@hotplug[-1].driver_home=$DRIVER_HOME_DEFAULT
+[ -z "$(uci -q get $DAEMON.@hotplug[0].driver_home)" ] && uci -q set $DAEMON.@hotplug[-1].driver_home=$DRIVER_HOME_DEFAULT && uci -q commit $DAEMON
# Make the driver folder hierarchy
-if ! $(mkdir -p $DRIVER_HOME_DEFAULT); then
- logger -t "$DAEMON_HOTPLUG" -p $DAEMON_ERR "Error running 'mkdir -p "$DRIVER_HOME_DEFAULT"'."
+if ! mkdir -p "$DRIVER_HOME_DEFAULT"; then
+ logger -t "$DAEMON_HOTPLUG" -p "$DAEMON_ERR" Error running 'mkdir -p' "$DRIVER_HOME_DEFAULT".
fi
# Help the folder survive a sysupgrade:
-if ! $( grep -q "^$DRIVER_HOME_DEFAULT$" "$SYSUPGRADE_CONF" ); then
+if ! grep -q "^$DRIVER_HOME_DEFAULT$" "$SYSUPGRADE_CONF" ; then
# TODO: remove old non-existent p910nd paths from $SYSUPGRADE_CONF?
# Absent the path, try to add it to $SYSUPGRADE_CONF
if ! echo $DRIVER_HOME_DEFAULT >> $SYSUPGRADE_CONF; then
- logger -t "$DAEMON_HOTPLUG" -p $DAEMON_ERR "Problem adding "$DRIVER_HOME_DEFAULT" path to $SYSUPGRADE_CONF."
+ logger -t "$DAEMON_HOTPLUG" -p "$DAEMON_ERR" Problem adding "$DRIVER_HOME_DEFAULT" path to "$SYSUPGRADE_CONF."
else
- logger -t "$DAEMON_HOTPLUG" -p $DAEMON_INFO "Added "$DRIVER_HOME_DEFAULT" path to $SYSUPGRADE_CONF."
+ logger -t "$DAEMON_HOTPLUG" -p "$DAEMON_INFO" Added "$DRIVER_HOME_DEFAULT" path to "$SYSUPGRADE_CONF".
fi
fi
DRIVER_HOME=$(uci -q get $DAEMON.@hotplug[-1].driver_home)
-[ $DEBUG ] && echo DRIVER_HOME is $DRIVER_HOME
+[ "$DEBUG" ] && echo DRIVER_HOME is "$DRIVER_HOME"
# Trim trailing forward slash if it crept in somehow.
DRIVER_HOME=${DRIVER_HOME%/}
-DRIVER_BLOBNAME_TAIL=""$idVendor"_"$idProduct".bin"
-[ $DEBUG ] && echo DRIVER_BLOBNAME_TAIL is $DRIVER_BLOBNAME_TAIL
+DRIVER_BLOBNAME_TAIL="$idVendor"_"$idProduct".bin
+[ "$DEBUG" ] && echo DRIVER_BLOBNAME_TAIL is "$DRIVER_BLOBNAME_TAIL"
# Global device config number variable
# find which daemon configs have the matching lpX interface
match_current_device() {
# Build array of /dev/usb/lpX character devices already configured
- set -- $(IFS="\n" && uci -q batch <<- EOI
- get $DAEMON.@$DAEMON[0].device
- get $DAEMON.@$DAEMON[1].device
- get $DAEMON.@$DAEMON[2].device
- get $DAEMON.@$DAEMON[3].device
- get $DAEMON.@$DAEMON[4].device
- get $DAEMON.@$DAEMON[5].device
- get $DAEMON.@$DAEMON[6].device
- get $DAEMON.@$DAEMON[7].device
- get $DAEMON.@$DAEMON[8].device
- get $DAEMON.@$DAEMON[9].device
+
+ set -- "$(IFS=$(printf '\n') && uci -q batch <<- EOI
+ get "$DAEMON".@"$DAEMON"[0].device
+ get "$DAEMON".@"$DAEMON"[1].device
+ get "$DAEMON".@"$DAEMON"[2].device
+ get "$DAEMON".@"$DAEMON"[3].device
+ get "$DAEMON".@"$DAEMON"[4].device
+ get "$DAEMON".@"$DAEMON"[5].device
+ get "$DAEMON".@"$DAEMON"[6].device
+ get "$DAEMON".@"$DAEMON"[7].device
+ get "$DAEMON".@"$DAEMON"[8].device
+ get "$DAEMON".@"$DAEMON"[9].device
EOI
- )
+ )"
# $1-$10 are now set
x=0
+ # shellcheck disable=SC2068
for i in $@; do
# $DEVNAME is passed by hotplug
- [ $DEBUG ] && echo UCI_DEV_CFG_NUMBER is $UCI_DEV_CFG_NUMBER and CHAR_DEV is $CHAR_DEV
- [ $DEVNAME == ${i#/dev/} ] && UCI_DEV_CFG_NUMBER=$x && CHAR_DEV=$i
+ [ "$DEBUG" ] && echo UCI_DEV_CFG_NUMBER is $UCI_DEV_CFG_NUMBER and CHAR_DEV is "$CHAR_DEV"
+ [ "$DEVNAME" = "${i#/dev/}" ] && UCI_DEV_CFG_NUMBER=$x && CHAR_DEV=$i
# TODO: multiple configured devices could have same CHAR_DEV if not connected concurrently
- x=$(( $x+1 ))
+ x=$(( x+1 ))
done
}
local CMD
local CLS
local DES
+ local DRV
local CID
local CMT
local SN
+ local VER
# Build array of /dev/usb/lpX character devices already configured
match_current_device
+ uqgddu_cmd='uci -q get '"$DAEMON".@"$DAEMON"[$UCI_DEV_CFG_NUMBER]
+ uqsddu_cmd='uci -q set '"$DAEMON".@"$DAEMON"[$UCI_DEV_CFG_NUMBER]
+
# set Internal Field Separator to semicolon found in ieee1284_id files
IFS=";"
# Got 1284 Device ID string
- set -- $ieee1284info
- [ $DEBUG ] && echo ieee1284info: $ieee1284info
+ set -- "$ieee1284info"
+ [ "$DEBUG" ] && echo ieee1284info: "$ieee1284info"
- for i in "$@"; do
- [ $DEBUG ] && echo "$i"
- [ $DEBUG ] && echo
+ # shellcheck disable=SC2068
+ for i in $@; do
+ [ "$DEBUG" ] && echo i:"$i"
case $i in
- MFG:* | MANUFACTURER:* )
+ MFG:* | MANUFACTURER:* | MFR:* )
MFG=${i##*:};;
MDL:* | MODEL:* )
MDL=${i##*:};;
CMD=${i##*:};;
CLS:* )
CLS=${i##*:};;
- DES:* )
+ DES:* | DESCRIPTION:* )
DES=${i##*:};;
+ DRV:* )
+ DRV=${i##*:};;
CID:* | COMPATIBLEID:* )
CID=${i##*:};;
COMMENT:* )
CMT=${i##*:};;
- SN:* )
+ SN:* | SERIALNUMBER:* | SERN:* )
SN=${i##*:};;
+ VER:* )
+ VER=${i##*:};;
esac
- [ -n "$SN" ] || SN=$iSerialNumber
- [ $DEBUG ] && echo ${MFG:+MFG=$MFG} ${MDL:+MDL=$MDL} ${CMD:+CMD=$CMD} ${CLS:+CLS=$CLS} ${DES:+DES=$DES} ${SN:+SN=$SN}
+ [ -n "$SN" ] || SN="$iSerialNumber"
+ [ "$DEBUG" ] && echo ${MFG:+MFG=$MFG} ${MDL:+MDL=$MDL} ${CMD:+CMD=$CMD} ${CLS:+CLS=$CLS} ${DES:+DES=$DES} ${SN:+SN=$SN}
- [ $DEBUG ] && echo 'uci set' for UCI_DEV_CFG_NUMBER: $UCI_DEV_CFG_NUMBER
+ [ "$DEBUG" ] && echo 'uci set' for UCI_DEV_CFG_NUMBER: $UCI_DEV_CFG_NUMBER
# Take the USB info as fact: set bidir regardless. It seems to be a source of confusion.
- uci -q set $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].bidirectional="$BIDIR"
- [ -z "$(uci -q get $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].port)" ] && uci set $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].port="0"
- [ -z "$(uci -q get $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].enabled)" ] && uci set $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].enabled="1"
- [ -z "$(uci -q get $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].usbvidpid)" -a -n "$THIS_USB_VIDPID" ] && uci set $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].usbvidpid="$THIS_USB_VIDPID"
- # [ -z "$(uci -q get $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns)" ] && uci set $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns="1"
- [ -z "$(uci -q get $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns_ty)" -a -n "$DES" ] && uci set $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns_ty="$DES"
- [ -z "$(uci -q get $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns_product)" -a -n "$DES" ] && uci set $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns_product="($DES)"
- [ -z "$(uci -q get $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns_mfg)" -a -n "$MFG" ] && uci set $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns_mfg="$MFG"
- [ -z "$(uci -q get $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns_mdl)" -a -n "$MDL" ] && uci set $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns_mdl="$MDL"
- [ -z "$(uci -q get $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns_cmd)" -a -n "$CMD" ] && uci set $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns_cmd="$CMD"
- [ -z "$(uci -q get $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns_note)" -a -n "$SN" ] && uci set $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].mdns_note="SN:"$SN" Auto-configured by $DAEMON_HOTPLUG"
-
- if [ -n "$MFG" -a -n "$MDL" -a -n "$DRIVER_BLOBNAME_TAIL" ] && [ -z "$(uci -q get $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].driver_file)" ]; then
+ eval "$uqsddu_cmd.bidirectional='$BIDIR'"
+ [ -z "$(eval "$uqgddu_cmd".port)" ] && eval "$uqsddu_cmd.port='0'"
+ [ -z "$(eval "$uqgddu_cmd".enabled)" ] && eval "$uqsddu_cmd.enabled='1'"
+ [ -z "$(eval "$uqgddu_cmd".usbvidpid)" ] && [ -n "$THIS_USB_VIDPID" ] && eval "$uqsddu_cmd.usbvidpid='$THIS_USB_VIDPID'"
+ # Safe to default to on for mDNS if we found one of the mandatory properties (e.g. MDL)
+ [ -z "$(eval "$uqgddu_cmd".mdns)" ] && [ -n "$MDL" ] && eval "$uqsddu_cmd.mdns='1'"
+ [ -z "$(eval "$uqgddu_cmd".mdns_ty)" ] && [ -n "$DES" ] && eval "$uqsddu_cmd.mdns_ty='$DES'"
+ [ -z "$(eval "$uqgddu_cmd".mdns_product)" ] && [ -n "$DES" ] && eval "$uqsddu_cmd.mdns_product='($DES)'"
+ [ -z "$(eval "$uqgddu_cmd".mdns_mfg)" ] && [ -n "$MFG" ] && eval "$uqsddu_cmd.mdns_mfg='$MFG'"
+ [ -z "$(eval "$uqgddu_cmd".mdns_mdl)" ] && [ -n "$MDL" ] && eval "$uqsddu_cmd.mdns_mdl='$MDL'"
+ [ -z "$(eval "$uqgddu_cmd".mdns_cmd)" ] && [ -n "$CMD" ] && eval "$uqsddu_cmd.mdns_cmd='$CMD'"
+ [ -z "$(eval "$uqgddu_cmd".mdns_note)" ] && eval "$uqsddu_cmd.mdns_note='Located near router'"
+ # Optional ieee1284_id parameters
+ [ -z "$(eval "$uqgddu_cmd".mdns_cid)" ] && [ -n "$CID" ] && eval "$uqsddu_cmd.mdns_cid='$CID'"
+ [ -z "$(eval "$uqgddu_cmd".mdns_cls)" ] && [ -n "$CLS" ] && eval "$uqsddu_cmd.mdns_cls='$CLS'"
+ [ -z "$(eval "$uqgddu_cmd".mdns_cmt)" ] && [ -n "$CMT" ] && eval "$uqsddu_cmd.mdns_cmt='$CMT'"
+ [ -z "$(eval "$uqgddu_cmd".mdns_drv)" ] && [ -n "$DRV" ] && eval "$uqsddu_cmd.mdns_drv='$DRV'"
+ [ -z "$(eval "$uqgddu_cmd".mdns_sn)" ] && [ -n "$SN" ] && eval "$uqsddu_cmd.mdns_sn='$SN'"
+ [ -z "$(eval "$uqgddu_cmd".mdns_ver)" ] && [ -n "$VER" ] && eval "$uqsddu_cmd.mdns_ver='$VER'"
+
+ # No previously configured device? Configure this instance. Set CHAR_DEV so we can send driver.
+ [ $UCI_DEV_CFG_NUMBER -eq -1 ] && eval "$uqsddu_cmd.device=/dev/'$DEVNAME'" && CHAR_DEV=/dev/"$DEVNAME"
+
+ if [ -n "$MFG" ] && [ -n "$MDL" ] && [ -n "$DRIVER_BLOBNAME_TAIL" ] && [ -z "$(eval "$uqgddu_cmd".driver_file)" ]; then
DRIVER_FILE="$MFG"_"$MDL"_"$DRIVER_BLOBNAME_TAIL"
# Make blob filename more friendly: change space to underscore
- DRIVER_FILE="$DRIVER_HOME"/"${DRIVER_FILE// /_}"
- [ $DEBUG ] && echo DRIVER_FILE: $DRIVER_FILE
- uci set $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].driver_file="$DRIVER_FILE"
+ DRIVER_FILE="$DRIVER_HOME"/"$(echo "$DRIVER_FILE" | sed 's/ /_/g')"
+ [ "$DEBUG" ] && echo DRIVER_FILE: "$DRIVER_FILE"
+ uci set "$DAEMON".@"$DAEMON"[$UCI_DEV_CFG_NUMBER].driver_file="$DRIVER_FILE"
fi
done
}
daemon_restart() {
- logger -t "$DAEMON_HOTPLUG" -p $DAEMON_INFO "(Re)starting $DAEMON"
+ logger -t "$DAEMON_HOTPLUG" -p "$DAEMON_INFO" "(Re)starting $DAEMON"
/etc/init.d/$DAEMON restart
}
daemon_stop() {
- logger -t "$DAEMON_HOTPLUG" -p $DAEMON_INFO "Stopping $DAEMON"
+ logger -t "$DAEMON_HOTPLUG" -p "$DAEMON_INFO" "Stopping $DAEMON"
/etc/init.d/$DAEMON stop
}
send_driver() {
- DRIVER_FILE=$( uci -q get $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].driver_file )
+ DRIVER_FILE=$( uci -q get "$DAEMON".@"$DAEMON"[$UCI_DEV_CFG_NUMBER].driver_file )
- if [ -e $DRIVER_FILE ]; then
- logger -t "$DAEMON_HOTPLUG" -p $DAEMON_INFO "Sending driver to $DAEMON printer $THIS_USB_VIDPID"
+ if [ -e "$DRIVER_FILE" ]; then
+ logger -t "$DAEMON_HOTPLUG" -p "$DAEMON_INFO" "Sending driver to $DAEMON printer $THIS_USB_VIDPID"
- if ! cat $DRIVER_FILE > $CHAR_DEV; then
- logger -t "$DAEMON_HOTPLUG" -p $DAEMON_ERR "Sending driver to $CHAR_DEV [ $THIS_USB_VIDPID ] failed for some reason."
+ if ! cat "$DRIVER_FILE" > "$CHAR_DEV"; then
+ logger -t "$DAEMON_HOTPLUG" -p "$DAEMON_ERR" "Sending driver to $CHAR_DEV [ $THIS_USB_VIDPID ] failed for some reason."
else
- logger -t "$DAEMON_HOTPLUG" -p $DAEMON_INFO "Sent $DRIVER_FILE to $CHAR_DEV [ $THIS_USB_VIDPID ]."
+ logger -t "$DAEMON_HOTPLUG" -p "$DAEMON_INFO" "Sent $DRIVER_FILE to $CHAR_DEV [ $THIS_USB_VIDPID ]."
daemon_restart
fi
else
- logger -t "$DAEMON_HOTPLUG" -p $DAEMON_ERR "Missing driver file: $DRIVER_FILE for $CHAR_DEV [ $THIS_USB_VIDPID ] (please upload it)."
+ logger -t "$DAEMON_HOTPLUG" -p "$DAEMON_ERR" "Missing driver file: $DRIVER_FILE for $CHAR_DEV [ $THIS_USB_VIDPID ] (please upload it)."
fi
}
get_and_store_printer_info
- [ $DEBUG ] && echo THIS_USB_VIDPID: $THIS_USB_VIDPID
- [ $DEBUG ] && echo CHAR_DEV: $CHAR_DEV
+ [ "$DEBUG" ] && echo THIS_USB_VIDPID: "$THIS_USB_VIDPID"
+ [ "$DEBUG" ] && echo CHAR_DEV: "$CHAR_DEV"
# usb subsys only:
- # [ $DEBUG ] && echo DEVTYPE: $DEVTYPE
- # [ $DEBUG ] && echo DEV_TYPE_FILTER: $DEV_TYPE_FILTER
- # [ $DEBUG ] && echo PRODUCT: $PRODUCT
+ # [ "$DEBUG" ] && echo DEVTYPE: $DEVTYPE
+ # [ "$DEBUG" ] && echo DEV_TYPE_FILTER: $DEV_TYPE_FILTER
+ # [ "$DEBUG" ] && echo PRODUCT: $PRODUCT
# Extra checks available when run as hotplug usb script:
# [ "$DEVTYPE" == "${DEV_TYPE_FILTER}" ]
# [ -z "${PRODUCT##*$THIS_USB_VIDPID*}" ]
# Ensure dev is character device
- if [ -n "$THIS_USB_VIDPID" -a -c $CHAR_DEV ]; then
+ if [ -n "$THIS_USB_VIDPID" ] && [ -c "$CHAR_DEV" ]; then
# if zero string, i.e. usb_ID is a match for $PRODUCT supplied by hotplug
- if [ $(uci -q get $DAEMON.@$DAEMON[$UCI_DEV_CFG_NUMBER].usbvidpid) == "$THIS_USB_VIDPID" ]; then
- [ $DEBUG ] && echo "THIS_USB_VIDPID match for $DAEMON device $THIS_USB_VIDPID."
+ if [ "$(uci -q get "$DAEMON".@"$DAEMON"[$UCI_DEV_CFG_NUMBER].usbvidpid)" = "$THIS_USB_VIDPID" ]; then
+ [ "$DEBUG" ] && echo "THIS_USB_VIDPID match for $DAEMON device $THIS_USB_VIDPID."
send_driver
else
- [ $DEBUG ] && echo "No THIS_USB_VIDPID match."
+ [ "$DEBUG" ] && echo "No THIS_USB_VIDPID match."
fi
fi
esac
# Commit any changes
-[ -n $( uci -q changes $DAEMON ) ] && uci commit $DAEMON
+[ -n "$( uci -q changes $DAEMON )" ] && uci commit $DAEMON
# Copyright (C) 2007 OpenWrt.org
START=99
USE_PROCD=1
+DAEMON_NAME="p910nd"
+CONFIG="p910nd"
append_bool() {
local section="$1"
}
start_service() {
- config_load "p910nd"
- config_foreach start_p910nd p910nd
+ config_load $CONFIG
+ config_foreach start_p910nd $CONFIG
}
start_p910nd() {
local section="$1" runas_root
config_get_bool "enabled" "$section" "enabled" '0'
- if [ "$enabled" -gt 0 ]; then
+ config_get device "$section" device
+ # If the device path exists, the device is connected; set it up:
+ if [ "$enabled" -gt 0 ] && [ -e "$device" ]; then
args="-d "
config_get port "$section" port
- name=p910${port}d
append_bool "$section" bidirectional "-b"
append_string "$section" device "-f "
append_string "$section" bind "-i "
append_string "$section" port ""
- procd_open_instance $name
- procd_set_param command /usr/sbin/p910nd $args
+ procd_open_instance $DAEMON_NAME
+ procd_set_param command /usr/sbin/$DAEMON_NAME $args
procd_set_param respawn
config_get_bool runas_root "$section" runas_root 0
- [ "$runas_root" -ne 1 ] && procd_set_param user p910nd
+ [ "$runas_root" -ne 1 ] && procd_set_param user $DAEMON_NAME
config_get_bool "mdns" "$section" "mdns" '0'
- config_get mdns_note "$section" mdns_note
- config_get mdns_ty "$section" mdns_ty
- config_get mdns_product "$section" mdns_product
- config_get mdns_mfg "$section" mdns_mfg
- config_get mdns_mdl "$section" mdns_mdl
- config_get mdns_cmd "$section" mdns_cmd
- [ "$mdns" -gt 0 ] && procd_add_mdns "pdl-datastream" "tcp" "$((port+9100))" "note=$mdns_note" "ty=$mdns_ty" "product=$mdns_product" "usb_MFG=$mdns_mfg" "usb_MDL=$mdns_mdl" "usb_CMD=$mdns_cmd"
+ if [ "$mdns" -gt 0 ]; then
+ config_get mdns_note "$section" mdns_note
+ config_get mdns_ty "$section" mdns_ty
+ config_get mdns_product "$section" mdns_product
+ config_get mdns_mfg "$section" mdns_mfg
+ config_get mdns_mdl "$section" mdns_mdl
+ config_get mdns_cmd "$section" mdns_cmd
+ # Optional parameters
+ config_get mdns_cid "$section" mdns_cid
+ config_get mdns_cls "$section" mdns_cls
+ config_get mdns_cmt "$section" mdns_cmt
+ config_get mdns_des "$section" mdns_des
+ config_get mdns_drv "$section" mdns_drv
+ config_get mdns_sn "$section" mdns_sn
+ config_get mdns_ver "$section" mdns_ver
+ # Set initial arguments
+ set -- "pdl-datastream" "tcp" "$((port+9100))"
+ set -- "$@" "txtvers=1"
+ # bonjourprinting-1.2.1.pdf spec mandates (at least) MFG, MDL, CMD for Socket type
+ [ -n "$mdns_note" ] && set -- "$@" "note=$mdns_note"
+ [ -n "$mdns_ty" ] && set -- "$@" "ty=$mdns_ty"
+ [ -n "$mdns_product" ] && set -- "$@" "product=$mdns_product"
+ [ -n "$mdns_mfg" ] && set -- "$@" "usb_MFG=$mdns_mfg"
+ [ -n "$mdns_mdl" ] && set -- "$@" "usb_MDL=$mdns_mdl"
+ [ -n "$mdns_cmd" ] && set -- "$@" "usb_CMD=$mdns_cmd"
+ # Optional parameters
+ [ -n "$mdns_cid" ] && set -- "$@" "usb_CID=$mdns_cid"
+ [ -n "$mdns_cls" ] && set -- "$@" "usb_CLS=$mdns_cls"
+ [ -n "$mdns_cmt" ] && set -- "$@" "usb_CMT=$mdns_cmt"
+ [ -n "$mdns_des" ] && set -- "$@" "usb_DES=$mdns_des"
+ [ -n "$mdns_drv" ] && set -- "$@" "usb_DRV=$mdns_drv"
+ [ -n "$mdns_sn" ] && set -- "$@" "usb_SN=$mdns_sn"
+ [ -n "$mdns_ver" ] && set -- "$@" "usb_VER=$mdns_ver"
+
+ # Call procd_add_mdns with the positional parameters
+ MDNS_INSTANCE_NAME="$mdns_ty" procd_add_mdns "$@"
+ fi
procd_close_instance
fi
}
service_triggers()
{
procd_open_trigger
- procd_add_config_trigger "config.change" "p910nd" /etc/init.d/p910nd reload
+ procd_add_config_trigger "config.change" $DAEMON_NAME /etc/init.d/$DAEMON_NAME reload
procd_close_trigger
}
#
-# Copyright (C) 2019-2022 Daniel Bermond
+# Copyright (C) 2019-2024 Daniel Bermond
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
include $(TOPDIR)/rules.mk
PKG_NAME:=proxychains-ng
-PKG_VERSION:=4.16
+PKG_VERSION:=4.17
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/rofl0r/proxychains-ng/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=5f66908044cc0c504f4a7e618ae390c9a78d108d3f713d7839e440693f43b5e7
+PKG_HASH:=1a2dc68fcbcb2546a07a915343c1ffc75845f5d9cc3ea5eb3bf0b62a66c0196f
PKG_MAINTAINER:=Daniel Bermond <dbermond@archlinux.org>
PKG_LICENSE:=GPL-2.0-or-later
PKG_NAME:=snort3
PKG_VERSION:=3.1.78.0
-PKG_RELEASE:=2
+PKG_RELEASE:=4
PKG_SOURCE:=$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/snort3/snort3/archive/refs/tags/
SUBMENU:=Firewall
SECTION:=net
CATEGORY:=Network
- DEPENDS:=+libstdcpp +libdaq3 +libdnet +libopenssl +libpcap +libpcre +libpthread +libuuid +zlib +libhwloc +libtirpc @HAS_LUAJIT_ARCH +luajit +libatomic +kmod-nft-queue +liblzma
+ DEPENDS:=+libstdcpp +libdaq3 +libdnet +libopenssl +libpcap +libpcre +libpthread +libuuid +zlib +libhwloc +libtirpc @HAS_LUAJIT_ARCH +luajit +libatomic +kmod-nft-queue +liblzma \
+ +ucode +ucode-mod-fs +ucode-mod-uci
TITLE:=Lightweight Network Intrusion Detection System
URL:=http://www.snort.org/
MENU:=1
function rpad(str, fill, len)
{
- str = rtrim(str) + ' ';
- while (length(str) < len) {
- str += fill;
- }
- return str;
+ str = rtrim(str) + ' ';
+ while (length(str) < len) {
+ str += fill;
+ }
+ return str;
}
//------------------------------------------------------------------------------
+const ConfigItem = {
+ contains: function(value) {
+ // Check if the value is contained in the listed values,
+ // depending on the item type.
+ switch (this.type) {
+ case "enum":
+ return value in this.values;
+ case "range":
+ return value >= this.values[0] && value <= this.values[1];
+ default:
+ return true;
+ }
+ },
+
+ allowed: function() {
+ // Show a pretty version of the possible values, for error messages.
+ switch (this.type) {
+ case "enum":
+ return "one of [" + join(", ", this.values) + "]";
+ case "range":
+ return `${this.values[0]} <= x <= ${this.values[1]}`;
+ case "path":
+ return "a path string";
+ case "str":
+ return "a string";
+ default:
+ return "???";
+ }
+ },
+};
+
function config_item(type, values, def) {
// If no default value is provided explicity, then values[0] is used as default.
if (! type in [ "enum", "range", "path", "str" ]) {
wrn(`A 'range' type item must have exactly 2 values in ascending order.`);
return;
}
- // Maybe check paths for existence???
+ // Maybe check 'path' values for existence???
- return {
+ return proto({
type: type,
values: values,
default: def ?? values[0],
-
- contains: function(value) {
- // Check if the value is contained in the listed values,
- // depending on the item type.
- switch (this.type) {
- case "enum":
- return value in this.values;
- case "range":
- return value >= this.values[0] && value <= this.values[1];
- default:
- return true;
- }
- },
-
- allowed: function() {
- // Show a pretty version of the possible values, for error messages.
- switch (this.type) {
- case "enum":
- return "one of [" + join(", ", this.values) + "]";
- case "range":
- return `${this.values[0]} <= x <= ${this.values[1]}`;
- case "path":
- return "a path string";
- case "str":
- return "a string";
- default:
- return "???";
- }
- },
- }
+ }, ConfigItem);
};
const snort_config = {
# SPDX-License-Identifier: GPL-2.0
# shellcheck disable=SC2039,SC2155 # "local" not defined in POSIX sh
+set -o nounset
+
PROG="$(command -v snort)"
MAIN="/usr/share/snort/main.uc"
CONF_DIR=$(uci -q get snort.snort.temp_dir || echo "/var/snort.d")
teardown() {
# Merely cleans up after.
nft_rm_table
- [ -e "$CONF" ] && rm "$CONF"
+ [ -e "$CONF" ] && rm "${CONF:?}"
}
resetup() {
local test_conf="${CONF_DIR}/test_conf.lua"
_SNORT_WITHOUT_RULES="$no_rules" print snort > "${test_conf}" || die "Errors during generation of snort config"
if $PROG -T $warn -c "${test_conf}" 2> $OUT ; then
- rm "${test_conf}"
+ rm "${test_conf:?}"
else
die "Errors in snort config tests. Examine ${test_conf} for issues"
fi
print nftables > "${test_nft}" || die "Errors during generation of nftables config"
$VERBOSE && options='-e'
if nft $options --check -f "${test_nft}" ; then
- rm "${test_nft}"
+ rm "${test_nft:?}"
else
die "Errors in nftables config tests. Examine ${test_nft} for issues"
fi
local msg src srcP dst dstP dir gid sid
local tmp=$(mktemp -t snort.rep.XXXXXX)
_filter_by_date "${log_dir}" | while read -r line; do
- unset -v src dst srcP dstP
+ src='' && dst='' && srcP='' && dstP=''
eval "$(jsonfilter -s "$line" \
-e 'msg=$.msg' \
-e 'src=$.src_addr' \
[ "$NLINES" = 0 ] && output="cat" || output="head -n $NLINES"
local lines=$($SORT "$tmp" | uniq -c | $SORT -nr | $output)
- rm "$tmp"
+ rm "${tmp:?}"
if [ -z "$lines" ]; then
echo -n "There were no incidents "
[ -z "$PATTERN" ] && echo "reported." || echo "matching pattern '$PATTERN'."
echo 'Hosts by name:'
local IP
local peerdns=$(ifstatus wan | jsonfilter -e '$["dns-server"][0]')
- echo "$lines" | awk -F'#' '{printf "%s\n%s\n", $2, $3}' | sed 's/(.*//' | sort -u \
+ echo "$lines" | awk -F'#' '{printf "%s\n%s\n", $2, $3}' | sed 's/(.*//' | $SORT -u \
| while read -r IP; do
[ -z "$IP" ] && continue
n=$(nslookup "$IP" | awk '/name = / {n=$NF} END{print n}')
exit 1
}
-while [ -n "$1" ]; do
+while [ "${1:-}" ]; do
case "$1" in
-h|--help)
usage
# SPDX-License-Identifier: GPL-2.0
# shellcheck disable=SC2039,SC2155 # "local" not defined in POSIX sh
+set -o nounset
+
alias log='logger -s -t "snort-rules[$$]" -p "info"'
download_rules() {
log "Generating testing rules..."
archive_loc="testing-rules"
new_rules="$data_dir/$archive_loc"
- rm -fr "$new_rules"
+ rm -fr "${new_rules:?}"
mkdir -p "$new_rules"
rules_file="$new_rules/testing.rules"
{
old_rules="$data_dir/old.rules"
if $backup; then
- rm -fr "$old_rules"
+ rm -fr "${old_rules:?}"
mkdir -p "$old_rules"
for rules_file in "$rules_dir"/*; do
mkdir -p "$conf_dir"
- rm -fr "$rules_dir"
+ rm -fr "${rules_dir:?}"
if $persist; then
mv -f "$new_rules" "$rules_dir"
else
exit 1
}
-while [ -n "$1" ]; do
+while [ "${1:-}" ]; do
case "$1" in
-h|--help)
usage
include $(TOPDIR)/rules.mk
PKG_NAME:=softethervpn5
-PKG_VERSION:=5.02.5180
-PKG_RELEASE:=3
+PKG_VERSION:=5.02.5181
+PKG_RELEASE:=1
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYING
PKG_SOURCE_URL:=https://github.com/SoftEtherVPN/SoftEtherVPN/releases/download/$(PKG_VERSION)/
PKG_SOURCE:=SoftEtherVPN-$(PKG_VERSION).tar.xz
-PKG_HASH:=b5649a8ea3cc6477325e09e2248ef708d434ee3b2251eb8764bcfc15fb1de456
+PKG_HASH:=2222ef48b3f9102265ef7d27e496ad40a1bd1eaba8093bc5e696b48402c52441
HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/SoftEtherVPN-$(PKG_VERSION)
PKG_BUILD_DIR:=$(BUILD_DIR)/SoftEtherVPN-$(PKG_VERSION)
--- a/src/Mayaqua/CMakeLists.txt
+++ b/src/Mayaqua/CMakeLists.txt
-@@ -55,7 +55,7 @@ if(UNIX)
+@@ -80,7 +80,7 @@ if(UNIX)
find_package(Threads REQUIRED)
# In some cases libiconv is not included in libc
- find_library(LIB_ICONV iconv)
+ find_library(LIB_ICONV iconv HINTS "${ICONV_LIB_PATH}")
+ find_library(LIB_M m)
find_library(LIB_RT rt)
-
+++ /dev/null
-From ee3bf7f5079bcad51cc89197b6a9e34da746fc7e Mon Sep 17 00:00:00 2001
-From: Rosen Penev <rosenp@gmail.com>
-Date: Sat, 7 Aug 2021 20:05:04 -0700
-Subject: [PATCH] fix compilation without OpenSSL engines
-
-Signed-off-by: Rosen Penev <rosenp@gmail.com>
----
- src/Mayaqua/Encrypt.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
---- a/src/Mayaqua/Encrypt.c
-+++ b/src/Mayaqua/Encrypt.c
-@@ -3128,6 +3128,7 @@ bool IsEncryptedK(BUF *b, bool private_k
- \r
- K *OpensslEngineToK(char *key_file_name, char *engine_name)\r
- {\r
-+#ifndef OPENSSL_NO_ENGINE\r
- K *k;\r
- #if OPENSSL_API_COMPAT < 0x10100000L\r
- ENGINE_load_dynamic();\r
-@@ -3140,6 +3141,9 @@ K *OpensslEngineToK(char *key_file_name,
- k->pkey = pkey;\r
- k->private_key = true;\r
- return k;\r
-+#else\r
-+ return NULL;\r
-+#endif\r
- }\r
- \r
- // Convert the BUF to a K\r
#include "Server.h"\r
\r
#include "Admin.h"\r
-@@ -6561,6 +6562,10 @@ UINT SiWriteConfigurationFile(SERVER *s)
+@@ -6593,6 +6594,10 @@ UINT SiWriteConfigurationFile(SERVER *s)
{\r
return 0;\r
}\r
bool "Enable ICAP client support"
default n
- config SQUID_enable-dlmalloc
- bool "Compile & use the malloc package by Doug Lea"
- default y
-
config SQUID_enable-ssl-crtd
bool "Enable dynamic SSL certificate generation"
depends on !SQUID_use-gnutls
comment "Additional tools"
endif
-
include $(TOPDIR)/rules.mk
PKG_NAME:=squid
-PKG_VERSION:=5.7
-PKG_RELEASE:=1
+PKG_VERSION:=6.7
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
-PKG_SOURCE_URL:=http://www2.pl.squid-cache.org/Versions/v5/ \
- http://www.squid-cache.org/Versions/v5/
-PKG_HASH:=6b0753aaba4c9c4efd333e67124caecf7ad6cc2d38581f19d2f0321f5b7ecd81
+PKG_SOURCE_URL:=http://www2.pl.squid-cache.org/Versions/v6/ \
+ http://www.squid-cache.org/Versions/v6/
+PKG_HASH:=e14daa4eae41925d1ae3f08e64439a6aaa3011bdced686628b8de697d5ab8428
PKG_MAINTAINER:=Marko Ratkaj <markoratkaj@gmail.com>
PKG_LICENSE:=GPL-2.0-or-later
SECTION:=net
CATEGORY:=Network
SUBMENU:=Web Servers/Proxies
- URL:=http://www.squid-cache.org/
+ URL:=https://www.squid-cache.org/
endef
define Package/squid
CONFIGURE_ARGS += \
BUILDCXX=$(HOSTCXX_NOCACHE) \
- --config-cache \
--datadir=/usr/share/squid \
--libexecdir=/usr/lib/squid \
--sysconfdir=/etc/squid \
- --enable-shared \
--disable-static \
--enable-delay-pools \
- --enable-kill-parent-hack \
- --enable-ssl \
--enable-cache-digests \
--enable-linux-netfilter \
--disable-unlinkd \
--enable-x-accelerator-vary \
- --disable-translation \
--disable-auto-locale \
- --with-dl \
- --with-pthreads \
--enable-epoll \
- --with-maxfd=2048 \
- --disable-ecap \
+ --with-filedescriptors=2048 \
--disable-external-acl-helpers \
--disable-arch-native \
- --with-krb5-config=no \
--without-mit-krb5 \
+ --without-heimdal-krb5 \
--without-netfilter-conntrack \
--disable-ident-lookups \
$(if $(CONFIG_SQUID_auth-basic),--enable,--disable)-auth-basic \
$(if $(CONFIG_SQUID_auth-digest),--enable,--disable)-auth-digest \
$(if $(CONFIG_SQUID_auth-ntlm),--enable,--disable)-auth-ntlm \
$(if $(CONFIG_SQUID_auth-negotiate),--enable,--disable)-auth-negotiate \
- $(if $(CONFIG_SQUID_enable-ipv6),--enable,--disable)-dlmalloc \
$(if $(CONFIG_SQUID_enable-ipv6),--enable,--disable)-ipv6 \
$(if $(CONFIG_SQUID_enable-ssl-crtd),--enable-ssl-crtd) \
$(if $(CONFIG_SQUID_use-gnutls),--with,--without)-gnutls \
$(if $(CONFIG_SQUID_enable-icmp),--enable,--disable)-icmp \
$(if $(CONFIG_SQUID_enable-icap-client),--enable,--disable)-icap-client \
$(if $(CONFIG_SQUID_enable-snmp),--enable,--disable)-snmp \
- $(if $(CONFIG_SQUID_with-libcap),--with,--without)-libcap \
+ $(if $(CONFIG_SQUID_with-libcap),--with,--without)-cap \
$(if $(CONFIG_SQUID_with-nettle),--with,--without)-nettle \
$(if $(CONFIG_SQUID_with-expat),--with,--without)-expat \
- $(if $(CONFIG_SQUID_with-libxml2),--with,--without)-libxml2
+ $(if $(CONFIG_SQUID_with-libxml2),--with,--without)-xml2
CONFIGURE_VARS += \
ac_cv_header_linux_netfilter_ipv4_h=yes \
--- a/src/Makefile.am
+++ b/src/Makefile.am
-@@ -761,7 +761,7 @@ cache_cf.o: cf_parser.cci
+@@ -626,7 +626,7 @@ cache_cf.o: cf_parser.cci
# cf_gen builds the configuration files.
cf_gen$(EXEEXT): $(cf_gen_SOURCES) $(cf_gen_DEPENDENCIES) cf_gen_defines.cci
- $(BUILDCXX) $(BUILDCXXFLAGS) -o $@ $(srcdir)/cf_gen.cc -I$(srcdir) -I$(top_builddir)/include/ -I$(top_builddir)/src
-+ $(BUILDCXX) -o $@ $(srcdir)/cf_gen.cc -I$(srcdir) -I$(top_builddir)/include/ -I$(top_builddir)/src
++ $(BUILDCXX) -std=c++17 -o $@ $(srcdir)/cf_gen.cc -I$(srcdir) -I$(top_builddir)/include/ -I$(top_builddir)/src
# squid.conf.default is built by cf_gen when making cf_parser.cci
squid.conf.default squid.conf.documented: cf_parser.cci
--- /dev/null
+--- a/configure.ac
++++ b/configure.ac
+@@ -1043,7 +1043,7 @@ AC_MSG_NOTICE([HTCP support enabled: $en
+
+ # Cryptograhic libraries
+ SQUID_AUTO_LIB(nettle,[Nettle crypto],[LIBNETTLE])
+-AS_IF(test "x$with_nettle" != "xno"],[
++AS_IF([test "x$with_nettle" != "xno"],[
+ SQUID_STATE_SAVE(squid_nettle_state)
+ PKG_CHECK_MODULES([LIBNETTLE],[nettle >= 3.4],[],[
+ CPPFLAGS="$LIBNETTLE_CFLAGS $CPPFLAGS"
PKG_NAME:=tcpreplay
PKG_VERSION:=4.4.4
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://github.com/appneta/tcpreplay/releases/download/v$(PKG_VERSION)
--- /dev/null
+From 55ad9d1d701e644ed5b8821456e31acf2e72920c Mon Sep 17 00:00:00 2001
+From: Gabriel Ganne <gabriel.ganne@gmail.com>
+Date: Sun, 28 Jan 2024 10:02:30 +0100
+Subject: [PATCH] allow recursice call to tcpedit_dlt_cleanup()
+
+This is just a quick hack to prevent a double-free should
+tcpedit_dlt_cleanup() call itself, which can hapen through dlt_jnpr_ether_cleanup()
+
+Ref: #813
+---
+ src/tcpedit/plugins/dlt_jnpr_ether/jnpr_ether.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+--- a/src/tcpedit/plugins/dlt_jnpr_ether/jnpr_ether.c
++++ b/src/tcpedit/plugins/dlt_jnpr_ether/jnpr_ether.c
+@@ -164,8 +164,10 @@ dlt_jnpr_ether_cleanup(tcpeditdlt_t *ctx
+ jnpr_ether_config_t *config;
+
+ config = (jnpr_ether_config_t *)ctx->encoder->config;
+- if (config->subctx != NULL)
++ if (config->subctx != NULL) {
++ ctx->decoded_extra = NULL;
+ tcpedit_dlt_cleanup(config->subctx);
++ }
+ safe_free(plugin->config);
+ plugin->config = NULL;
+ plugin->config_size = 0;
include $(TOPDIR)/rules.mk
PKG_NAME:=tgt
-PKG_VERSION:=1.0.89
+PKG_VERSION:=1.0.90
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/fujita/tgt/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=cd09daffacc00a6641a7b95d31c43441656ce0b01af8d512359bc91bac3c6d99
+PKG_HASH:=e832a19c2831bde83e7078cd7a8d2fc8fe5c5f38ddd51130f5123013416d4cff
PKG_MAINTAINER:=Maxim Storchak <m.storchak@gmail.com>
PKG_LICENSE:=GPL-2.0-only
#define NR_SCSI_OPCODES 256
--- a/usr/util.h
+++ b/usr/util.h
-@@ -16,6 +16,10 @@
- #include <limits.h>
- #include <linux/types.h>
+@@ -20,6 +20,10 @@
+ #include <sys/types.h>
+ #include <sys/stat.h>
+#ifndef __WORDSIZE
+#include <sys/reg.h>
include $(INCLUDE_DIR)/package.mk
-GEOIP_VER:=202401250041
+GEOIP_VER:=202402080038
GEOIP_FILE:=geoip.dat.$(GEOIP_VER)
define Download/geoip
URL:=https://github.com/v2fly/geoip/releases/download/$(GEOIP_VER)/
URL_FILE:=geoip.dat
FILE:=$(GEOIP_FILE)
- HASH:=cb005854fd16474df068a3a5ce78c845ae6cb53cbce80f6a7ad84b6f52f28a84
+ HASH:=d83e75f2b2968d97a915a552b991ea71333c54a0e848634de1b0ae16b7cb5338
endef
-GEOSITE_VER:=20240123112230
+GEOSITE_VER:=20240131105845
GEOSITE_FILE:=dlc.dat.$(GEOSITE_VER)
define Download/geosite
URL:=https://github.com/v2fly/domain-list-community/releases/download/$(GEOSITE_VER)/
URL_FILE:=dlc.dat
FILE:=$(GEOSITE_FILE)
- HASH:=7c2efd90b7e3137e6bc68a78e641b5d9d5790330aa1de129510eeb432f020ec5
+ HASH:=83051b7c7fcfe61c88f18ad9c8a97847ee68c7affe53e1eb6de02fc0d9bdfb49
endef
-GEOSITE_IRAN_VER:=202401220028
+GEOSITE_IRAN_VER:=202402050026
GEOSITE_IRAN_FILE:=iran.dat.$(GEOSITE_IRAN_VER)
define Download/geosite-ir
URL:=https://github.com/bootmortis/iran-hosted-domains/releases/download/$(GEOSITE_IRAN_VER)/
URL_FILE:=iran.dat
FILE:=$(GEOSITE_IRAN_FILE)
- HASH:=c0070879b1e98e748ecefbd63306566d44ec1dad3237176655f5f282ba014da7
+ HASH:=1f80f4b5471dfbc5dd3547db46ff7e7bc691998a9fc8c750f9507f008450e375
endef
define Package/v2ray-geodata/template
include $(TOPDIR)/rules.mk
PKG_NAME:=alsa-utils
-PKG_VERSION:=1.2.9
+PKG_VERSION:=1.2.11
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://www.alsa-project.org/files/pub/utils/ \
https://distfiles.gentoo.org/distfiles/
-PKG_HASH:=e7623d4525595f92e11ce25ee9a97f2040a14c6e4dcd027aa96e06cbce7817bd
+PKG_HASH:=9ac6ca3a883f151e568dcf979b8d2e5cbecc51b819bb0e6bb8a2e9b34cc428a7
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=GPL-2.0-or-later
include $(TOPDIR)/rules.mk
PKG_NAME:=mpc
-PKG_VERSION:=0.34
-PKG_RELEASE:=2
+PKG_VERSION:=0.35
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://www.musicpd.org/download/mpc/0
-PKG_HASH:=691e3f3654bc10d022bb0310234d0bc2d8c075a698f09924d9ebed8f506fda20
+PKG_HASH:=382959c3bfa2765b5346232438650491b822a16607ff5699178aa1386e3878d4
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=GPL-2.0-or-later
include $(TOPDIR)/rules.mk
PKG_NAME:=mpd
-PKG_VERSION:=0.23.13
+PKG_VERSION:=0.23.15
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://www.musicpd.org/download/mpd/0.23
-PKG_HASH:=a96b01e6fbbb7e8ab25eb7c15d5c811c62eb19b76d143a802f51674791f1d519
+PKG_HASH:=550132239ad1acf82ccf8905b56cc13dc2c81a4489b96fba7731b3049907661a
PKG_MAINTAINER:=
PKG_LICENSE:=GPL-2.0-or-later
include $(TOPDIR)/rules.mk
PKG_NAME:=acl
-PKG_VERSION:=2.3.1
-PKG_RELEASE:=2
+PKG_VERSION:=2.3.2
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://git.savannah.nongnu.org/cgit/acl.git/snapshot
-PKG_HASH:=8cad1182cc5703c3e8bf7a220fc267f146246f088d1ba5dd72d8b02736deedcc
+PKG_HASH:=0fc318808c1e91925398cbe41399a33b74dcf788a1c0af4feae8f7a322c6e6fd
PKG_MAINTAINER:=Maxim Storchak <m.storchak@gmail.com>
PKG_LICENSE:=LGPL-2.1 GPL-2.0
--- a/configure.ac
+++ b/configure.ac
-@@ -33,9 +33,6 @@ AC_SYS_LARGEFILE
+@@ -34,12 +34,6 @@ AC_SYS_LARGEFILE
AM_PROG_AR
LT_INIT
--AM_GNU_GETTEXT_VERSION([0.18.2])
+-dnl Minimal version supporting AM_GNU_GETTEXT_REQUIRE_VERSION.
+-AM_GNU_GETTEXT_VERSION([0.19.6])
+-dnl Require at least the following version, but use the latest available one.
+-AM_GNU_GETTEXT_REQUIRE_VERSION([0.19.8])
-AM_GNU_GETTEXT([external])
-
AC_ARG_ENABLE([debug],
[AS_HELP_STRING([--enable-debug], [Enable extra debugging])])
AS_IF([test "x$enable_debug" = "xyes"],
-@@ -67,6 +64,5 @@ AC_CONFIG_COMMANDS([include/sys],
+@@ -69,6 +63,5 @@ AC_CONFIG_COMMANDS([include/sys],
AC_CONFIG_FILES([
libacl.pc
Makefile
--- a/autogen.sh
+++ b/autogen.sh
-@@ -1,4 +1,2 @@
+@@ -1,6 +1,4 @@
#!/bin/sh -ex
-po/update-potfiles
-autopoint --force
+ am_libdir=$(automake --print-libdir)
+ cp "${am_libdir}/INSTALL" doc/
exec autoreconf -f -i
+++ /dev/null
-From 2b42f64737adf6a2ddd491213580d6e9cdd2f5af Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 10 Nov 2022 18:04:15 -0800
-Subject: [PATCH] chacl: Use portable version of dirent and readdir
-
-Using 64bit versions on 32bit architectures should be enabled with
---enable-largefile, this makes it portable across musl and glibc
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- tools/chacl.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
---- a/tools/chacl.c
-+++ b/tools/chacl.c
-@@ -320,7 +320,7 @@ walk_dir(acl_t acl, acl_t dacl, const ch
- {
- int failed = 0;
- DIR *dir;
-- struct dirent64 *d;
-+ struct dirent *d;
- char *name;
-
- if ((dir = opendir(fname)) == NULL) {
-@@ -332,7 +332,7 @@ walk_dir(acl_t acl, acl_t dacl, const ch
- return(0); /* got a file, not an error */
- }
-
-- while ((d = readdir64(dir)) != NULL) {
-+ while ((d = readdir(dir)) != NULL) {
- /* skip "." and ".." entries */
- if (strcmp(d->d_name, ".") == 0 || strcmp(d->d_name, "..") == 0)
- continue;
include $(TOPDIR)/rules.mk
PKG_NAME:=attr
-PKG_VERSION:=2.5.1
+PKG_VERSION:=2.5.2
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://git.savannah.nongnu.org/cgit/attr.git/snapshot
-PKG_HASH:=69991b2fc5fe7917d996b05d5d4fe3c44d074c9d806dd263b14a42fab57bfc2f
+PKG_HASH:=b266cf45e2256b4d85a86554b42c0218abce40356f5c3026f88e15dcf73df775
PKG_MAINTAINER:=Maxim Storchak <m.storchak@gmail.com>
PKG_CPE_ID:=cpe:/a:attr_project:attr
--- a/configure.ac
+++ b/configure.ac
-@@ -35,9 +35,6 @@ AC_SYS_LARGEFILE
+@@ -37,9 +37,6 @@ AC_SYS_LARGEFILE
AM_PROG_AR
LT_INIT
AC_ARG_ENABLE([debug],
[AS_HELP_STRING([--enable-debug], [Enable extra debugging])])
AS_IF([test "x$enable_debug" = "xyes"],
-@@ -61,6 +58,5 @@ AC_CONFIG_COMMANDS([include/attr],
+@@ -65,6 +62,5 @@ AC_CONFIG_COMMANDS([include/attr],
AC_CONFIG_FILES([
libattr.pc
Makefile
--- a/autogen.sh
+++ b/autogen.sh
-@@ -1,4 +1,2 @@
+@@ -1,6 +1,4 @@
#!/bin/sh -ex
-po/update-potfiles
-autopoint --force
+ am_libdir=$(automake --print-libdir)
+ cp "${am_libdir}/INSTALL" doc/
exec autoreconf -f -i
include $(TOPDIR)/rules.mk
PKG_NAME:=bash
-PKG_VERSION:=5.2.15
+PKG_VERSION:=5.2.21
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@GNU/bash
-PKG_HASH:=13720965b5f4fc3a0d4b61dd37e7565c741da9a5be24edc2ae00182fc1b3588c
+PKG_HASH:=c8e31bdc59b69aaffc5b36509905ba3e5cbb12747091d27b4b977f078560d5b8
PKG_MAINTAINER:=Marcel Denia <naoir@gmx.net>
PKG_LICENSE:=GPL-3.0-or-later
SUBMENU:=Shells
TITLE:=The GNU Bourne Again SHell
DEPENDS:=+libncurses +libreadline
- URL:=http://www.gnu.org/software/bash/
+ URL:=https://www.gnu.org/software/bash/
endef
define Package/bash/description
include $(TOPDIR)/rules.mk
PKG_NAME:=dmidecode
-PKG_VERSION:=3.2
-PKG_RELEASE:=2
+PKG_VERSION:=3.5
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@SAVANNAH/$(PKG_NAME)
-PKG_HASH:=077006fa2da0d06d6383728112f2edef9684e9c8da56752e97cd45a11f838edd
+PKG_HASH:=79d76735ee8e25196e2a722964cf9683f5a09581503537884b256b01389cc073
PKG_MAINTAINER:=Álvaro Fernández Rojas <noltari@gmail.com>
PKG_LICENSE:=GPL-2.0
include $(TOPDIR)/rules.mk
PKG_NAME:=gawk
-PKG_VERSION:=5.2.1
-PKG_RELEASE:=2
+PKG_VERSION:=5.3.0
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNU/gawk
-PKG_HASH:=673553b91f9e18cc5792ed51075df8d510c9040f550a6f74e09c9add243a7e4f
+PKG_HASH:=ca9c16d3d11d0ff8c69d79dc0b47267e1329a69b39b799895604ed447d3ca90b
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=GPL-3.0-or-later
endef
$(eval $(call BuildPackage,gawk))
-
include $(TOPDIR)/rules.mk
PKG_NAME:=gzip
-PKG_VERSION:=1.12
+PKG_VERSION:=1.13
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNU/gzip
-PKG_HASH:=ce5e03e519f637e1f814011ace35c4f87b33c0bbabeec35baf5fbd3479e91956
+PKG_HASH:=7454eb6935db17c6655576c2e1b0fabefd38b4d0936e0f87f48cd062ce91a057
PKG_LICENSE:=GPL-3.0-or-later
PKG_CPE_ID:=cpe:/a:gnu:gzip
include $(TOPDIR)/rules.mk
PKG_NAME:=hwdata
-PKG_VERSION:=0.359
+PKG_VERSION:=0.379
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/vcrhonek/hwdata/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=07bf89f5a1b341427536b4fffe300c7848988367a1bce20fc4b1ab7e7629f861
+PKG_HASH:=b98ef646d530d5fd3afa3180efbf7c8e22d3da0088f5836f41ee25380d87b092
PKG_MAINTAINER:=
PKG_LICENSE:=GPL-2.0-or-later XFree86-1.0
include $(TOPDIR)/rules.mk
PKG_NAME:=moreutils
-PKG_VERSION:=0.65
+PKG_VERSION:=0.68
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://git.kitenet.net/index.cgi/moreutils.git/snapshot
-PKG_HASH:=60c9f6b55204e64cfcd12fd66e75cf7a061b6761f3d5b7797f2452cb17598881
+PKG_HASH:=5eb14bc7bc1407743478ebdbd83772bf3b927fd949136a2fbbde96fa6000b6e7
PKG_MAINTAINER:=Nikil Mehta <nikil.mehta@gmail.com>
PKG_LICENSE:=GPL-2.0-or-later
install $(PERLSCRIPTS) $(DESTDIR)$(PREFIX)/bin
- mkdir -p $(DESTDIR)$(PREFIX)/share/man/man1
-- install $(MANS) $(DESTDIR)$(PREFIX)/share/man/man1
+- install -m 644 $(MANS) $(DESTDIR)$(PREFIX)/share/man/man1
-
- check: isutf8
- ./is_utf8/test.sh
-
+ uninstall:
+ for i in $(BINS) $(PERLSCRIPTS); do rm -f $(DESTDIR)$(PREFIX)/bin/$$i; done
+ for i in $(MANS); do rm -f $(DESTDIR)$(PREFIX)/share/man/man1/$$i; done
include $(TOPDIR)/rules.mk
PKG_NAME:=pigz
-PKG_VERSION:=2.7
+PKG_VERSION:=2.8
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://zlib.net/pigz
-PKG_HASH:=b4c9e60344a08d5db37ca7ad00a5b2c76ccb9556354b722d56d55ca7e8b1c707
+PKG_HASH:=eb872b4f0e1f0ebe59c9f7bd8c506c4204893ba6a8492de31df416f0d5170fd0
PKG_MAINTAINER:=Ken Wong <xinxijishuwyq@gmail.com>
-PKG_LICENSE:=CUSTOM
+PKG_LICENSE:=Zlib
PKG_LICENSE_FILES:=README
PKG_CPE_ID:=cpe:/a:zlib:pigz
endef
$(eval $(call BuildPackage,pigz))
-
include $(TOPDIR)/rules.mk
PKG_NAME:=restic
-PKG_VERSION:=0.16.3
+PKG_VERSION:=0.16.4
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/restic/restic/tar.gz/v${PKG_VERSION}?
-PKG_HASH:=a94d6c1feb0034fcff3e8b4f2d65c0678f906fc21a1cf2d435341f69e7e7af52
+PKG_HASH:=d736a57972bb7ee3398cf6b45f30e5455d51266f5305987534b45a4ef505f965
PKG_LICENSE:=BSD-2-Clause
PKG_LICENSE_FILES:=LICENSE
--- /dev/null
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=stlink
+PKG_VERSION:=1.8.0
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://codeload.github.com/stlink-org/$(PKG_NAME)/tar.gz/v$(PKG_VERSION)?
+PKG_HASH:=cff760b5c212c2cc480f705b9ca7f3828d6b9c267950c6a547002cd0a1f5f6ac
+
+PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
+PKG_LICENSE:=BSD-3-Clause
+PKG_LICENSE_FILES:=LICENSE.md
+
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
+
+define Package/stlink/Default
+ SECTION:=utils
+ CATEGORY:=Utilities
+ URL:=https://github.com/stlink-org/stlink
+ TITLE:=stlink - program and debug STM32 devices
+ DEPENDS:=+libusb-1.0
+endef
+
+define Package/stlink
+ $(call Package/stlink/Default)
+ MENU:=1
+ ABI_VERSION:=1
+endef
+
+define Package/stlink/description
+ stlink is an open source toolset to program and debug STM32 devices
+ and boards manufactured by STMicroelectronics. It supports several so
+ called STLINK programmer boards (and clones thereof) which use a
+ microcontroller chip to translate commands from USB to JTAG/SWD.
+endef
+
+define GenPlugin
+ define Package/$(addprefix stlink-,$(1))
+ $(call Package/stlink/Default)
+ TITLE:=Utility $(1) from stlink
+ DEPENDS:=stlink
+ endef
+
+ define Package/$(addprefix stlink-,$(1))/description
+ Utility $(1) from the stlink package.
+ endef
+endef
+
+FILES:= \
+ st-info \
+ st-flash \
+ st-trace \
+ st-util
+
+$(foreach a,$(FILES),$(eval $(call GenPlugin,$(a))))
+
+define PartInstall
+define Package/stlink-$(1)/install
+ $(INSTALL_DIR) $$(1)/usr/bin
+ $(INSTALL_BIN) \
+ $(PKG_INSTALL_DIR)/usr/bin/$(1) \
+ $$(1)/usr/bin/
+endef
+endef
+
+$(foreach file,$(FILES),$(eval $(call PartInstall,$(file))))
+
+define Package/stlink/install
+ $(INSTALL_DIR) $(1)/usr/lib $(1)/usr/share/stlink/chips/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libstlink.so.$(ABI_VERSION)* \
+ $(1)/usr/lib/
+ $(INSTALL_DATA) \
+ $(PKG_INSTALL_DIR)/usr/share/stlink/chips/*.chip \
+ $(1)/usr/share/stlink/chips/
+endef
+
+$(eval $(call BuildPackage,stlink))
+$(foreach file,$(FILES),$(eval $(call BuildPackage,stlink-$(file))))
include $(TOPDIR)/rules.mk
PKG_NAME:=stress-ng
-PKG_VERSION:=0.17.04
+PKG_VERSION:=0.17.05
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/ColinIanKing/stress-ng/tar.gz/refs/tags/V$(PKG_VERSION)?
-PKG_HASH:=60c37d8b1effc5772fb30f638e20b1de01e0488e274e283301c3fd6c707d8538
+PKG_HASH:=48964a0de5838acfed5c78d78d5f4a1d86974883d5537ccc55df019a0186a1b5
PKG_MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>
PKG_LICENSE:=GPL-2.0-only
--- a/Makefile.config
+++ b/Makefile.config
-@@ -326,10 +326,10 @@ clean:
+@@ -327,10 +327,10 @@ clean:
.PHONY: libraries
libraries: \
configdir \
- LIB_ACL LIB_AIO LIB_APPARMOR LIB_BSD LIB_CRYPT LIB_DL \
-- LIB_EGL LIB_GBM LIB_GLES2 LIB_IPSEC_MB LIB_JPEG \
+- LIB_EGL LIB_GBM LIB_GLES2 LIB_GMP LIB_IPSEC_MB LIB_JPEG \
- LIB_JUDY LIB_KMOD LIB_MD LIB_MPFR LIB_PTHREAD LIB_PTHREAD_SPINLOCK \
- LIB_RT LIB_SCTP LIB_XXHASH LIB_Z
+ LIB_AIO LIB_APPARMOR LIB_BSD LIB_CRYPT LIB_DL \
include $(TOPDIR)/rules.mk
PKG_NAME:=telldus-mqtt
-PKG_VERSION:=0.1
+PKG_VERSION:=0.2
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/PeterFromSweden/telldus-mqtt.git
-PKG_SOURCE_VERSION:=e7f531c3d20f70977369fbb173fc74828efb32b8
-PKG_MIRROR_HASH:=95a61fbd928f3579f41491b91182b274b2d42faabf28c4a8f7c5eb1691f0ad2e
+PKG_SOURCE_VERSION:=8ee4187fd4ea44541b637bb63ed34d4cc182b2a4
+PKG_MIRROR_HASH:=e5c5ab541ffe45f1b4f9e978abed82837fb65f9367120c209890d231d44c43ec
PKG_MAINTAINER:=Peter Liedholm <PeterFromSwe884@gmail.com>
PKG_LICENSE:=LGPL-2.1-or-later
include $(TOPDIR)/rules.mk
PKG_NAME:=tio
-PKG_VERSION:=1.32
-PKG_RELEASE:=2
+PKG_VERSION:=2.7
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://github.com/tio/tio/releases/download/v$(PKG_VERSION)
-PKG_HASH:=a8f5ed6994cacb96780baa416b19e5a6d7d67e8c162a8ea4fd9eccd64984ae44
+PKG_HASH:=bf8fe434848c2c1b6540af0b42503c986068176ddc1a988cf02e521e7de5daa5
PKG_MAINTAINER:=
PKG_LICENSE:=GPL-2.0-or-later
-PKG_LICENSE_FILES:=COPYING
-
-PKG_FIXUP:=autoreconf
+PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/meson.mk
define Package/tio
SECTION:=utils
CATEGORY:=Utilities
+ SUBMENU:=Terminal
TITLE:=A simple TTY terminal I/O application
URL:=https://tio.github.io/
- SUBMENU:=Terminal
+ DEPENDS:=+libinih
endef
define Package/tio/description
define Package/tio/install
$(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/tio $(1)/usr/sbin/
+ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/tio $(1)/usr/sbin/
endef
$(eval $(call BuildPackage,tio))
include $(TOPDIR)/rules.mk
PKG_NAME:=usbutils
-PKG_VERSION:=014
+PKG_VERSION:=017
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@KERNEL/linux/utils/usb/usbutils
-PKG_HASH:=3a079cfad60560227b67192482d7813bf96326fcbb66c04254839715f276fc69
+PKG_HASH:=a6a25ffdcf9103e38d7a44732aca17073f4e602b92e4ae55625231a82702e05b
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
PKG_LICENSE:=GPL-2.0-only
define Package/usbutils
SECTION:=utils
CATEGORY:=Utilities
- DEPENDS:=+libusb-1.0 +libudev +librt +libpthread
+ DEPENDS:=+libusb-1.0 +libudev +librt +libpthread +usbids
TITLE:=USB devices listing utilities
URL:=http://www.linux-usb.org/
endef
+CONFIGURE_ARGS+= \
+ --datadir=/usr/share/hwdata
+
define Package/usbutils/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/lsusb $(1)/usr/bin/
include $(TOPDIR)/rules.mk
PKG_NAME:=whois
-PKG_VERSION:=5.5.10
+PKG_VERSION:=5.5.20
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/w/whois
-PKG_HASH:=2391037b079695d0e9fd3c85ab021809a539cf093d25b6c51ca65019a54158dd
+PKG_HASH:=42085102dfad82067abe2d5d1cfca59586573dee528718559b022e762bb85cf1
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
PKG_BUILD_DEPENDS:=perl/host
--- a/Makefile
+++ b/Makefile
-@@ -72,7 +72,7 @@ endif
- CPPFLAGS += $(DEFS) $(INCLUDES)
+@@ -75,7 +75,7 @@ CPPFLAGS += $(DEFS) $(INCLUDES)
+ BASHCOMPDIR ?= $(shell $(PKG_CONFIG) --variable=completionsdir bash-completion 2>/dev/null || echo /etc/bash_completion.d)
##############################################################################
-all: Makefile.depend whois mkpasswd pos
nice afl-fuzz -i ../afl_in -o ../afl_out -- ./whois
##############################################################################
--install: install-whois install-mkpasswd install-pos
+-install: install-whois install-mkpasswd install-pos install-bashcomp
+install: install-whois
install-whois: whois
--- a/Makefile
+++ b/Makefile
-@@ -42,14 +42,6 @@ ifdef HAVE_LIBIDN
+@@ -43,14 +43,6 @@ ifdef HAVE_LIBIDN
$(error Please fix your build system to stop defining HAVE_LIBIDN!)
endif
include $(TOPDIR)/rules.mk
PKG_NAME:=xxhash
-PKG_VERSION:=0.8.1
-PKG_RELEASE:=2
+PKG_VERSION:=0.8.2
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/Cyan4973/xxHash/archive/v$(PKG_VERSION)
-PKG_HASH:=3bb6b7d6f30c591dd65aaaff1c8b7a5b94d81687998ca9400082c739a690436c
+PKG_HASH:=baee0c6afd4f03165de7a4e67988d16f0f2b257b51d0e3cb91909302a26a79c4
# The source for the library (xxhash.c and xxhash.h) is BSD
# The source for the command line tool (xxhsum.c) is GPLv2+
define Package/xxhash/Default
TITLE:=Extremely fast hash algorithm
- URL:=https://cyan4973.github.io/xxHash/
+ URL:=https://xxhash.com/
endef
define Package/xxhash/Default/description
include $(TOPDIR)/rules.mk
PKG_NAME:=yq
-PKG_VERSION:=4.40.5
+PKG_VERSION:=4.40.7
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/mikefarah/yq/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=6ab08e0332697cf6a95383a38fd70c5162d00c0e28ea4b2311e9646b664aabe3
+PKG_HASH:=c38024d40ee37d26caba1824965d9ea1d65468f48b2bacd45647ff4f547fa59f
PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
PKG_LICENSE:=MIT