From 260d121a5ba1df389383d4704f2d2550bbb3c4ac Mon Sep 17 00:00:00 2001
From: Greg Alexander
Date: Sun, 16 Oct 2016 15:04:34 -0400
Subject: [PATCH] clean up Settings portion of documentation, and document
foreground mode
---
doc/index.html | 56 +++++++++++++++++++++++++++++++++++---------------
1 file changed, 40 insertions(+), 16 deletions(-)
diff --git a/doc/index.html b/doc/index.html
index 17d15ef..18ea3ea 100644
--- a/doc/index.html
+++ b/doc/index.html
@@ -41,43 +41,67 @@ too.
Voila! You can use ssh/scp/sftp/rsync to talk to your Android device!
-Configuration
+Settings
-There are three directory settings that are important for SimpleSSHD.
+Generally speaking, you must re-start the SimpleSSHD service for any
+of these settings to take effect.
-The first is the path for general dropbear files, which defaults to
+
+- Start on Boot
+- Automatically start the SimpleSSHD service when the phone powers on.
+
+- Foreground Service
+- Run the SimpleSSHD service as an Android "foreground service." This
+means a notification will be displayed for the service (you might be able
+to block the notification by holding down on the notification).
+On newer versions of Android (Marshmallow and Nougat), this will also
+make SimpleSSHD much more responsive if the phone has been in and out of
+Doze mode. It does not seem to increase battery consumption much.
+
+- Port Number
+- This is the port number that SimpleSSHD will listen on. It must be
+greater than 1024 (because SimpleSSHD does not have root).
+
+- SSH Path
+- Path for general dropbear files, which defaults to
/sdcard/ssh. Most importantly, this is where
authorized_keys is found. It is also where host keys wind up
-(they are created on demand), and where temporary files go.
+(they are created on demand), and where temporary files go. This path
+should probably be under /sdcard.
-Next is the path to the login shell. The default Android shell is
+
Login Shell
+Path to the command shell. The default Android shell is
/system/bin/sh, but you may prefer to use the one that comes with
busybox or whatever. If you set it to the su binary (i.e.,
-/system/xbin/su), then scp, sftp, and
-rsync will run as root and should be able to access files
-outside of the sdcard.
+/system/xbin/su), then scp, sftp, and rsync will run as root and
+should be able to access files outside of the sdcard.
-A bug in SuperSU interacts with an infelicity in rsync to cause an
+
Buffer hack for rsync+SuperSU
+A bug in SuperSU interacts with an infelicity in rsync to cause an
occasional deadlock. This is a real pain because I use SuperSU+rsync
for system-wide backups, which will always eventually trigger the
deadlock. To work around this, there is a "Buffer hack" option that
should be enabled if you use rsync with SuperSU. It adds a miniscule
overhead to rsync, but isn't harmful even if you aren't using
-SuperSU.
+SuperSU.
-Finally, there is the path for the home directory, which also defaults
+
Home Directory
+The login shell's home directory, which also defaults
to /sdcard/ssh. This is where your ssh session starts out, and is
-where .profile will be found if it is present.
+where .profile will be found if it is present.
-There is also a place where you can put additional commandline options
-for dropbear server. The options which are hardcoded are:
--R -F -p :portno.
+
Extra Commandline
+You can specify additional commandline options for dropbear server.
+The options which are hardcoded are:
+-R -F -p :portno
You can use \ or " to escape characters in this
-commandline.
+commandline.
Change Log
+- 2016/10/xx Version 13: Support foreground service (fewer
+stalls with newer Android).
- 2016/08/08 Version 1.11: Fix stall initializing random number generator.
- 2016/07/22 Version 1.10: Enable TCP port forwarding.
- 2016/07/04 Version 1.9: Restart sshd if the system kills it.