Index: /titan/plugins/mc/mc_videoplayer.h
===================================================================
--- /titan/plugins/mc/mc_videoplayer.h	(revision 45422)
+++ /titan/plugins/mc/mc_videoplayer.h	(revision 45423)
@@ -918,7 +918,8 @@
 							if(fbseek != NULL)
 							{
-								int ret = textbox(_("Message"), _("Start at last position ?"), _("OK"), getrcconfigint("rcok", NULL), _("EXIT"), getrcconfigint("rcexit", NULL), NULL, 0, NULL, 0, 1000, 200, 5, 0);
-printf("ret=%d\n", ret);
-								if(ret == 0 || ret == 1)
+//								int ret = textbox(_("Message"), _("Start at last position ?"), _("OK"), getrcconfigint("rcok", NULL), _("EXIT"), getrcconfigint("rcexit", NULL), NULL, 0, NULL, 0, 1000, 200, 5, 0);
+//printf("ret=%d\n", ret);
+//								if(ret == 0 || ret == 1)
+								if(textbox(_("Message"), _("Start at last position ?"), _("OK"), getrcconfigint("rcok", NULL), _("EXIT"), getrcconfigint("rcexit", NULL), NULL, 0, NULL, 0, 1000, 200, 5, 0) == 1)
 								{
 									char* skip1 = calloc(1, 20); 
Index: /titan/plugins/satipclient/satipclient.h
===================================================================
--- /titan/plugins/satipclient/satipclient.h	(revision 45422)
+++ /titan/plugins/satipclient/satipclient.h	(revision 45423)
@@ -4,13 +4,11 @@
 void screensatipclient()
 {
-	int rcret = -1, ret = 0, i = 0, j = 0, count1 = 0, count2 = 0;
-	struct skin* satipclient = getscreen("satipclientsettings");
-	struct skin* listbox = getscreennode(satipclient, "listbox");
+	int rcret = -1, ret = 0, i, j, count1 = 0, count2, restart;
 	char* tmpstr = NULL,*tmpstr1 = NULL, *tmpstr2 = NULL, *satipclientstop = NULL, *satipclientstart = NULL, *satipclientscan = NULL, *satipclientrun = NULL, *satipclientconfig = NULL, *cmd = NULL;
 	char* name = NULL, *text = NULL, *type = NULL, *ip = NULL, *showname = NULL, *desc = NULL, *vtunerconf = NULL;
-	
-	struct skin* tmp = NULL;
-	struct skin* node = NULL;
 
+start:
+
+	restart = 0;
 	satipclientstop = ostrcat("/etc/init.d/satipclient stop", NULL, 0, 0);
 	satipclientstart = ostrcat("/etc/init.d/satipclient start", NULL, 0, 0);
@@ -18,10 +16,14 @@
 	satipclientrun = createpluginpath("/satipclient/files/run.sh", 0);
 	satipclientconfig = ostrcat("cp /mnt/network/vtuner.conf /etc", NULL, 0, 0);
+	vtunerconf = ostrcat("/mnt/network/vtuner.conf", NULL, 0, 0);
+
+	struct skin* satipclient = getscreen("satipclientsettings");
+	struct skin* listbox = getscreennode(satipclient, "listbox");
+	struct skin* tmp = NULL;
+	struct skin* node = NULL;
 
 	addscreenrc(satipclient, listbox);
 	listbox->aktline = 1;
 	listbox->aktpage = 1;
-
-	vtunerconf = ostrcat("/mnt/network/vtuner.conf", NULL, 0, 0);
 
 	struct clist *myconfig[LISTHASHSIZE] = {NULL};
@@ -30,7 +32,6 @@
 	cmd = ostrcat("cat ", vtunerconf, 0, 0);
 	cmd = ostrcat(cmd, " | cut -d'=' -f2", 1, 0);
-
+	tmpstr1 = string_newline(command(cmd));
 	struct splitstr* ret1 = NULL;
-	tmpstr1 = string_newline(command(cmd));
 
 	ret1 = strsplit(tmpstr1, "\n", &count1);
@@ -39,5 +40,4 @@
 		for(i = 0; i < count1; i++)
 		{
-			printf("round i-count1 (%d/%d)\n", i, count1);
 			count2 = 0;
 			tmpstr2 = string_newline(command(cmd));
@@ -123,4 +123,8 @@
 			else
 				textbox(_("Message"), _("SAT-IP Client not started,\nPlease check your config."), _("OK"), getrcconfigint("rcok", NULL), NULL, 0, NULL, 0, NULL, 0, 600, 200, 0, 0);
+
+			if(textbox(_("Message"), _("Titan will be restarted ?"), _("OK"), getrcconfigint("rcok", NULL), _("EXIT"), getrcconfigint("rcexit", NULL), NULL, 0, NULL, 0, 1000, 200, 5, 0) == 1)
+				oshutdown(3, 1);
+
 			drawscreen(satipclient, 0, 0);			
 
@@ -165,4 +169,7 @@
 			free(tmpstr), tmpstr = NULL;
 			drawscreen(satipclient, 0, 0);
+
+			restart = 1;
+			break;
 		}
 		else if(rcret == getrcconfigint("rcblue", NULL))
@@ -184,4 +191,6 @@
 	delownerrc(satipclient);
 	clearscreen(satipclient);
+
+	if(restart == 1) goto start;
 }
 
Index: /titan/titan/header.h
===================================================================
--- /titan/titan/header.h	(revision 45422)
+++ /titan/titan/header.h	(revision 45423)
@@ -473,5 +473,4 @@
 void screennetwork_wlan();
 void screennetwork_password();
-void screennetwork_ipsec();
 
 //channel.h
Index: /titan/titan/network.h
===================================================================
--- /titan/titan/network.h	(revision 45422)
+++ /titan/titan/network.h	(revision 45423)
@@ -1014,172 +1014,3 @@
 }
 
-void screennetwork_ipsec()
-{
-	int rcret = 0;
-	char* tmpstr = NULL;
-	char* ret = NULL;
-	char* cmd = NULL;
-	char* user = NULL;
-	char* pass = NULL;
-	char* dyndns = NULL;
-	char* rekey = NULL;
-	char* psk = NULL;
-	char* name = NULL;
-	char* id = NULL;
-
-	struct skin* ipsec = getscreen("ipsecsettings");
-	struct skin* listbox = getscreennode(ipsec, "listbox");	
-	struct skin* skin_name = getscreennode(ipsec, "name");
-	struct skin* skin_user = getscreennode(ipsec, "user");
-	struct skin* skin_pass = getscreennode(ipsec, "pass");
-	struct skin* skin_psk = getscreennode(ipsec, "psk");
-	struct skin* skin_dyndns = getscreennode(ipsec, "dyndns");
-	struct skin* skin_id = getscreennode(ipsec, "id");
-	struct skin* skin_rekey = getscreennode(ipsec, "rekey");
-	struct skin* tmp = NULL;
-
-	if(!file_exist("/mnt/network/ipsec.conf"))
-		system("cp /etc/titan.restore/mnt/network/ipsec.conf /mnt/network/ipsec.conf");
-
-	if(!file_exist("/mnt/network/ipsec.secret"))
-		system("cp /etc/titan.restore/mnt/network/ipsec.secret /mnt/network/ipsec.secret");
-
-	name = string_newline(command("cat /mnt/network/ipsec.conf | grep -v '^#' | grep -v %default | sed -nr 's/.*conn ([^ ]+).*/\\1/p'"));
-	user = string_newline(command("cat /mnt/network/ipsec.conf | grep -v '^#' | sed -nr 's/.*xauth_identity=([^=]+).*/\\1/p'"));
-	pass = string_newline(command("cat /mnt/network/ipsec.secrets | grep -v '^#' | sed -nr 's/.*: XAUTH \"([^\"]+)\".*/\\1/p'"));
-	dyndns = string_newline(command("cat /mnt/network/ipsec.conf | grep -v '^#' | sed -nr 's/.*right=([^=]+).*/\\1/p'"));
-	rekey = string_newline(command("cat /mnt/network/ipsec.conf | grep -v '^#' | sed -nr 's/.*rekey=([^=]+).*/\\1/p'"));
-	psk = string_newline(command("cat /mnt/network/ipsec.secrets | grep -v '^#' | sed -nr 's/.*%any : PSK \"([^\"]+)\".*/\\1/p'"));
-	id = string_newline(command("cat /mnt/network/ipsec.conf | grep -v '^#' | sed -nr 's/.*leftid=keyid:([^:]+).*/\\1/p'"));
-
-	printf("name: %s\n", name);
-	printf("user: %s\n", user);
-	printf("pass: %s\n", pass);
-	printf("dyndns: %s\n", dyndns);
-	printf("rekey: %s\n", rekey);
-	printf("psk: %s\n", psk);
-	printf("id: %s\n", id);
-
-	changemask(skin_name, "abcdefghijklmnopqrstuvwxyz");
-	changeinput(skin_name, name);
-
-	changemask(skin_user, "abcdefghijklmnopqrstuvwxyz");
-	changeinput(skin_user, user);
-
-	changemask(skin_pass, "abcdefghijklmnopqrstuvwxyz");
-	changeinput(skin_pass, pass);
-
-	changemask(skin_dyndns, "abcdefghijklmnopqrstuvwxyz");
-	changeinput(skin_dyndns, dyndns);
-
-	changemask(skin_psk, "abcdefghijklmnopqrstuvwxyz");
-	changeinput(skin_psk, psk);
-
-	changemask(skin_id, "abcdefghijklmnopqrstuvwxyz");
-	changeinput(skin_id, id);
-
-	addchoicebox(skin_rekey, "no", _("no"));
-	addchoicebox(skin_rekey, "yes", _("yes"));
-	setchoiceboxselection(skin_rekey, rekey);
-
-	drawscreen(ipsec, 0, 0);
-	addscreenrc(ipsec, listbox);
-
-	tmp = listbox->select;
-	while(1)
-	{
-		addscreenrc(ipsec, tmp);
-		rcret = waitrc(ipsec, 0, 0);
-		tmp = listbox->select;
-
-		if(rcret == getrcconfigint("rcexit", NULL)) break;
-		if(rcret == getrcconfigint("rcok", NULL))
-		{
-			if(skin_name->ret != NULL)
-			{
-				cmd = ostrcat("cat /mnt/network/ipsec.conf | sed 's/.*conn $%.*/conn ", skin_name->ret, 0, 0);
-				cmd = ostrcat(cmd,"/'", 1, 0);
-				printf("cmd: %s\n", cmd);
-				system(cmd);
-				free(cmd), cmd = NULL;
-			}
-
-			if(skin_user->ret != NULL)
-			{
-				cmd = ostrcat("cat /mnt/network/ipsec.conf | sed 's/.*xauth_identity=.*/xauth_identity=", skin_user->ret, 0, 0);
-				cmd = ostrcat(cmd,"/'", 1, 0);
-				printf("cmd: %s\n", cmd);
-				system(cmd);
-				free(cmd), cmd = NULL;
-			}
-
-			if(skin_id->ret != NULL)
-			{
-				cmd = ostrcat("cat /mnt/network/ipsec.conf | sed 's/.*leftid=keyid:.*/leftid=keyid:", skin_id->ret, 0, 0);
-				cmd = ostrcat(cmd,"/'", 1, 0);
-				printf("cmd: %s\n", cmd);
-				system(cmd);
-				free(cmd), cmd = NULL;
-			}
-
-			if(skin_dyndns->ret != NULL)
-			{
-				cmd = ostrcat("cat /mnt/network/ipsec.conf | sed 's/.*right=.*/right=", skin_dyndns->ret, 0, 0);
-				cmd = ostrcat(cmd,"/'", 1, 0);
-				printf("cmd: %s\n", cmd);
-				system(cmd);
-				free(cmd), cmd = NULL;
-			}
-
-			if(skin_rekey->ret != NULL)
-			{
-				cmd = ostrcat("cat /mnt/network/ipsec.conf | sed 's/.*rekey=.*/rekey=", skin_rekey->ret, 0, 0);
-				cmd = ostrcat(cmd,"/'", 1, 0);
-				printf("cmd: %s\n", cmd);
-				system(cmd);
-				free(cmd), cmd = NULL;
-			}
-
-			if(skin_pass->ret != NULL)
-			{
-				cmd = ostrcat("cat /mnt/network/ipsec.secrets | sed 's/.*: XAUTH \".*/: XAUTH \"", skin_pass->ret, 0, 0);
-				cmd = ostrcat(cmd,"\"/'", 1, 0);
-				printf("cmd: %s\n", cmd);
-				system(cmd);
-				free(cmd), cmd = NULL;
-			}
-
-			if(skin_psk->ret != NULL)
-			{
-				cmd = ostrcat("cat /mnt/network/ipsec.secrets | sed 's/%any : PSK \".*/%any : PSK \"", skin_psk->ret, 0, 0);
-				cmd = ostrcat(cmd,"\"/'", 1, 0);
-				printf("cmd: %s\n", cmd);
-				system(cmd);
-				free(cmd), cmd = NULL;
-			}
-
-			if(skin_user->ret != NULL)
-			{
-				cmd = ostrcat("cat /mnt/network/ipsec.secrets | sed 's/.* : XAUTH/", skin_user->ret, 0, 0);
-				cmd = ostrcat(cmd," : XAUTH/'", 1, 0);
-				printf("cmd: %s\n", cmd);
-				system(cmd);
-				free(cmd), cmd = NULL;
-			}
-
-			debug(99, "name: %s", skin_name->ret);
-			debug(99, "user: %s", skin_user->ret);
-			debug(99, "pass: %s", skin_pass->ret);
-			debug(99, "dyndns: %s", skin_dyndns->ret);
-			debug(99, "psk: %s", skin_psk->ret);
-			debug(99, "id: %s", skin_id->ret);
-			debug(99, "rekey: %s", skin_rekey->ret);
-
-			break;
-		}
-	}
-	delownerrc(ipsec);
-	clearscreen(ipsec);
-}
-
 #endif
Index: /titan/titan/player.h
===================================================================
--- /titan/titan/player.h	(revision 45422)
+++ /titan/titan/player.h	(revision 45423)
@@ -412,7 +412,8 @@
 			if(fbseek != NULL)
 			{
-				ret = textbox(_("Message"), _("Start at last position ?"), _("OK"), getrcconfigint("rcok", NULL), _("EXIT"), getrcconfigint("rcexit", NULL), NULL, 0, NULL, 0, 1000, 200, 10, 0);
-printf("ret=%d\n", ret);
-				if(ret == 0 || ret == 1)
+//				ret = textbox(_("Message"), _("Start at last position ?"), _("OK"), getrcconfigint("rcok", NULL), _("EXIT"), getrcconfigint("rcexit", NULL), NULL, 0, NULL, 0, 1000, 200, 10, 0);
+//printf("ret=%d\n", ret);
+//				if(ret == 0 || ret == 1)
+				if(textbox(_("Message"), _("Start at last position ?"), _("OK"), getrcconfigint("rcok", NULL), _("EXIT"), getrcconfigint("rcexit", NULL), NULL, 0, NULL, 0, 1000, 200, 5, 0) == 1)
 				{
 					char* skip1 = calloc(1, 20);
