summaryrefslogtreecommitdiff
path: root/recipes/ftpd-topfield
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/ftpd-topfield')
-rw-r--r--recipes/ftpd-topfield/files/init40
-rw-r--r--recipes/ftpd-topfield/files/syslog.patch26
-rw-r--r--recipes/ftpd-topfield/files/usb-header-name-2-6-23.patch15
-rw-r--r--recipes/ftpd-topfield/files/usb-header-name.patch11
-rwxr-xr-xrecipes/ftpd-topfield/ftpd-topfield_0.7.5.bb35
5 files changed, 127 insertions, 0 deletions
diff --git a/recipes/ftpd-topfield/files/init b/recipes/ftpd-topfield/files/init
new file mode 100644
index 0000000000..aabd3d40fc
--- /dev/null
+++ b/recipes/ftpd-topfield/files/init
@@ -0,0 +1,40 @@
+#!/bin/sh
+DAEMON=/usr/sbin/ftpd-topfield
+NAME=ftpd-topfield
+DESC="FTP daemon for the Topfield PVR"
+ARGS="-D -P 21"
+
+test -f $DAEMON || exit 0
+
+set -e
+
+case "$1" in
+ start)
+ echo -n "starting $DESC: $NAME... "
+ test -d /var/lib/misc/ || mkdir /var/lib/misc/
+ start-stop-daemon -S -x $DAEMON -- $ARGS
+ echo "done."
+ ;;
+ stop)
+ echo -n "stopping $DESC: $NAME... "
+ start-stop-daemon -K -x $DAEMON
+ echo "done."
+ ;;
+ restart)
+ echo "restarting $DESC: $NAME... "
+ $0 stop
+ $0 start
+ echo "done."
+ ;;
+ reload)
+ echo -n "reloading $DESC: $NAME... "
+ killall -HUP $(basename ${DAEMON})
+ echo "done."
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|restart|reload}"
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/recipes/ftpd-topfield/files/syslog.patch b/recipes/ftpd-topfield/files/syslog.patch
new file mode 100644
index 0000000000..8c2bf294f5
--- /dev/null
+++ b/recipes/ftpd-topfield/files/syslog.patch
@@ -0,0 +1,26 @@
+--- ftpd-topfield/ftpd.c~ 2008-02-16 09:49:30.000000000 +1030
++++ ftpd-topfield/ftpd.c 2008-03-24 21:45:15.000000000 +1030
+@@ -1190,6 +1190,7 @@
+ if (debug) {
+ fprintf(stderr, "Transfer failed %lld bytes %s\n", (long long)current, srcpath);
+ }
++ syslog(LOG_INFO, "retrieve: Failed transfer of %s @%Ld", srcpath, (long long)current);
+ perror_reply (550, name);
+ }
+
+@@ -1363,6 +1364,7 @@
+ #endif
+
+ if (ret != 0) {
++ syslog(LOG_INFO, "store: Failed transfer of %s @%Ld", destpath, (long long)current);
+ perror_reply (553, name);
+
+ LOGCMD (*mode == 'w' ? "put" : "append", name);
+@@ -1451,6 +1453,7 @@
+ }
+ }
+
++ syslog(LOG_INFO, "store: Failed transfer of %s @%Ld", destpath, (long long)current);
+ /* Failed to cancel the put, so give up */
+ perror_reply (426, "Data Connection");
+ }
diff --git a/recipes/ftpd-topfield/files/usb-header-name-2-6-23.patch b/recipes/ftpd-topfield/files/usb-header-name-2-6-23.patch
new file mode 100644
index 0000000000..2ab6c4c094
--- /dev/null
+++ b/recipes/ftpd-topfield/files/usb-header-name-2-6-23.patch
@@ -0,0 +1,15 @@
+--- ../../libtopfield/usb_io.h.orig 2008-12-26 23:11:08.000000000 -0600
++++ ../../libtopfield/usb_io.h 2008-12-26 23:24:02.000000000 -0600
+@@ -36,7 +36,12 @@
+
+ /* linux/usb_ch9.h wasn't separated out until 2.4.23 */
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,23)
++/* and then moved to linux/usb/ch9.h at 2.6.23. */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23)
++#include <linux/usb/ch9.h>
++#else
+ #include <linux/usb_ch9.h>
++#endif
+ #else
+ #include <linux/usb.h>
+ #endif
diff --git a/recipes/ftpd-topfield/files/usb-header-name.patch b/recipes/ftpd-topfield/files/usb-header-name.patch
new file mode 100644
index 0000000000..b3149341e2
--- /dev/null
+++ b/recipes/ftpd-topfield/files/usb-header-name.patch
@@ -0,0 +1,11 @@
+--- ../../libtopfield/usb_io.h.orig 2006-01-05 14:55:10.000000000 +1030
++++ ../../libtopfield/usb_io.h 2007-02-20 02:25:43.000000000 +1030
+@@ -34,7 +34,7 @@
+ #include <linux/types.h>
+ #include <linux/version.h>
+
+-#include <linux/usb.h>
++#include <linux/usb_ch9.h>
+ #include <linux/usbdevice_fs.h>
+
+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
diff --git a/recipes/ftpd-topfield/ftpd-topfield_0.7.5.bb b/recipes/ftpd-topfield/ftpd-topfield_0.7.5.bb
new file mode 100755
index 0000000000..32e5be5928
--- /dev/null
+++ b/recipes/ftpd-topfield/ftpd-topfield_0.7.5.bb
@@ -0,0 +1,35 @@
+# This package builds the ftpd-topfield program
+DESCRIPTION = "ftpd-topfield - FTP access to TopField PVR"
+HOMEPAGE = "http://sourceforge.net/projects/puppy"
+SECTION = "net"
+LICENSE = "MIT"
+PR = "r3"
+
+SRC_URI = "cvs://anonymous@puppy.cvs.sourceforge.net/cvsroot/puppy;method=pserver;module=ftpd-topfield;tag=FTPD_TOPFIELD_0_7_5 \
+ cvs://anonymous@puppy.cvs.sourceforge.net/cvsroot/puppy;method=pserver;module=libtopfield;tag=FTPD_TOPFIELD_0_7_5 \
+ file://syslog.patch;patch=1 \
+ file://usb-header-name-2-6-23.patch;patch=1 \
+ file://init"
+
+# The source will end up in the subdirectory 'ftpd-topfield' - no release name
+S = "${WORKDIR}/ftpd-topfield"
+
+inherit update-rc.d
+
+INITSCRIPT_NAME = "ftpd-topfield"
+INITSCRIPT_PARAMS = "defaults"
+
+# Just the one package at present
+
+inherit autotools
+
+do_compile() {
+ oe_runmake
+}
+
+do_install() {
+ install -d ${D}${sbindir}
+ install -m 0755 ${S}/ftpd ${D}${sbindir}/ftpd-topfield
+ install -d ${D}${sysconfdir}/ ${D}${sysconfdir}/init.d
+ install -m 755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/ftpd-topfield
+}