Android-cuttlefish cvd tool
|
#include "sysdeps.h"
#include "transport.h"
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <condition_variable>
#include <functional>
#include <memory>
#include <mutex>
#include <thread>
#include <unordered_map>
#include <vector>
#include <android-base/parsenetaddress.h>
#include <android-base/stringprintf.h>
#include <android-base/thread_annotations.h>
#include <cutils/sockets.h>
#include "adb.h"
#include "adb_io.h"
#include "adb_unique_fd.h"
#include "adb_utils.h"
#include "fdevent/fdevent.h"
#include "socket_spec.h"
#include "sysdeps/chrono.h"
Classes | |
struct | RetryPort |
struct | EmulatorConnection |
Macros | |
#define | TRACE_TAG TRANSPORT |
Functions | |
static void | adb_local_transport_max_port_env_override () |
static std::unordered_map< int, atransport * > emulator_transports | GUARDED_BY (emulator_transports_lock) |
bool | connect_emulator (int port) |
void | connect_device (const std::string &address, std::string *response) |
int | connect_emulator_arbitrary_ports (int console_port, int adb_port, std::string *error) |
static void | PollAllLocalPortsForEmulator () |
static void | client_socket_thread (std::string_view) |
void | init_emulator_scanner (const std::string &addr) |
static atransport * | find_emulator_transport_by_adb_port_locked (int adb_port) REQUIRES(emulator_transports_lock) |
atransport * | find_emulator_transport_by_adb_port (int adb_port) |
atransport * | find_emulator_transport_by_console_port (int console_port) |
std::string | getEmulatorSerialString (int console_port) |
int | init_socket_transport (atransport *t, unique_fd fd, int adb_port, bool is_emulator) |
Variables | |
static int | adb_local_transport_max_port = DEFAULT_ADB_LOCAL_TRANSPORT_PORT + 16 * 2 - 1 |
static std::mutex & | emulator_transports_lock = *new std::mutex() |
static constexpr uint32_t | LOCAL_PORT_RETRY_COUNT = 60 |
static constexpr auto | LOCAL_PORT_RETRY_INTERVAL = 1s |
static std::vector< RetryPort > & | retry_ports = *new std::vector<RetryPort> |
std::mutex & | retry_ports_lock = *new std::mutex |
std::condition_variable & | retry_ports_cond = *new std::condition_variable |
#define TRACE_TAG TRANSPORT |
|
static |
|
static |
void connect_device | ( | const std::string & | address, |
std::string * | response | ||
) |
bool connect_emulator | ( | int | port | ) |
int connect_emulator_arbitrary_ports | ( | int | console_port, |
int | adb_port, | ||
std::string * | error | ||
) |
atransport * find_emulator_transport_by_adb_port | ( | int | adb_port | ) |
|
static |
atransport * find_emulator_transport_by_console_port | ( | int | console_port | ) |
std::string getEmulatorSerialString | ( | int | console_port | ) |
|
static |
void init_emulator_scanner | ( | const std::string & | addr | ) |
int init_socket_transport | ( | atransport * | t, |
unique_fd | fd, | ||
int | adb_port, | ||
bool | is_emulator | ||
) |
|
static |
|
static |
|
static |
|
staticconstexpr |
|
staticconstexpr |
std::condition_variable& retry_ports_cond = *new std::condition_variable |
std::mutex& retry_ports_lock = *new std::mutex |