Fritz!Load…

… Forum für Software-Entwickler, Web-Designer und Benutzer.

Du bist nicht angemeldet.

Ankündigung

Liebe Fritz!Load-Nutzer,
wie man am Datum des letzten Beitrags erkennt, wird dieses Forum seit langem nicht mehr benutzt. Zwar entstehen keine zusätzliche Kosten, um dieses Forum zu halten, nichtsdestotrotz macht es keinen Sinn ein totes Forum im Internet zu präsentieren. Aus diesem Grund werden wir demnächst dieses Forum schließen. Falls sich dennoch ein paar hartgesottene Mitglieder finden, die dieses Forum immer noch am Leben halten wollen, sollen sich bitte im Forum „Allgemeine Diskussion“ melden.
(19.12.2023)

Hinweis: Falls sich die Forum-Adresse ändern sollte, so gehe bitte auf die Fritz!Load-FAQ-Seite in Sourceforge.net, um die aktuelle Forum-Adresse zu erfahren oder aktualisiere deine Fritz!Load-Version auf den neuesten Stand und nutze den Link „Forum“ unter „Allgemein“ in der Registerkarte „Hilfe“ direkt in Fritz!Load.

#1 am 06. Jan. 2014 um 21:12 Uhr

pseudex
Mitglied
Registriert: am 06. Jan. 2014
Beiträge: 16

[BUG] Downloads per FTP übertragen

Hallo,

ich habe ein Problem mit der Übertragung der Downloads via FTP.

Im log steh z.B.

curl: Can't open '/var/fritzload/downloads/transfer/test2.mp4[b] -u user:password[/b]'!

Es sieht wohl so aus, als ist der CURL befehl nicht richtig zusammen gesetzt. das ' sollte wohl direkt hinter dem Datei-Namen stehen und nicht hinter dem user:password.

