
Summary: To be more portable (especially w.r.t. platforms without system()), commands should be managed programmatically rather than via string manipulation on the command line. This change introduces Fuzzer::Command, with methods to manage arguments and flags, set output options, and execute the command. Patch By: aarongreen Reviewers: kcc, morehouse Reviewed By: kcc, morehouse Subscribers: llvm-commits, mgorny Differential Revision: https://reviews.llvm.org/D40103 llvm-svn: 319680
27 lines
767 B
C++
27 lines
767 B
C++
//===- FuzzerUtilLinux.cpp - Misc utils for Linux. ------------------------===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
// Misc utils for Linux.
|
|
//===----------------------------------------------------------------------===//
|
|
#include "FuzzerDefs.h"
|
|
#if LIBFUZZER_LINUX || LIBFUZZER_NETBSD
|
|
#include "FuzzerCommand.h"
|
|
|
|
#include <stdlib.h>
|
|
|
|
namespace fuzzer {
|
|
|
|
int ExecuteCommand(const Command &Cmd) {
|
|
std::string CmdLine = Cmd.toString();
|
|
return system(CmdLine.c_str());
|
|
}
|
|
|
|
} // namespace fuzzer
|
|
|
|
#endif // LIBFUZZER_LINUX || LIBFUZZER_NETBSD
|