blob: 5b23d1058f9b26417f77ee196fd909fab38f0f38 [file] [log] [blame]
Elly Jones73161782012-08-14 17:37:05 -04001// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
Alex Vakulenko262be3f2014-07-30 15:25:50 -07005#ifndef DEBUGD_SRC_ICMP_TOOL_H_
6#define DEBUGD_SRC_ICMP_TOOL_H_
Elly Jones73161782012-08-14 17:37:05 -04007
Ben Chana0011d82014-05-13 00:19:29 -07008#include <map>
Elly Jones73161782012-08-14 17:37:05 -04009#include <string>
10
Ben Chan657bed82014-09-02 20:40:51 -070011#include <base/macros.h>
Elly Jones73161782012-08-14 17:37:05 -040012
13namespace debugd {
14
15class ICMPTool {
16 public:
Ben Chan78f89532014-08-29 09:35:09 -070017 ICMPTool() = default;
Qijiang Fan6bc59e12020-11-11 02:51:06 +090018 ICMPTool(const ICMPTool&) = delete;
19 ICMPTool& operator=(const ICMPTool&) = delete;
20
Ben Chan78f89532014-08-29 09:35:09 -070021 ~ICMPTool() = default;
Elly Jones73161782012-08-14 17:37:05 -040022
Eric Carusoc93a15c2017-04-24 16:15:12 -070023 std::string TestICMP(const std::string& host);
Xiaowen Xinf675f4c2013-06-14 02:27:11 -070024 std::string TestICMPWithOptions(
25 const std::string& host,
Eric Carusoc93a15c2017-04-24 16:15:12 -070026 const std::map<std::string, std::string>& options);
Elly Jones73161782012-08-14 17:37:05 -040027};
28
Ben Chana0011d82014-05-13 00:19:29 -070029} // namespace debugd
Elly Jones73161782012-08-14 17:37:05 -040030
Alex Vakulenko262be3f2014-07-30 15:25:50 -070031#endif // DEBUGD_SRC_ICMP_TOOL_H_