// Copyright 2015 The Chromium OS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CHROMIUMOS_WIDE_PROFILING_PERF_OPTION_PARSER_H_
#define CHROMIUMOS_WIDE_PROFILING_PERF_OPTION_PARSER_H_

#include <vector>

#include "chromiumos-wide-profiling/compat/string.h"

namespace quipper {

// Check that "args" is safe to pass to perf. That is, that it only contains
// safe options from a whitelist of those that modify event collection.
// e.g., "perf record -e cycles -- rm -rf /" is unsafe.
// This check should be made on the arguments coming from an untrusted caller of
// quipper before quipper adds its own arguments, like "-- sleep 2" to set the
// profile duration, or "-o /tmp/perf.data" to set the output path.
// This also requires that args[0] is "perf". Quipper can later substitute
// this with the One True perf binary.
// Returns |true| iff the command line is safe.
bool ValidatePerfCommandLine(const std::vector<string> &args);

}  // namespace quipper

#endif  // CHROMIUMOS_WIDE_PROFILING_PERF_OPTION_PARSER_H_
