--- /dev/null
+#! /bin/sh
+# $Id$
+# -*- sh -*- vim: ft=sh sw=4 sts=4
+#
+# /etc/init.d/obexd Used to launch Tim Pope's obexserver wrapper
+
+PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
+DAEMON=/usr/local/sbin/obexd
+NAME=obexd
+DESC="obexserver daemon"
+
+test -x $DAEMON || exit 0
+
+set -e
+
+case "$1" in
+ start)
+ echo -n "Starting $DESC$NAME"
+ start-stop-daemon -m -b --start --quiet --pidfile /var/run/$NAME.pid \
+ --exec $DAEMON
+ echo "."
+ ;;
+ stop)
+ echo -n "Stopping $DESC$NAME"
+ start-stop-daemon -m --stop --quiet --pidfile /var/run/$NAME.pid
+ echo "."
+ ;;
+ #reload)
+ #
+ # If the daemon can reload its config files on the fly
+ # for example by sending it SIGHUP, do it here.
+ #
+ # If the daemon responds to changes in its config file
+ # directly anyway, make this a do-nothing entry.
+ #
+ # echo -n "Reloading $DESC configuration..."
+ # start-stop-daemon --stop --signal 1 --quiet --pidfile \
+ # /var/run/$NAME.pid --exec $DAEMON
+ # echo "done."
+ #;;
+ restart|force-reload)
+ #
+ # If the "reload" option is implemented, move the "force-reload"
+ # option to the "reload" entry above. If not, "force-reload" is
+ # just the same as "restart".
+ #
+ echo -n "Restarting $DESC$NAME"
+ start-stop-daemon -m --stop --quiet --pidfile \
+ /var/run/$NAME.pid
+ sleep 1
+ start-stop-daemon -m -b --start --quiet --pidfile \
+ /var/run/$NAME.pid --exec $DAEMON
+ echo "."
+ ;;
+ *)
+ N=/etc/init.d/$NAME
+ # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
+ echo "Usage: $N {start|stop|restart|force-reload}" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
--- /dev/null
+#!/bin/sh
+# $Id$
+# -*- sh -*- vim: ft=sh sw=4 sts=4
+
+# /usr/local/sbin/obexd
+# Designed to repeatedly call obexserver to receive new files, and send them
+# off in an email to root.
+
+on_term() {
+ killall obexserver >/dev/null 2>&1 || true
+ exit
+}
+
+trap on_term SIGTERM
+#trap on_term SIGQUIT
+trap on_term SIGINT
+
+trap "sdptool del OPUSH >/dev/null || true" EXIT
+
+sdptool add --channel=10 OPUSH >/dev/null
+
+while true; do
+filename=`obexserver|grep '^Filename = '|sed -e 's/^Filename = //'`
+
+(
+ case "$filename" in
+ *.txt) ctype=text/plain ;;
+ *.htm|*.html) ctype=text/html ;;
+ *.vcf) ctype=text/x-vcard ;;
+ *.wav) ctype=audio/x-wav ;;
+ *.mid|*.midi) ctype=audio/midi ;;
+ *.jpg|*.jpeg) ctype=image/jpeg ;;
+ *.gif) ctype=image/gif ;;
+ "WAP bookmark") ctype=text/x-url ;;
+ *.3gp) ctype=video/x-realmedia ;; # ???
+ *) ctype=application/octet-stream ;;
+ esac
+
+ # metasend can't handle file names with spaces
+ tempfile=`mktemp -t obexd.XXXXXX`
+ case "$ctype" in
+ text/*) tr -d '\r' < "/tmp/$filename" >> $tempfile ;;
+ *) cat "/tmp/$filename" >> $tempfile ;;
+ esac
+ rm -f "/tmp/$filename"
+
+ metasend -b -F bluetooth -t root -s "Object received via Bluetooth" -c '' \
+ -D "$filename" -S 4000000 -m "$ctype; name=\"`echo $filename|tr ' ' '_'`\""\
+ -f $tempfile
+ rm -f $tempfile
+)
+
+done