2018-09-24 15:45:27 +02:00
# ftpd
2014-11-26 08:44:02 +01:00
2018-09-24 15:45:27 +02:00
FTP Server for 3DS/Switch/Linux.
2014-11-26 08:44:02 +01:00
2018-09-24 15:45:27 +02:00
## Features
2016-06-15 05:41:24 +02:00
2014-11-26 08:44:02 +01:00
- Appears to work well with a variety of clients.
2016-01-16 01:04:09 +01:00
- Supports multiple simultaneous clients. The 3DS itself only appears to support enough sockets to perform 4-5 simultaneous data transfers, so it will help if you limit your FTP client to this many parallel requests.
2014-11-26 08:44:02 +01:00
- Cutting-edge graphics.
2020-04-28 02:57:09 +02:00
- Toggle backlight on 3DS with SELECT button
- Toggle backlight on Switch with MINUS button
2018-09-24 15:45:27 +02:00
## Latest Builds
2020-04-17 22:32:39 +02:00
NDS: https://mtheall.com/~mtheall/ftpd.nds
2016-06-15 05:41:24 +02:00
2020-04-07 05:41:48 +02:00
CIA: https://mtheall.com/~mtheall/ftpd.cia
2016-06-15 05:41:24 +02:00
2020-04-07 05:41:48 +02:00
3DSX: https://mtheall.com/~mtheall/ftpd.3dsx
2016-06-15 04:51:49 +02:00
2020-04-07 05:41:48 +02:00
NRO: https://mtheall.com/~mtheall/ftpd.nro
2018-09-24 15:45:27 +02:00
2016-06-15 04:51:49 +02:00
CIA QR Code
2016-06-15 03:06:16 +02:00
2020-04-17 22:32:39 +02:00
![ftpd.cia ](https://github.com/mtheall/ftpd/raw/feature/v3.0.0/ftpd-qr.png )
## Classic Builds
CIA: https://mtheall.com/~mtheall/ftpd-classic.cia
3DSX: https://mtheall.com/~mtheall/ftpd-classic.3dsx
NRO: https://mtheall.com/~mtheall/ftpd-classic.nro
CIA QR Code
![ftpd-classic.cia ](https://github.com/mtheall/ftpd/raw/feature/v3.0.0/ftpd-classic-qr.png )
2016-06-15 03:06:16 +02:00
2018-09-24 15:45:27 +02:00
## Build and install
You must set up the [development environment ](https://devkitpro.org/wiki/Getting_Started ).
2020-04-17 22:32:39 +02:00
### NDS
The following pacman packages are required to build `nds/ftpd.nds` :
devkitARM
dswifi
libfat-nds
libnds
They are available as part of the `nds-dev` meta-package.
2018-09-24 15:45:27 +02:00
### 3DSX
2020-04-07 05:41:48 +02:00
The following pacman packages are required to build `3ds/ftpd.3dsx` :
2018-09-24 15:45:27 +02:00
3dstools
devkitARM
libctru
They are available as part of the `3ds-dev` meta-package.
2020-04-07 05:41:48 +02:00
Build `3ds/ftpd.3dsx` :
2018-09-24 15:45:27 +02:00
make 3dsx
### NRO
2020-04-07 05:41:48 +02:00
The following pacman packages are required to build `switch/ftpd.nro` :
2018-09-24 15:45:27 +02:00
devkitA64
libnx
switch-tools
2014-12-21 17:48:10 +01:00
2018-09-24 15:45:27 +02:00
They are available as part of the `switch-dev` meta-package.
2014-12-21 17:48:10 +01:00
2020-04-07 05:41:48 +02:00
Build `switch/ftpd.nro` :
2014-12-21 17:48:10 +01:00
2018-09-24 15:45:27 +02:00
make nro
2014-12-21 19:23:19 +01:00
2018-09-24 15:45:27 +02:00
## Supported Commands
2014-11-26 08:44:02 +01:00
2016-01-22 02:25:22 +01:00
- ABOR
- ALLO (no-op)
2016-01-16 00:28:59 +01:00
- APPE
2014-11-26 08:44:02 +01:00
- CDUP
- CWD
- DELE
2016-01-22 02:25:22 +01:00
- FEAT
- HELP
2014-11-26 08:44:02 +01:00
- LIST
2016-01-23 01:57:33 +01:00
- MDTM
2014-11-26 08:44:02 +01:00
- MKD
2017-11-02 06:47:18 +01:00
- MLSD
- MLST
2014-11-26 08:44:02 +01:00
- MODE (no-op)
2016-01-16 00:47:18 +01:00
- NLST
2014-11-26 08:44:02 +01:00
- NOOP
2016-01-23 01:57:33 +01:00
- OPTS
2014-11-26 08:44:02 +01:00
- PASS (no-op)
- PASV
- PORT
- PWD
- QUIT
2016-01-19 00:46:03 +01:00
- REST
2014-11-26 08:44:02 +01:00
- RETR
- RMD
- RNFR
2016-01-22 02:25:22 +01:00
- RNTO
2020-04-24 22:51:43 +02:00
- SITE
2016-06-22 05:26:51 +02:00
- SIZE
2016-01-22 02:25:22 +01:00
- STAT
2014-11-26 08:44:02 +01:00
- STOR
- STRU (no-op)
- SYST
- TYPE (no-op)
- USER (no-op)
- XCUP
2016-01-23 01:57:33 +01:00
- XCWD
2014-11-26 08:44:02 +01:00
- XMKD
- XPWD
- XRMD
2018-09-24 15:45:27 +02:00
## Planned Commands
2014-11-26 08:44:02 +01:00
- STOU
2020-04-24 22:51:43 +02:00
## SITE commands
- Show help: SITE HELP
- Set username: SITE USER < NAME >
- Set password: SITE PASS < PASS >
- Set port: SITE PORT < PORT >
- Set getMTime: SITE MTIME [0|1]
- Save config: SITE SAVE