// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef SYSTEM_API_CONSTANTS_VM_TOOLS_H_
#define SYSTEM_API_CONSTANTS_VM_TOOLS_H_

namespace vm_tools {

constexpr int kMaitredPort = 8888;

// Static port number that vm_cicerone (running in the host) listens on, and
// garcon (in the container) connects to.
constexpr int kGarconPort = 8889;

constexpr int kTremplinPort = 8890;
constexpr int kVshPort = 9001;
constexpr int kArcHostClockServicePort = 9901;

constexpr int kDefaultStartupListenerPort = 7777;
constexpr int kTremplinListenerPort = 7778;
constexpr int kCrashListenerPort = 7779;

// Static port number that ARCVM runs sftp-server on.
constexpr int kSftpServerPort = 7780;

constexpr int kLmkdKillDecisionPort = 7781;

// Used by vm_tools::concierge::mm::ReclaimServer.
constexpr int kVmMemoryManagementReclaimServerPort = 7782;
// Used by vm_tools::concierge::mm::KillsServer.
constexpr int kVmMemoryManagementKillsServerPort = 7783;

// All ports above this value are reserved for seneschal servers.
constexpr uint32_t kFirstSeneschalServerPort = 16384;

// Name of the user that runs unstrusted operating systems on Chrome OS.
constexpr char kCrosVmUser[] = "crosvm";

}  // namespace vm_tools

#endif  // SYSTEM_API_CONSTANTS_VM_TOOLS_H_
