summaryrefslogtreecommitdiff
path: root/cleopatre/buildroot/package/openssh
diff options
context:
space:
mode:
Diffstat (limited to 'cleopatre/buildroot/package/openssh')
-rw-r--r--cleopatre/buildroot/package/openssh/Config.in9
-rw-r--r--cleopatre/buildroot/package/openssh/S50sshd64
-rw-r--r--cleopatre/buildroot/package/openssh/openssh.002-SUSv-legacy.patch21
-rw-r--r--cleopatre/buildroot/package/openssh/openssh.mk88
-rw-r--r--cleopatre/buildroot/package/openssh/openssh.patch116
5 files changed, 298 insertions, 0 deletions
diff --git a/cleopatre/buildroot/package/openssh/Config.in b/cleopatre/buildroot/package/openssh/Config.in
new file mode 100644
index 0000000000..bb58de04fb
--- /dev/null
+++ b/cleopatre/buildroot/package/openssh/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_OPENSSH
+ bool "openssh"
+ select BR2_PACKAGE_OPENSSL
+ select BR2_PACKAGE_ZLIB
+ help
+ A free version of the SSH protocol suite of network connectivity
+ tools. The standard 'ssh', 'sshd', 'scp', and friends.
+
+ http://www.openssh.com/
diff --git a/cleopatre/buildroot/package/openssh/S50sshd b/cleopatre/buildroot/package/openssh/S50sshd
new file mode 100644
index 0000000000..3821449fbf
--- /dev/null
+++ b/cleopatre/buildroot/package/openssh/S50sshd
@@ -0,0 +1,64 @@
+#!/bin/sh
+#
+# sshd Starts sshd.
+#
+
+# Make sure the ssh-keygen progam exists
+[ -f /usr/bin/ssh-keygen ] || exit 0
+
+# Check for the SSH1 RSA key
+if [ ! -f /etc/ssh_host_key ] ; then
+ echo Generating RSA Key...
+ /usr/bin/ssh-keygen -t rsa1 -f /etc/ssh_host_key -C '' -N ''
+fi
+
+# Check for the SSH2 RSA key
+if [ ! -f /etc/ssh_host_rsa_key ] ; then
+ echo Generating RSA Key...
+ /usr/bin/ssh-keygen -t rsa -f /etc/ssh_host_rsa_key -C '' -N ''
+fi
+
+# Check for the SSH2 DSA key
+if [ ! -f /etc/ssh_host_dsa_key ] ; then
+ echo Generating DSA Key...
+ echo THIS CAN TAKE A MINUTE OR TWO DEPENDING ON YOUR PROCESSOR!
+ echo
+ /usr/bin/ssh-keygen -t dsa -f /etc/ssh_host_dsa_key -C '' -N ''
+fi
+
+umask 077
+
+start() {
+ echo -n "Starting sshd: "
+ /usr/sbin/sshd
+ touch /var/lock/sshd
+ echo "OK"
+}
+stop() {
+ echo -n "Stopping sshd: "
+ killall sshd
+ rm -f /var/lock/sshd
+ echo "OK"
+}
+restart() {
+ stop
+ start
+}
+
+case "$1" in
+ start)
+ start
+ ;;
+ stop)
+ stop
+ ;;
+ restart|reload)
+ restart
+ ;;
+ *)
+ echo $"Usage: $0 {start|stop|restart}"
+ exit 1
+esac
+
+exit $?
+
diff --git a/cleopatre/buildroot/package/openssh/openssh.002-SUSv-legacy.patch b/cleopatre/buildroot/package/openssh/openssh.002-SUSv-legacy.patch
new file mode 100644
index 0000000000..6aece09f11
--- /dev/null
+++ b/cleopatre/buildroot/package/openssh/openssh.002-SUSv-legacy.patch
@@ -0,0 +1,21 @@
+diff -rdup openssh-4.6p1.oorig/openbsd-compat/port-tun.c openssh-4.6p1/openbsd-compat/port-tun.c
+--- openssh-4.6p1.oorig/openbsd-compat/port-tun.c 2006-09-02 07:32:40.000000000 +0200
++++ openssh-4.6p1/openbsd-compat/port-tun.c 2007-06-28 16:08:42.000000000 +0200
+@@ -66,7 +66,7 @@ sys_tun_open(int tun, int mode)
+ return (-1);
+ }
+
+- bzero(&ifr, sizeof(ifr));
++ memset(&ifr, 0, sizeof(ifr));
+
+ if (mode == SSH_TUNMODE_ETHERNET) {
+ ifr.ifr_flags = IFF_TAP;
+@@ -212,7 +212,7 @@ sys_tun_infilter(struct Channel *c, char
+ if (len <= 0 || len > (int)(sizeof(rbuf) - sizeof(*af)))
+ return (-1);
+ ptr = (char *)&rbuf[0];
+- bcopy(buf, ptr + sizeof(u_int32_t), len);
++ memmove(ptr + sizeof(u_int32_t), buf, len);
+ len += sizeof(u_int32_t);
+ af = (u_int32_t *)ptr;
+
diff --git a/cleopatre/buildroot/package/openssh/openssh.mk b/cleopatre/buildroot/package/openssh/openssh.mk
new file mode 100644
index 0000000000..4b0e821900
--- /dev/null
+++ b/cleopatre/buildroot/package/openssh/openssh.mk
@@ -0,0 +1,88 @@
+#############################################################
+#
+# openssh
+#
+#############################################################
+OPENSSH_VERSION=4.6p1
+OPENSSH_SITE=ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable
+OPENSSH_DIR=$(BUILD_DIR)/openssh-$(OPENSSH_VERSION)
+OPENSSH_SOURCE=openssh-$(OPENSSH_VERSION).tar.gz
+
+$(DL_DIR)/$(OPENSSH_SOURCE):
+ $(WGET) -P $(DL_DIR) $(OPENSSH_SITE)/$(OPENSSH_SOURCE)
+
+$(OPENSSH_DIR)/.unpacked: $(DL_DIR)/$(OPENSSH_SOURCE)
+ $(ZCAT) $(DL_DIR)/$(OPENSSH_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+ toolchain/patch-kernel.sh $(OPENSSH_DIR) package/openssh/ openssh\*.patch
+ $(CONFIG_UPDATE) $(@D)
+ touch $@
+
+$(OPENSSH_DIR)/.configured: $(OPENSSH_DIR)/.unpacked
+ (cd $(OPENSSH_DIR); rm -rf config.cache; \
+ $(TARGET_CONFIGURE_OPTS) \
+ $(TARGET_CONFIGURE_ARGS) \
+ LD=$(TARGET_CROSS)gcc \
+ ./configure \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/sbin \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --includedir=$(STAGING_DIR)/usr/include \
+ --disable-lastlog --disable-utmp \
+ --disable-utmpx --disable-wtmp --disable-wtmpx \
+ --without-x \
+ --disable-strip \
+ $(DISABLE_NLS) \
+ $(DISABLE_LARGEFILE) \
+ )
+ touch $@
+
+$(OPENSSH_DIR)/ssh: $(OPENSSH_DIR)/.configured
+ $(MAKE) -C $(OPENSSH_DIR)
+ -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(OPENSSH_DIR)/scp
+ -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(OPENSSH_DIR)/sftp
+ -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(OPENSSH_DIR)/sftp-server
+ -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(OPENSSH_DIR)/ssh
+ -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(OPENSSH_DIR)/ssh-add
+ -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(OPENSSH_DIR)/ssh-agent
+ -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(OPENSSH_DIR)/ssh-keygen
+ -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(OPENSSH_DIR)/ssh-keyscan
+ -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(OPENSSH_DIR)/ssh-keysign
+ -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(OPENSSH_DIR)/ssh-rand-helper
+ -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(OPENSSH_DIR)/sshd
+
+$(TARGET_DIR)/usr/bin/ssh: $(OPENSSH_DIR)/ssh
+ $(MAKE) DESTDIR=$(TARGET_DIR) -C $(OPENSSH_DIR) install
+ mkdir -p $(TARGET_DIR)/etc/init.d
+ cp package/openssh/S50sshd $(TARGET_DIR)/etc/init.d/
+ chmod a+x $(TARGET_DIR)/etc/init.d/S50sshd
+ rm -rf $(TARGET_DIR)/usr/info $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
+
+openssh: openssl zlib $(TARGET_DIR)/usr/bin/ssh
+
+openssh-source: $(DL_DIR)/$(OPENSSH_SOURCE)
+
+openssh-clean:
+ -$(MAKE) -C $(OPENSSH_DIR) clean
+ -$(MAKE) CC=$(TARGET_CC) DESTDIR=$(TARGET_DIR) -C $(OPENSSH_DIR) uninstall
+
+openssh-dirclean:
+ rm -rf $(OPENSSH_DIR)
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(strip $(BR2_PACKAGE_OPENSSH)),y)
+TARGETS+=openssh
+endif
diff --git a/cleopatre/buildroot/package/openssh/openssh.patch b/cleopatre/buildroot/package/openssh/openssh.patch
new file mode 100644
index 0000000000..432654ced6
--- /dev/null
+++ b/cleopatre/buildroot/package/openssh/openssh.patch
@@ -0,0 +1,116 @@
+--- openssh-3.6.1p1/Makefile.in.orig 2003-03-20 17:34:34.000000000 -0700
++++ openssh-3.6.1p1/Makefile.in 2003-04-25 17:09:00.000000000 -0600
+@@ -27,7 +27,7 @@
+ RAND_HELPER=$(libexecdir)/ssh-rand-helper
+ PRIVSEP_PATH=@PRIVSEP_PATH@
+ SSH_PRIVSEP_USER=@SSH_PRIVSEP_USER@
+-STRIP_OPT=@STRIP_OPT@
++STRIP_OPT=
+
+ PATHS= -DSSHDIR=\"$(sysconfdir)\" \
+ -D_PATH_SSH_PROGRAM=\"$(SSH_PROGRAM)\" \
+
+--- openssh-3.6.1p1/S50sshd Fri Sep 27 05:21:58 2002
++++ openssh-3.6.1p1/S50sshd Mon Mar 17 14:55:00 2003
+@@ -0,0 +1,64 @@
++#!/bin/sh
++#
++# sshd Starts sshd.
++#
++
++# Make sure the ssh-keygen progam exists
++[ -f /usr/bin/ssh-keygen ] || exit 0
++
++# Check for the SSH1 RSA key
++if [ ! -f /etc/ssh_host_key ] ; then
++ echo Generating RSA Key...
++ /usr/bin/ssh-keygen -t rsa1 -f /etc/ssh_host_key -C '' -N ''
++fi
++
++# Check for the SSH2 RSA key
++if [ ! -f /etc/ssh_host_rsa_key ] ; then
++ echo Generating RSA Key...
++ /usr/bin/ssh-keygen -t rsa -f /etc/ssh_host_rsa_key -C '' -N ''
++fi
++
++# Check for the SSH2 DSA key
++if [ ! -f /etc/ssh_host_dsa_key ] ; then
++ echo Generating DSA Key...
++ echo THIS CAN TAKE A MINUTE OR TWO DEPENDING ON YOUR PROCESSOR!
++ echo
++ /usr/bin/ssh-keygen -t dsa -f /etc/ssh_host_dsa_key -C '' -N ''
++fi
++
++umask 077
++
++start() {
++ echo -n "Starting sshd: "
++ /usr/sbin/sshd
++ touch /var/lock/sshd
++ echo "OK"
++}
++stop() {
++ echo -n "Stopping sshd: "
++ killall sshd
++ rm -f /var/lock/sshd
++ echo "OK"
++}
++restart() {
++ stop
++ start
++}
++
++case "$1" in
++ start)
++ start
++ ;;
++ stop)
++ stop
++ ;;
++ restart|reload)
++ restart
++ ;;
++ *)
++ echo $"Usage: $0 {start|stop|restart}"
++ exit 1
++esac
++
++exit $?
++
+--- openssh-4.6p1.oorig/sshd_config 2006-07-24 06:06:47.000000000 +0200
++++ openssh-4.6p1/sshd_config 2007-06-28 15:58:49.000000000 +0200
+@@ -11,7 +11,7 @@
+ # default value.
+
+ #Port 22
+-#Protocol 2,1
++Protocol 2
+ #AddressFamily any
+ #ListenAddress 0.0.0.0
+ #ListenAddress ::
+@@ -83,9 +83,11 @@
+ #AllowTcpForwarding yes
+ #GatewayPorts no
+ #X11Forwarding no
++X11Forwarding yes
+ #X11DisplayOffset 10
+ #X11UseLocalhost yes
+ #PrintMotd yes
++PrintMotd no
+ #PrintLastLog yes
+ #TCPKeepAlive yes
+ #UseLogin no
+@@ -102,8 +104,12 @@
+ # no default banner path
+ #Banner /some/path
+
++ClientAliveInterval 15
++ClientAliveCountMax 4
++AcceptEnv LANG LC_*
++
+ # override default of no subsystems
+-Subsystem sftp /usr/libexec/sftp-server
++Subsystem sftp /usr/sbin/sftp-server
+
+ # Example of overriding settings on a per-user basis
+ #Match User anoncvs