1
1

Initial dump from Zyxel

This commit is contained in:
2026-04-17 17:00:52 +02:00
commit 81fec250f4
23116 changed files with 5231237 additions and 0 deletions
+79
View File
@@ -0,0 +1,79 @@
#
# Copyright (C) 2009-2010 OpenWrt.org
# Copyright (C) 2009 Jakob Pfeiffer
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=c-ares
PKG_VERSION:=1.14.0
PKG_RELEASE:=1
PKG_LICENSE:=MIT
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
#PKG_SOURCE_URL:=https://c-ares.haxx.se/download
PKG_SOURCE_URL:=@ZyXEL_SITE/opensource/libs
DL_DIR:=$(TOPDIR)/dl
PKG_HASH:=45d3c1fd29263ceec2afc8ff9cd06d5f8f889636eb4e80ce3cc7f0eaf7aadc6e
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
TARGET_CPPFLAGS += $(filter -D%,$(TARGET_CFLAGS))
TARGET_CFLAGS := $(filter-out -D%,$(TARGET_CFLAGS))
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PATCH_DIR:=patches-$(PKG_VERSION)
define Package/libcares
SECTION:=libs
CATEGORY:=Libraries
TITLE:=Library for asyncronous DNS Requests (including name resolves)
URL:=http://c-ares.haxx.se/
MAINTAINER:=Karl Palsson <karlp@etactica.com>
endef
define Package/libcares/description
c-ares is a C library for asynchronous DNS requests (including name resolves)
C89 compatibility, MIT licensed, builds for and runs on POSIX, Windows,
Netware, Android and many more operating systems.
endef
define Package/libcares/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so.* $(1)/usr/lib/
$(INSTALL_DIR) $(STAGING_DIR)/usr/lib/voice
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libcares.a $(STAGING_DIR)/usr/lib/voice/
#NOTE: The following actions are to make this 'c-ares' library Backward-Compatible for the VoIP application(s) originally utilizing the 'ares' library (e.g. ZyIMS VoIP).
$(RM) $(STAGING_DIR)/usr/lib/voice/libares.a
$(LN) $(STAGING_DIR)/usr/lib/voice/libcares.a $(STAGING_DIR)/usr/lib/voice/libares.a
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)
$(CP) $(PKG_INSTALL_DIR)/* $(1)/
$(INSTALL_DIR) $(STAGING_DIR)/usr/include/voice/c-ares
$(CP) $(PKG_BUILD_DIR)/ares.h $(STAGING_DIR)/usr/include/voice/c-ares/
$(CP) $(PKG_BUILD_DIR)/ares_dns.h $(STAGING_DIR)/usr/include/voice/c-ares/
$(CP) $(PKG_BUILD_DIR)/ares_version.h $(STAGING_DIR)/usr/include/voice/c-ares/
$(CP) $(PKG_BUILD_DIR)/ares_private.h $(STAGING_DIR)/usr/include/voice/c-ares/
$(CP) $(PKG_BUILD_DIR)/ares_build.h $(STAGING_DIR)/usr/include/voice/c-ares/
$(CP) $(PKG_BUILD_DIR)/ares_llist.h $(STAGING_DIR)/usr/include/voice/c-ares/
$(CP) $(PKG_BUILD_DIR)/ares_rules.h $(STAGING_DIR)/usr/include/voice/c-ares/
#NOTE: The following actions are to make this 'c-ares' library Backward-Compatible for the VoIP application(s) originally utilizing the 'ares' library (e.g. ZyIMS VoIP).
$(RM) -r $(STAGING_DIR)/usr/include/voice/ares
$(LN) $(STAGING_DIR)/usr/include/voice/c-ares $(STAGING_DIR)/usr/include/voice/ares
endef
$(eval $(call BuildPackage,libcares))
@@ -0,0 +1,36 @@
Index: c-ares-1.14.0/ares_private.h
===================================================================
--- c-ares-1.14.0.orig/ares_private.h 2017-07-03 17:04:19.000000000 +0800
+++ c-ares-1.14.0/ares_private.h 2020-05-21 16:36:13.595577379 +0800
@@ -91,9 +91,21 @@
#define ARES_ID_KEY_LEN 31
+#ifdef VOICEAPP_CORE_H_VOICEAPP_DNS_QUERY_H_
+#define INCLUDED_FROM_ZYIMS_VOIP_THEN_SHOULD_SKIP_THE_FOLLOWING_CONTENT 0
+#else
+#define INCLUDED_FROM_ZYIMS_VOIP_THEN_SHOULD_SKIP_THE_FOLLOWING_CONTENT 1
+#endif //VOICEAPP_CORE_H_VOICEAPP_DNS_QUERY_H_.
+
+#if INCLUDED_FROM_ZYIMS_VOIP_THEN_SHOULD_SKIP_THE_FOLLOWING_CONTENT
#include "ares_ipv6.h"
+#endif //INCLUDED_FROM_ZYIMS_VOIP_THEN_SHOULD_SKIP_THE_FOLLOWING_CONTENT.
+
#include "ares_llist.h"
+
+#if INCLUDED_FROM_ZYIMS_VOIP_THEN_SHOULD_SKIP_THE_FOLLOWING_CONTENT
+
#ifndef HAVE_GETENV
# include "ares_getenv.h"
# define getenv(ptr) ares_getenv(ptr)
@@ -116,6 +128,9 @@
# define writev(s,ptr,cnt) ares_writev(s,ptr,cnt)
#endif
+#endif //INCLUDED_FROM_ZYIMS_VOIP_THEN_SHOULD_SKIP_THE_FOLLOWING_CONTENT.
+
+
/********* EDNS defines section ******/
#define EDNSPACKETSZ 1280 /* Reasonable UDP payload size, as suggested
in RFC2671 */
@@ -0,0 +1,46 @@
Index: c-ares-1.14.0/ares_private.h
===================================================================
--- c-ares-1.14.0.orig/ares_private.h 2020-03-25 10:48:38.884447972 +0800
+++ c-ares-1.14.0/ares_private.h 2020-03-25 10:48:41.264447972 +0800
@@ -338,6 +338,9 @@
const struct ares_socket_functions * sock_funcs;
void *sock_func_cb_data;
+
+ /*ZyXEL To support Multi-interface*/
+ unsigned int ifMark; //interface Mark
};
/* Memory management functions */
Index: c-ares-1.14.0/ares_process.c
===================================================================
--- c-ares-1.14.0.orig/ares_process.c 2017-07-03 17:04:19.000000000 +0800
+++ c-ares-1.14.0/ares_process.c 2020-03-25 11:01:29.397836971 +0800
@@ -1122,6 +1122,13 @@
}
}
+ /*ZyXEL Multi-interface*/
+ //printf("%s(): Ares IfMark:0x%08X.\n", __FUNCTION__, channel->ifMark);
+ if (setsockopt(s, SOL_SOCKET, SO_MARK, &channel->ifMark, sizeof(channel->ifMark)) == -1)
+ {
+ printf("%s(): <<Error>> Ares 'setsockopt()' Failed for the IfMark:0x%08X !!!\n", __FUNCTION__, channel->ifMark);
+ }
+
/* Connect to the server. */
if (connect_socket(channel, s, sa, salen) == -1)
{
@@ -1217,6 +1224,13 @@
}
}
+ /*ZyXEL Multi-interface*/
+ //printf("%s(): Ares IfMark:0x%08X.\n", __FUNCTION__, channel->ifMark);
+ if (setsockopt(s, SOL_SOCKET, SO_MARK, &channel->ifMark, sizeof(channel->ifMark)) == -1)
+ {
+ printf("%s(): <<Error>> Ares 'setsockopt()' Failed for the IfMark:0x%08X !!!\n", __FUNCTION__, channel->ifMark);
+ }
+
/* Connect to the server. */
if (connect_socket(channel, s, sa, salen) == -1)
{