|
|
|
@ -2,7 +2,10 @@ package org.galexander.sshd;
|
|
|
|
|
|
|
|
|
|
import android.app.Service;
|
|
|
|
|
import android.content.Intent;
|
|
|
|
|
import android.content.SharedPreferences;
|
|
|
|
|
import android.content.Context;
|
|
|
|
|
import android.os.IBinder;
|
|
|
|
|
import android.preference.PreferenceManager;
|
|
|
|
|
|
|
|
|
|
public class SimpleSSHDService extends Service {
|
|
|
|
|
public static int sshd_pid = 0;
|
|
|
|
@ -11,10 +14,14 @@ public class SimpleSSHDService extends Service {
|
|
|
|
|
public int onStartCommand(Intent intent, int flags, int startId) {
|
|
|
|
|
if ((intent == null) ||
|
|
|
|
|
(!intent.getBooleanExtra("stop", false))) {
|
|
|
|
|
SharedPreferences p = PreferenceManager.
|
|
|
|
|
getDefaultSharedPreferences(this);
|
|
|
|
|
if (is_started()) {
|
|
|
|
|
stop_sshd();
|
|
|
|
|
}
|
|
|
|
|
start_sshd();
|
|
|
|
|
start_sshd(SimpleSSHD.get_port(p),
|
|
|
|
|
SimpleSSHD.get_path(p), SimpleSSHD.get_shell(p),
|
|
|
|
|
SimpleSSHD.get_home(p));
|
|
|
|
|
if (activity != null) {
|
|
|
|
|
activity.update_startstop();
|
|
|
|
|
}
|
|
|
|
@ -35,7 +42,8 @@ public class SimpleSSHDService extends Service {
|
|
|
|
|
return (sshd_pid != 0);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private native void start_sshd();
|
|
|
|
|
private native void start_sshd(int port, String path,
|
|
|
|
|
String shell, String home);
|
|
|
|
|
private native void stop_sshd();
|
|
|
|
|
static {
|
|
|
|
|
System.loadLibrary("simplesshd-jni");
|
|
|
|
|