This is a read-only snapshot of the ComputerCraft forums, taken in April 2020.
LDDestroier's profile picture

Whisk - file/folder transfer

Started by LDDestroier, 27 February 2016 - 03:22 AM
LDDestroier #1
Posted 27 February 2016 - 04:22 AM
A while ago I tried (and gave up) to make some simple FTP program (which is kind of embarrassing in retrospect), so I gave it another go. And here we are.

WHISK

Because it whisks your files away! I thought it was a good name.


The main difference with this and another ordinary file transfer program is that it can take a folder (and all its contents) as an argument. Meaning, you can send your entire filesystem to another computer. Neato.

UPDATE: Files are now encrypted with valithor's encryption API.


pastebin get 4ZRHE4Ar whisk
std pb 4ZRHE4Ar whisk
std ld whisk whisk

Syntax:

whisk   --Opens GUI interface
whisk send <filename> <id>
whisk receive <savename> <idfilter>

Screenshots:
Spoiler
Main menu



SEND menu (the receive menu looks mostly the same)


The CLI interface.
Edited on 14 March 2016 - 03:13 PM
Creator #2
Posted 27 February 2016 - 08:53 AM
Is ther any login/user functionality? And please, I want to have an idea of how it looks, even if it is just CLI. Else, nice!
LDDestroier #3
Posted 27 February 2016 - 09:27 PM
Is ther any login/user functionality? And please, I want to have an idea of how it looks, even if it is just CLI. Else, nice!
It is decentralized, and is also completely CLI. I might want to make a version with a GUI, but as for now, it's bug-fixing time.

And for as it looks…

CraftOS 17
>ls
rom	 butts   whisk
>ls butts
test1   test2
>whisk send butts
>


CraftOS 1.7
>ls
rom	 whisk
>whisk receive
Receiving...Done (got 2 files)
>ls
rom	 butts	whisk
>ls butts
test1	test2
Edited on 27 February 2016 - 10:04 PM
LDDestroier #4
Posted 27 February 2016 - 11:07 PM
New milestone. I fixed some bugs, and now you can send your entire filesystem with "whisk send /", or whatever folder you cd'd into with "whisk send ."

Maybe I'll consider making a GUI for it. MAYBE. GUI design is not my strong suit, and I never liked learning new APIs.
Creator #5
Posted 27 February 2016 - 11:36 PM
New milestone. I fixed some bugs, and now you can send your entire filesystem with "whisk send /", or whatever folder you cd'd into with "whisk send ."

Maybe I'll consider making a GUI for it. MAYBE. GUI design is not my strong suit, and I never liked learning new APIs.

Then create an API, like I do!
FUNCTION MAN! #6
Posted 28 February 2016 - 12:09 AM
And make it encrypted! (please not memfrob(3)ed)
PixelToast #7
Posted 28 February 2016 - 12:49 AM
And make it encrypted! (please not memfrob(3)ed)

TIL… http://linux.die.net/man/3/memfrob

The memfrob() function encrypts the first n bytes of the memory area s by exclusive-ORing each character with the number 42. The effect can be reversed by using memfrob() on the encrypted memory area.
Edited on 28 February 2016 - 02:54 AM
LDDestroier #8
Posted 28 February 2016 - 02:17 AM
mein snippen

Then create an API, like I do!

I don't FEEL like it. I might just use someone else's (NOT Bedrock, despite it being easy to install). Perhaps I'll use Flare given how cool it is, that is if I feel like making a GUI to begin with. I'm more comfortable with using AND making CLI applications.


And make it encrypted! (please not memfrob(3)ed)

Encryption is DEFINITELY going to be added to it! That is a priority. I'll try to work it into the CLI syntax. And based on PixelToast's description (read: parroting) of memfrob(3), that DOES sound pretty awful. I'll probably use the same encryption as Enchat (valithor's encryption API encrypts based on os.time() and password).
LDDestroier #9
Posted 14 March 2016 - 03:36 PM
New update! Added some basic encryption to the contents of files, and added a GUI that runs when no arguments are given.
Personally, I think the GUI looks rather dashing.

Imma go add screenshots.
LDDestroier #10
Posted 18 March 2016 - 01:58 AM
Now on SimSoft! In fact, I only added a GUI so it could be added into SimSoft.
Also, since the last bump post, I've fixed several bugs and made a new program based on it that encrypts the whole hard drive.