bettola/common/src/lua_api.h

38 lines
1.3 KiB
C++

#pragma once
#include <string>
#include "vfs.h"
class Session;
class NetworkManager;
namespace api {
/* FILESYSTEM ACTIONS. */
vfs_node* get_current_dir(Session& context);
std::string rm(Session& context, const std::string& filename);
std::string write_file(Session& context, const std::string& path,
const std::string& content);
std::string create_executable(Session& context, const std::string& path,
const std::string& content);
std::string read_file(Session& context, const std::string& path);
std::string ls(Session& context);
std::string cd(Session& context, const std::string& path);
std::string scp(Session& context, const std::string& source,
const std::string& destination);
std::string chown(Session& context, const std::string& owner,
const std::string& path);
std::string chgrp(Session& context, const std::string& group,
const std::string& path);
/* NETWORK ACTIONS. */
std::string ssh(Session& context, const std::string& ip);
std::string nmap(Session& context, const std::string& ip);
std::string disconnect(Session& context);
/* SYSTEM ACTIONS. */
std::string get_username(Session& context);
std::string close_terminal(Session& context);
} /* namespace api */