В доступе отказано при отправке команды с клиента на сервер - PullRequest
0 голосов
/ 11 ноября 2019

Я отправляю команду от клиента. На сервере я получаю команду и выполняю popen, в результате чего я получил сообщение об ошибке «Отказано в доступе». Как я могу выполнить команду без разрешения отказано.

std::string Server::exec(const char* cmd) {

    std::string command("/home/eternity/Desktop/clientserver/src/build/server ");
    std::string a(cmd);
    command += a;
    std::array<char, 512> buffer;
    std::string result;
    std::unique_ptr<FILE, decltype(&pclose)> pipe(popen(command.c_str(), "r"), pclose);
    if (!pipe) {
        throw std::runtime_error("popen() failed!");
    }
    while (fgets(buffer.data(), buffer.size(), pipe.get()) != nullptr) {
        result += buffer.data();
    }
    return result;
}

Ошибка: /home/eternity/Desktop/clientserver/src/build/server: Permission denied

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...