|
ProtoCore v0.0.1
Deterministic, zero-heap network stack for embedded targets
|
FTP client session driver: the two sockets the ftp.h codec deliberately does not own. More...
#include "protocore_config.h"Go to the source code of this file.
FTP client session driver: the two sockets the ftp.h codec deliberately does not own.
ftp.h is pure bytes-on-the-wire. This is the other half: it drives a real control connection (pc_client_*) through the RFC 959 login -> TYPE I -> passive-mode -> transfer -> QUIT sequence, opens the second (data) connection the server names, and streams a payload across it.
The payload is pulled, not pushed: the caller supplies a pc_ftp_source that fills a chunk at a given offset. So the bytes can come from anywhere - a file, a sensor log, or the core-dump partition (pc_exc_coredump_read) - without this owner knowing about any of them, and nothing ever has to fit in RAM at once.
Blocking and synchronous, bounded by PC_FTP_TIMEOUT_MS per reply: an offload runs at boot or from a maintenance route, not from the request hot path.
Definition in file ftp_session.h.