aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/Config.in1
-rw-r--r--package/Makefile6
-rw-r--r--package/rrs/Config.in28
-rw-r--r--package/rrs/Makefile58
-rw-r--r--package/rrs/ipkg/rrs-nossl.control8
-rw-r--r--package/rrs/ipkg/rrs.control8
-rw-r--r--package/rrs/patches/rrs-1.70-shell.patch12
7 files changed, 121 insertions, 0 deletions
diff --git a/package/Config.in b/package/Config.in
index f68ac9e021..941c144f84 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -101,6 +101,7 @@ source "package/radvd/Config.in"
source "package/rarpd/Config.in"
source "package/reaim/Config.in"
source "package/robocfg/Config.in"
+source "package/rrs/Config.in"
source "package/rsync/Config.in"
source "package/samba/Config.in"
source "package/ser/Config.in"
diff --git a/package/Makefile b/package/Makefile
index 0c4d048310..e061e2bdfe 100644
--- a/package/Makefile
+++ b/package/Makefile
@@ -152,6 +152,7 @@ package-$(BR2_COMPILE_RP_PPPOE) += rp-pppoe
package-$(BR2_PACKAGE_RRDCOLLECT) += rrdcollect
package-$(BR2_COMPILE_RRDTOOL) += rrdtool
package-$(BR2_COMPILE_RRDTOOL1) += rrdtool1
+package-$(BR2_COMPILE_RRS) += rrs
package-$(BR2_PACKAGE_RSYNC) += rsync
package-$(BR2_PACKAGE_SABLEVM) += sablevm
package-$(BR2_PACKAGE_SABLEVM_CLASSPATH) += sablevm-classpath
@@ -378,6 +379,11 @@ ifneq ($(BR2_PACKAGE_PMACCT_PGSQL),)
pmacct-compile: postgresql-compile
endif
+rrs-compile: uclibc++-compile
+ifneq ($(BR2_PACKAGE_RRS),)
+rrs-compile: openssl-compile
+endif
+
snort-compile: libnet-compile libpcap-compile pcre-compile
ifeq ($(BR2_PACKAGE_SNORT_MYSQL),y)
snort-compile: mysql-compile
diff --git a/package/rrs/Config.in b/package/rrs/Config.in
new file mode 100644
index 0000000000..8c9ab8205b
--- /dev/null
+++ b/package/rrs/Config.in
@@ -0,0 +1,28 @@
+config BR2_COMPILE_RRS
+ bool
+ default n
+ depends BR2_PACKAGE_RRS || BR2_PACKAGE_RRS_NOSSL
+
+config BR2_PACKAGE_RRS
+ tristate "rrs - A reverse (connecting) remote shell, with SSL support"
+ default m if CONFIG_DEVEL
+ select BR2_COMPILE_RRS
+ select BR2_PACKAGE_UCLIBCXX
+ select BR2_PACKAGE_LIBOPENSSL
+ help
+ A reverse (connecting) remote shell, built with SSL support.
+
+ http://www.cycom.se/dl/rrs/
+
+
+config BR2_PACKAGE_RRS_NOSSL
+ tristate "rrs-nossl - A reverse (connecting) remote shell, without SSL support"
+ default m if CONFIG_DEVEL
+ select BR2_COMPILE_RRS
+ select BR2_PACKAGE_UCLIBCXX
+ help
+ A reverse (connecting) remote shell, built without SSL support.
+
+ http://www.cycom.se/dl/rrs/
+
+
diff --git a/package/rrs/Makefile b/package/rrs/Makefile
new file mode 100644
index 0000000000..f7b2d5f223
--- /dev/null
+++ b/package/rrs/Makefile
@@ -0,0 +1,58 @@
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=rrs
+PKG_VERSION:=1.70
+PKG_RELEASE:=1
+PKG_MD5SUM:=b400d03c0e39e3e78a7327ba78f789f0
+
+PKG_SOURCE_URL:=http://www.cycom.se/uploads/36/19
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_CAT:=zcat
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
+
+include $(TOPDIR)/package/rules.mk
+
+$(eval $(call PKG_template,RRS,rrs,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+$(eval $(call PKG_template,RRS_NOSSL,rrs-nossl,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+
+$(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.prepared
+ touch $@
+
+$(PKG_BUILD_DIR)/.built:
+ifneq ($(BR2_PACKAGE_RRS),)
+ $(MAKE) -C $(PKG_BUILD_DIR) \
+ CC="$(TARGET_CC)" \
+ CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include -fno-builtin -nostdinc++" \
+ LDFLAGS="-nodefaultlibs -L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib -luClibc++ -lc -lm -lutil -lssl -lcrypto" \
+ generic
+ ( cd $(PKG_BUILD_DIR); mv rrs rrs-ssl; )
+ -$(MAKE) -C $(PKG_BUILD_DIR) \
+ clean
+endif
+ifneq ($(BR2_PACKAGE_RRS_NOSSL),)
+ $(MAKE) -C $(PKG_BUILD_DIR) \
+ CC="$(TARGET_CC)" \
+ CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include -fno-builtin -nostdinc++" \
+ LDFLAGSNOSSL="-nodefaultlibs -L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib -luClibc++ -lc -lm -lutil" \
+ generic-nossl
+ ( cd $(PKG_BUILD_DIR); mv rrs rrs-nossl; )
+endif
+ touch $@
+
+$(IPKG_RRS):
+ install -d -m0755 $(IDIR_RRS)/usr/bin
+ install -m0755 $(PKG_BUILD_DIR)/rrs-ssl $(IDIR_RRS)/usr/bin/rrs
+ $(RSTRIP) $(IDIR_RRS)
+ $(IPKG_BUILD) $(IDIR_RRS) $(PACKAGE_DIR)
+
+$(IPKG_RRS_NOSSL):
+ install -d -m0755 $(IDIR_RRS_NOSSL)/usr/bin
+ install -m0755 $(PKG_BUILD_DIR)/rrs-nossl $(IDIR_RRS_NOSSL)/usr/bin/rrs
+ $(RSTRIP) $(IDIR_RRS_NOSSL)
+ $(IPKG_BUILD) $(IDIR_RRS_NOSSL) $(PACKAGE_DIR)
+
+mostlyclean:
+ -$(MAKE) -C $(PKG_BUILD_DIR) clean
+ rm -f $(PKG_BUILD_DIR)/.built
diff --git a/package/rrs/ipkg/rrs-nossl.control b/package/rrs/ipkg/rrs-nossl.control
new file mode 100644
index 0000000000..0407e8ffcb
--- /dev/null
+++ b/package/rrs/ipkg/rrs-nossl.control
@@ -0,0 +1,8 @@
+Package: rrs-nossl
+Priority: optional
+Section: net
+Maintainer: OpenWrt Developers Team <openwrt-devel@openwrt.org>, putman
+Source: http://openwrt.org/cgi-bin/viewcvs.cgi/openwrt/package/rrs/
+Depends: uclibc++
+Description: A reverse (connecting) remote shell, without SSL support.
+
diff --git a/package/rrs/ipkg/rrs.control b/package/rrs/ipkg/rrs.control
new file mode 100644
index 0000000000..a6366f7165
--- /dev/null
+++ b/package/rrs/ipkg/rrs.control
@@ -0,0 +1,8 @@
+Package: rrs
+Priority: optional
+Section: net
+Maintainer: OpenWrt Developers Team <openwrt-devel@openwrt.org>
+Source: http://openwrt.org/cgi-bin/viewcvs.cgi/openwrt/package/rrs/
+Depends: uclibc++, libopenssl
+Description: A reverse (connecting) remote shell, with SSL support.
+
diff --git a/package/rrs/patches/rrs-1.70-shell.patch b/package/rrs/patches/rrs-1.70-shell.patch
new file mode 100644
index 0000000000..822ce7c18e
--- /dev/null
+++ b/package/rrs/patches/rrs-1.70-shell.patch
@@ -0,0 +1,12 @@
+diff -ruN rrs-1.70-old/rrs.c rrs-1.70-new/rrs.c
+--- rrs-1.70-old/rrs.c 2004-05-30 02:32:03.000000000 +0200
++++ rrs-1.70-new/rrs.c 2005-10-12 12:41:24.000000000 +0200
+@@ -920,7 +920,7 @@
+ close(slave_fd);
+ signal(SIGHUP, SIG_DFL);
+ signal(SIGCHLD, SIG_DFL);
+- execl("/bin/sh", "", NULL);
++ execl("/bin/sh", "/bin/sh", NULL);
+ /* should not return */
+ exit(1);
+ } else if (pid > 0) {