КОМПИЛЯЦИЯ ПАКЕТОВ DC++
feeds.conf.default добавить:
src-git rtndev https://github.com/Entware-for-kernel-3x/rtndev-3x.git - для Entware пакетов - ptokax (возможно и др. тоже заюзать от Entware, с правков естественно)
src-git oldpackages http://git.openwrt.org/packages.git - для старых пакетов - opendchub
./scripts/feeds update -a ./scripts/feeds install -a
feed/rtndev/ptokax/ - меняем Makefile и добавляем feed/rtndev/ptokax/patches/010-disable-iconv-failed.patch (приложил)
make menuconfig
PtokaX на СС - вместо Use uClibc ставим Use (e)glibc (на uClibc компилятор выдает ошибку iconv.h):
На LEDE либу менять не надо, по умолчанию musl, с ней нормально.
----------------------------------------------------------------------
Advanced configuration options (for developers) > Toolchain Options -> C Library implementation -> Use (e)glibc (e)glibc version -> glibc 2.21
----------------------------------------------------------------------
make menuconfig -> Network -> P2P -> ptokax, opendchub
Запуск ptokax, установленный на роутере - здесь написал как. Там же и пакет ptokax для ar71xx на LEDE
Приложил Makefile отредактированный и 010-disable-iconv-failed.patch для ptokax на OpenWRT
dcbeelinekz, Прошивка СС на glibc для tl-mr 3220v2 8Мб, по умолчанию включено luci, ptokax (у файлов z01,z02 убрать zip расширение)
!!! ПРИ УСЛОВИИ ЕСЛИ СМОЖЕТЕ ПОДНЯТЬ КИРПИЧ !!!! Тестируем, сам эту не проверял, если что сообщайте.
До этого тестировал прошу на Netgear 3800, запустилась нормально.
Подробно на форуме: http://cyber-place.ru/showpost.php?p=37 … tcount=247
Makefile PtokaX 0.5.2.2 для LEDE и OPENWRT
# # Copyright (C) 2011-2017 Entware # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # include $(TOPDIR)/rules.mk PKG_NAME:=ptokax PKG_VERSION:=0.5.2.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_VERSION)-nix-src.tgz PKG_SOURCE_URL:=http://www.ptokax.org/files PKG_MD5SUM:=0d5ca7ae81be69eb351fadfd1a498217 include $(INCLUDE_DIR)/package.mk PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) define Package/ptokax SECTION:=net CATEGORY:=Network SUBMENU:=P2P DEPENDS:=+liblua +libpthread +zlib +libstdcpp +librt TITLE:=DC hub URL:=http://www.czdc.org/PtokaX/ MAINTAINER:=Entware team, http://entware.net endef define Package/ptokax/description PtokaX Direct Connect Hub is a multi-platform server application for Neo-Modus Direct Connect Peer-To-Peer sharing network. endef TARGET_CFLAGS += -DTIXML_USE_STL TARGET_LDFLAGS += -ldl define Build/Compile $(MAKE_VARS) $(MAKE) -C $(PKG_BUILD_DIR)/skein $(MAKE_FLAGS) $(MAKE_VARS) $(MAKE) -C $(PKG_BUILD_DIR)/tinyxml $(MAKE_FLAGS) $(call Build/Compile/Default) endef define Package/ptokax/install $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(PKG_BUILD_DIR)/PtokaX $(1)/usr/bin/ $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/ptokax $(1)/etc/init.d $(INSTALL_DIR) $(1)/root/.PtokaX/cfg $(INSTALL_DATA) $(PKG_BUILD_DIR)/cfg.example/*.xml $(1)/root/.PtokaX/cfg endef $(eval $(call BuildPackage,ptokax))
Исходники PtokaX 0.5.2.2 - CC LEDE - feeds patch makefile cfg
0.8.3 Для OpenWRT нужно изменить пути установки!!!
https://github.com/Entware/openwrt-oldp … b/Makefile
# # Copyright (C) 2006-2010 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # include $(TOPDIR)/rules.mk PKG_NAME:=opendchub PKG_VERSION:=0.8.3 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/opendchub PKG_MD5SUM:=e0ce773232f47ee39e1705dbf09485b7 PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk define Package/opendchub SUBMENU:=P2P SECTION:=net CATEGORY:=Network DEPENDS:=+libopenssl TITLE:=software for the Direct Connect network URL:=http://opendchub.sourceforge.net/ endef define Package/opendchub/description Open DC hub is a Unix/Linux version of the hub software for the Direct Connect network endef CONFIGURE_ARGS += \ --disable-perl \ define Package/opendchub/install $(INSTALL_DIR) $(1)/opt/bin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/opt/bin/opendchub $(1)/opt/bin/ $(INSTALL_DIR) $(1)/opt/var/opendchub $(1)/opt/etc/init.d $(INSTALL_BIN) ./files/S61opendchub $(1)/opt/etc/init.d endef $(eval $(call BuildPackage,opendchub))
Версия 0.5.0.1
ptokax-0.5.0.1, т.к. в этой версии не используется iconv.h, то компилируется нормально по умолчанию на Use uClibc
Настройки в формате .xml
#
# Copyright (C) 2011-2014 Entware
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#include $(TOPDIR)/rules.mk
PKG_NAME:=ptokax
PKG_VERSION:=0.5.0.1
PKG_RELEASE:=1PKG_SOURCE:=$(PKG_VERSION)-nix-src.tgz
PKG_SOURCE_URL:=http://www.ptokax.org/files
PKG_MD5SUM:=911b97d0c696b82a75786fd8be96a626include $(INCLUDE_DIR)/package.mk
PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE)
define Package/ptokax
SECTION:=net
CATEGORY:=Network
SUBMENU:=P2P
DEPENDS:=+liblua +libpthread +zlib +libstdcpp +librt
TITLE:=DC hub
URL:=http://www.czdc.org/PtokaX/
MAINTAINER:=Entware team, wl500g-repo.googlecode.com
endefdefine Package/ptokax/description
PtokaX Direct Connect Hub is a multi-platform server application
for Neo-Modus Direct Connect Peer-To-Peer sharing network.
endefdefine Build/Compile
$(MAKE_VARS) $(MAKE) -C $(PKG_BUILD_DIR)/skein $(MAKE_FLAGS)
$(MAKE_VARS) $(MAKE) -C $(PKG_BUILD_DIR)/tinyxml $(MAKE_FLAGS)
$(call Build/Compile/Default)
endefdefine Package/ptokax/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/PtokaX $(1)/usr/bin/
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/ptokax $(1)/etc/init.d
$(INSTALL_DIR) $(1)/root/.PtokaX/cfg
$(INSTALL_DATA) $(PKG_BUILD_DIR)/cfg.example/*.xml $(1)/root/.PtokaX/cfg
endef$(eval $(call BuildPackage,ptokax))
Тема на форуме
Отключил замену BAD IP
InCommandHubReplacedItWithYourRealIP
Ваш клиент посылает неверный IP .... в параметрах команды, сервер заменил его на Ваш настоящий IP ...... !
От этого говна заметил что тупые юзеры или слепые, которые не могут увидеть в моей сборке для работы с DC++, FAQ-и настройки для роутера, и за этих дел, начинает хаб впрягаться для исправления IP.... А хаб сам не на ПК и не в чем то по производительном стоит, чтоб для обработки + этой еще проблемы решать процессы клиентов, и начинает ипать мозг!
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- void clsDcCommands::SendIncorrectIPMsg(User * curUser, char * sBadIP, const bool &bCTM) { int imsgLen = sprintf(msg, "<%s> %s ", clsSettingManager::mPtr->sPreTexts[clsSettingManager::SETPRETXT_HUB_SEC], clsLanguageManager::mPtr->sTexts[LAN_YOUR_CLIENT_SEND_INCORRECT_IP]); if(CheckSprintf(imsgLen, 1024, "SendIncorrectIPMsg1") == false) { return; } if((curUser->ui32BoolBits & User::BIT_IPV6) == User::BIT_IPV6) { uint8_t ui8i = 1; while(sBadIP[ui8i] != '\0') { if(isxdigit(sBadIP[ui8i]) == false && sBadIP[ui8i] != ':') { if(ui8i == 0) { imsgLen--; } break; } msg[imsgLen] = sBadIP[ui8i]; imsgLen++; ui8i++; } } else { uint8_t ui8i = 0; while(sBadIP[ui8i] != '\0') { if(isdigit(sBadIP[ui8i]) == false && sBadIP[ui8i] != '.') { if(ui8i == 0) { imsgLen--; } break; } msg[imsgLen] = sBadIP[ui8i]; imsgLen++; ui8i++; } } int iret = sprintf(msg+imsgLen, " %s %s !|", bCTM == false ? clsLanguageManager::mPtr->sTexts[LAN_IN_CTM_REQ_REAL_IP_IS] : clsLanguageManager::mPtr->sTexts[LAN_IN_SEARCH_REQ_REAL_IP_IS], curUser->sIP); imsgLen += iret; if(CheckSprintf1(iret, imsgLen, 1024, "SendIncorrectIPMsg2") == false) { curUser->SendCharDelayed(msg, imsgLen); } } //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- void clsDcCommands::SendIPFixedMsg(User * pUser, char * sBadIP, char * sRealIP) { if((pUser->ui32BoolBits & User::BIT_WARNED_WRONG_IP) == User::BIT_WARNED_WRONG_IP) { return; } int imsgLen = sprintf(clsServerManager::sGlobalBuffer, "<%s> %s %s %s %s !|", clsSettingManager::mPtr->sPreTexts[clsSettingManager::SETPRETXT_HUB_SEC], clsLanguageManager::mPtr->sTexts[LAN_YOUR_CLIENT_SEND_INCORRECT_IP], sBadIP, clsLanguageManager::mPtr->sTexts[LAN_IN_COMMAND_HUB_REPLACED_IT_WITH_YOUR_REAL_IP], sRealIP); if(CheckSprintf(imsgLen, clsServerManager::szGlobalBufferSize, "SendIncorrectIPMsg1") == false) { pUser->SendCharDelayed(clsServerManager::sGlobalBuffer, imsgLen); } pUser->ui32BoolBits |= User::BIT_WARNED_WRONG_IP; } //--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Уже собранный клиент PtokaX, без этой хны:
https://cloud.mail.ru/public/6dHk/jemHL5Dsp
На гит хабе:
https://github.com/dcbeelinekz2/PtokaX_LEDE_OpenWrt