49 lines
1.1 KiB
C
49 lines
1.1 KiB
C
|
// Copyright (c) 2012 The Chromium 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 TOOLS_ANDROID_FORWARDER2_COMMAND_H_
|
||
|
#define TOOLS_ANDROID_FORWARDER2_COMMAND_H_
|
||
|
|
||
|
#include "base/basictypes.h"
|
||
|
|
||
|
namespace forwarder2 {
|
||
|
|
||
|
class Socket;
|
||
|
|
||
|
namespace command {
|
||
|
|
||
|
enum Type {
|
||
|
ACCEPT_ERROR = 0,
|
||
|
ACCEPT_SUCCESS,
|
||
|
ACK,
|
||
|
ADB_DATA_SOCKET_ERROR,
|
||
|
ADB_DATA_SOCKET_SUCCESS,
|
||
|
BIND_ERROR,
|
||
|
BIND_SUCCESS,
|
||
|
DATA_CONNECTION,
|
||
|
HOST_SERVER_ERROR,
|
||
|
HOST_SERVER_SUCCESS,
|
||
|
KILL_ALL_LISTENERS,
|
||
|
LISTEN,
|
||
|
UNLISTEN,
|
||
|
UNLISTEN_ERROR,
|
||
|
UNLISTEN_SUCCESS,
|
||
|
};
|
||
|
|
||
|
} // namespace command
|
||
|
|
||
|
bool ReadCommand(Socket* socket,
|
||
|
int* port_out,
|
||
|
command::Type* command_type_out);
|
||
|
|
||
|
// Helper function to read the command from the |socket| and return true if the
|
||
|
// |command| is equal to the given command parameter.
|
||
|
bool ReceivedCommand(command::Type command, Socket* socket);
|
||
|
|
||
|
bool SendCommand(command::Type command, int port, Socket* socket);
|
||
|
|
||
|
} // namespace forwarder
|
||
|
|
||
|
#endif // TOOLS_ANDROID_FORWARDER2_COMMAND_H_
|