Wenn man in der config den ftp komplett angibt (ftp://user:password@FTPserver) und die zwei Felder für user und pw leer lässt funktioniert der Transfer.

Ich nutze die Version V0.42/Rev.: 2480 auf einer 7390.

Abwesend

#2 am 25. Feb. 2014 um 16:30 Uhr

rolex0815
Entwickler
Registriert: am 29. Jun. 2012
Beiträge: 558

Antw.: [BUG] Downloads per FTP übertragen

Hast du ein DEBUG Log?

Der Zeile mit "transferServer" in der fritzload.ini wäre auch interessant.

Abwesend

#3 am 07. Feb. 2015 um 00:07 Uhr

pseudex
Mitglied
Registriert: am 06. Jan. 2014
Beiträge: 16

Antw.: [BUG] Downloads per FTP übertragen

wow. Das ist jetzt schon ein Jahr her. Habe bis vor kurzem nicht wieder in das Thema rein geschaut.
Habe es total vergessen, da ich zum FTP uploaden konnte, wenn man ftp://user:pw@server eingegeben hat.
Nun habe ich versucht mich selbst um das Problem zu kümmern. So wirklich verstehen tue ich nicht, warum curl ein Problem hat.
Wenn mich jemand da aufklären kann, wäre ich sehr froh darüber.

if $CURL -T $file$params "$url";then

diese Zeile habe ich verändert und die Variablen mit eval ausführen lassen

if eval $CURL -T "\""${file}"\""${params} "--connect-timeout 30" "$url";then

Zusätzlich habe ich noch einen Connection-Timeout von 30 Sekunden angefügt.
Auf diese Weise funktioniert der Upload, wenn man user und pw braucht.

Danach habe ich noch etwas weiter gespielt und versucht auf den HFS HTTP Server etwas hochzuladen.
Der Server muss in den Einstellungen als HFShttp://<HFSipaddress>/<HFSfolder>/ angegeben werden.
Hier muss curl jedoch wie folgt aufgerufen werden:

curl  -F fileupload1=@MyFile.iso  -F press="Upload files"  http://<HFSipaddress>/<HFSfolder>/	

Die downloadTransfer.sh habe ich nun sehr stark erweitert.
Die while Schleife für den Upload sieht jetzt bei mir so aus:

# --proxytunnel -x proxy:port
		try=1
		while [ "${try:-0}" -le 3 ];do
			print "Dateiübertragung: $file >>> $url"
			
			# support for uploading to FTP server
			if ! [ -n "${url##ftp\:\/\/*}" ]; then
				if eval $CURL -T "\""${file}"\""${params} "--connect-timeout 30" "$url";then
					print "Dateiübertragung erfolgreich: Lösche lokal $file"
					rm -f $file
					return
				fi
			fi
			
			# support for uploading to HTTP server
			if ! [ -n "${url##http\:\/\/*}" ]; then
				eval $CURL -T "\""${file}"\""${params} "--connect-timeout 30" "$url" 1> /dev/null
				if [ "$?" -eq 0 ]; then	
					print "Dateiübertragung erfolgreich: Lösche lokal $file"
					rm -f $file
					return
				fi
			fi
			
			# support for uploading to HFS HTTP Server
			if ! [ -n "${url##HFShttp\:\/\/*}" ]; then
				#curl  -F fileupload1=@MyFile.iso  -F press="Upload files"  http://<HFSipaddress>/<HFSfolder>/	
				eval $CURL -F "fileupload1=\@\""${file}"\"" "-F press=\"Upload files\""${params} "--connect-timeout 30" "${url##HFS}\/" 1> /dev/null
				#> /dev/null 2>&1				
				if [ "$?" -eq 0 ]; then				
					print "Dateiübertragung erfolgreich: Lösche lokal $file"
					rm -f $file
					return
				fi
			fi
			
			
			errmsg "Die Dateiübertragung ist fehlgeschlagen! - $(curl_error_code "$?")"
			try=$(($try+1))
		done

Es passt zwar hier nicht mehr direkt zu. Jedoch habe ich vor den Upload noch ein WOL ähnlich wie für die NAS eingebaut:

		url="${url%/}/"
		
		# Check, if Server is On
		print "Ist der Server ${cifsAdress} wach?"
 		ping -c 2 ${cifsAdress} > /dev/null 2>&1
		if [ "$?" -gt 0 ]; then
		# try to wake cifs server
			print "Server mit der Mac-Adresse: ${cifsMAC} Aufwecken" 
			if [ -n "${cifsMAC}" ]; then
				for intf in eth0 eth1; do
					/usr/bin/ether-wake -i ${intf} ${cifsMAC} >/dev/null 2>&1 && _gui_output_format "Magic-Packet auf ${intf} gesendet - NAS wird hochgefahren."
				done				
				if [ -n $TIMEINSEC ];then
					TIMEINSEC=60
				fi				
				print "Warte $TIMEINSEC Sekunden um den Server wach werden zu lassen"
				try=1
				while [ "${try:-0}" -le 6 ];do				
					sleep $(($TIMEINSEC/6)) #  $TIMEINSEC Sekunden warten, bis zum ersten Mount-Versuch, default 60
					ping -c 1 ${cifsAdress} > /dev/null 2>&1
					if [ "$?" -gt 0 ]; then
						print "Server erfolgreich aufgeweckt!"
						break
					fi
				try=$(($try+1))
				done
			fi
		else
			print "Server ist wach!"
		fi
		
		# --proxytunnel -x proxy:port

Das ist meine komplette downloadTransfer.sh

Der Beitrag wurde geändert von pseudex (am 07. Feb. 2015 um 00:16 Uhr)

Abwesend

#4 am 10. Dec. 2017 um 19:23 Uhr

Chefi
Mitglied
Registriert: am 21. Jan. 2013
Beiträge: 108

Antw.: [BUG] Downloads per FTP übertragen

Ich kann diesen Bug so bestätigen.

Abwesend

#5 am 16. Dec. 2017 um 17:55 Uhr

rolex0815
Entwickler
Registriert: am 29. Jun. 2012
Beiträge: 558

Antw.: [BUG] Downloads per FTP übertragen

Das Problem ist bei ein paar Sachen (FTP-Transfer, voipcheck, reconnect, unrar, ...), dass ich die überhaupt nicht nutze.
Manche kann ich nicht testen, mangels Festnetz-Telefon, für andere ist es mir zu ganz klar zu mühsam das einzurichten, durch zu probieren etc. wenn ich das nicht annähernd verwende.

Viele Entwickler sind hier nicht mehr aktiv, @roadman17, @genuk und ich machen noch ab und zu was.
Vieles am Code ist wahrscheinlich antik und nicht mehr lauffähig, bzw. müsste auch neuere Fritz!OS/Freetz Versionen angepasst werden.

Das obige gilt allgemein.

Mit einem DEBUG Log kann man ansetzen und wenn jemand das dann auch ausprobieren will es eventuell auch reparieren.

Btw. wenn du das File von @pseudex oben nimmst und das jetzige ersetzt, funktioniert damit dann der FTP Transfer?

Der Beitrag wurde geändert von rolex0815 (am 16. Dec. 2017 um 17:55 Uhr)

Abwesend

#6 am 16. Dec. 2017 um 18:56 Uhr

Chefi
Mitglied
Registriert: am 21. Jan. 2013
Beiträge: 108

Antw.: [BUG] Downloads per FTP übertragen

Ich hätte präziser sein können:
Ich kann sowohl den Bug bestätigen, als auch das pseudex's Einzeiler den FTP Transfer für mich gefixt hat.
Den Teil mit dem HTTP Server und WOL habe ich nicht überprüft, teils weil ich keinen HTTP Server habe und mein FTP Server immer online ist.

Abwesend

#7 am 16. Dec. 2017 um 19:50 Uhr

rolex0815
Entwickler
Registriert: am 29. Jun. 2012
Beiträge: 558

Antw.: [BUG] Downloads per FTP übertragen

Änderungen von @pseudex sind ins SVN gewandert.

Abwesend

#8 am 10. Jul. 2018 um 12:33 Uhr

Chefi
Mitglied
Registriert: am 21. Jan. 2013
Beiträge: 108

Antw.: [BUG] Downloads per FTP übertragen

Möchte keinen neuen Thread aufmachen, nur eine kurze Frage, die sich wahrscheinlich einfach beantworten lässt von jemandem der einen Überblick über die verwendeten Bibliotheken und Bausteine hat:
Ist FTP über SSL möglich? Also sowohl abhängig von den Bibliotheken als auch von der aktuellen Implementierung?

Editiert für Präzisierung

Der Beitrag wurde geändert von Chefi (am 10. Jul. 2018 um 12:42 Uhr)

Abwesend

Fußzeile des Forums

Angetrieben von FluxBB