
КОМПИЛЯЦИЯ ПАКЕТОВ 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
- Code: Select all
./scripts/feeds update -a
./scripts/feeds install -a
feed/rtndev/ptokax/ - меняем Makefile и добавляем feed/rtndev/ptokax/patches/010-disable-iconv-failed.patch (приложил)
- Code: Select all
make menuconfig
PtokaX на СС - вместо Use uClibc ставим Use (e)glibc (на uClibc компилятор выдает ошибку iconv.h):
На LEDE либу менять не надо, по умолчанию musl, с ней нормально.
----------------------------------------------------------------------
- Code: Select all
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
[hr]
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
- Code: Select all
#
# 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
- Code: Select all
#
# 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
[spoiler="Makefile"]#
# 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:=1
PKG_SOURCE:=$(PKG_VERSION)-nix-src.tgz
PKG_SOURCE_URL:=http://www.ptokax.org/files
PKG_MD5SUM:=911b97d0c696b82a75786fd8be96a626
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, wl500g-repo.googlecode.com
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
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))
[/spoiler]
Тема на форуме
Отключил замену BAD IP
InCommandHubReplacedItWithYourRealIP
Ваш клиент посылает неверный IP .... в параметрах команды, сервер заменил его на Ваш настоящий IP ...... !
От этого говна заметил что тупые юзеры или слепые, которые не могут увидеть в моей сборке для работы с DC++, FAQ-и настройки для роутера, и за этих дел, начинает хаб впрягаться для исправления IP.... А хаб сам не на ПК и не в чем то по производительном стоит, чтоб для обработки + этой еще проблемы решать процессы клиентов, и начинает ипать мозг!
- Code: Select all
//--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
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