9#ifndef SNBMODULES_INCLUDE_SNBMODULES_INTERFACES_TRANSFER_INTERFACE_SCP_HPP_
10#define SNBMODULES_INCLUDE_SNBMODULES_INTERFACES_TRANSFER_INTERFACE_SCP_HPP_
33 m_params.user = config.get_protocol_options()[
"user"].get<std::string>();
35 ers::fatal(ConfigError(ERS_HERE,
"user is mandatory in SCP protocol options"));
40 m_params.use_password = config.get_protocol_options()[
"use_password"].get<bool>();
53 TLOG() <<
"debug : SCP : Sucess Upload";
65 std::string exec =
"";
71 exec =
"scp -o PasswordAuthentication='no' " +
m_params.user +
"@" + f_meta.
get_src().
get_ip() +
":" +
75 TLOG() <<
"debug : executing " << exec;
76 if (system(exec.c_str()) == 0)
78 TLOG() <<
"debug : SCP : Sucess Download";
82 ers::error(ErrorSCPDownloadError(
ERS_HERE,
"Please check the logs for more information."));
bool download_file(TransferMetadata &f_meta, std::filesystem::path dest) override
bool upload_file(TransferMetadata &f_meta) override
bool pause_file(TransferMetadata &f_meta) override
std::map< std::string, std::filesystem::path > m_files_being_transferred
bool cancel_file(TransferMetadata &f_meta) override
bool hash_file(TransferMetadata &f_meta) override
bool resume_file(TransferMetadata &f_meta) override
TransferInterfaceSCP(GroupMetadata &config, bool is_uploader)
virtual ~TransferInterfaceSCP()=default
struct dunedaq::snbmodules::TransferInterfaceSCP::scp_parameters m_params
void error(const Issue &issue)