def json_data_target_info()

in idb/common/format.py [0:0]


def json_data_target_info(target: TargetDescription) -> Dict[str, Any]:
    data: Dict[str, Any] = {
        "name": target.name,
        "udid": target.udid,
        "state": target.state,
        "type": target.target_type.value,
        "os_version": target.os_version,
        "architecture": target.architecture,
    }
    companion_info = target.companion_info
    if companion_info is not None:
        address = companion_info.address
        if isinstance(address, TCPAddress):
            data["host"] = address.host
            data["port"] = address.port
            data["is_local"] = companion_info.is_local
            data["companion"] = f"{address.host}:{address.port}"
        else:
            data["path"] = address.path
            data["is_local"] = True
            data["companion"] = address.path
    if target.device is not None:
        data["device"] = target.device
    return data