adb: split file_sync_service.h into client and daemon parts.
Test: treehugger Change-Id: I648c7001903a91448c69986e08a6cd2dd76ed793
This commit is contained in:
parent
220c1d5589
commit
edec033b26
8 changed files with 75 additions and 38 deletions
|
@ -25,8 +25,9 @@
|
|||
#include <android-base/strings.h>
|
||||
|
||||
#include "sysdeps.h"
|
||||
|
||||
#include "adb_utils.h"
|
||||
#include "file_sync_service.h"
|
||||
#include "client/file_sync_client.h"
|
||||
|
||||
static constexpr char BUGZ_BEGIN_PREFIX[] = "BEGIN:";
|
||||
static constexpr char BUGZ_PROGRESS_PREFIX[] = "PROGRESS:";
|
||||
|
|
|
@ -56,8 +56,8 @@
|
|||
#include "adb_unique_fd.h"
|
||||
#include "adb_utils.h"
|
||||
#include "bugreport.h"
|
||||
#include "client/file_sync_client.h"
|
||||
#include "commandline.h"
|
||||
#include "file_sync_service.h"
|
||||
#include "services.h"
|
||||
#include "shell_service.h"
|
||||
#include "sysdeps/chrono.h"
|
||||
|
|
|
@ -14,6 +14,8 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "client/file_sync_client.h"
|
||||
|
||||
#include <dirent.h>
|
||||
#include <inttypes.h>
|
||||
#include <limits.h>
|
||||
|
@ -39,7 +41,7 @@
|
|||
#include "adb_client.h"
|
||||
#include "adb_io.h"
|
||||
#include "adb_utils.h"
|
||||
#include "file_sync_service.h"
|
||||
#include "file_sync_protocol.h"
|
||||
#include "line_printer.h"
|
||||
#include "sysdeps/errno.h"
|
||||
#include "sysdeps/stat.h"
|
||||
|
|
27
adb/client/file_sync_client.h
Normal file
27
adb/client/file_sync_client.h
Normal file
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* Copyright (C) 2018 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
bool do_sync_ls(const char* path);
|
||||
bool do_sync_push(const std::vector<const char*>& srcs, const char* dst, bool sync);
|
||||
bool do_sync_pull(const std::vector<const char*>& srcs, const char* dst, bool copy_attrs,
|
||||
const char* name = nullptr);
|
||||
|
||||
bool do_sync_sync(const std::string& lpath, const std::string& rpath, bool list_only);
|
|
@ -16,8 +16,9 @@
|
|||
|
||||
#define TRACE_TAG SYNC
|
||||
|
||||
#include "daemon/file_sync_service.h"
|
||||
|
||||
#include "sysdeps.h"
|
||||
#include "file_sync_service.h"
|
||||
|
||||
#include <dirent.h>
|
||||
#include <errno.h>
|
||||
|
@ -42,6 +43,7 @@
|
|||
#include "adb_io.h"
|
||||
#include "adb_trace.h"
|
||||
#include "adb_utils.h"
|
||||
#include "file_sync_protocol.h"
|
||||
#include "security_log_tags.h"
|
||||
#include "sysdeps/errno.h"
|
||||
|
||||
|
|
21
adb/daemon/file_sync_service.h
Normal file
21
adb/daemon/file_sync_service.h
Normal file
|
@ -0,0 +1,21 @@
|
|||
#pragma once
|
||||
|
||||
/*
|
||||
* Copyright (C) 2018 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include <android-base/unique_fd.h>
|
||||
|
||||
void file_sync_service(android::base::unique_fd fd);
|
|
@ -14,34 +14,28 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#ifndef _FILE_SYNC_SERVICE_H_
|
||||
#define _FILE_SYNC_SERVICE_H_
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#define MKID(a, b, c, d) ((a) | ((b) << 8) | ((c) << 16) | ((d) << 24))
|
||||
|
||||
#include <android-base/unique_fd.h>
|
||||
|
||||
#define MKID(a,b,c,d) ((a) | ((b) << 8) | ((c) << 16) | ((d) << 24))
|
||||
|
||||
#define ID_LSTAT_V1 MKID('S','T','A','T')
|
||||
#define ID_STAT_V2 MKID('S','T','A','2')
|
||||
#define ID_LSTAT_V2 MKID('L','S','T','2')
|
||||
#define ID_LIST MKID('L','I','S','T')
|
||||
#define ID_SEND MKID('S','E','N','D')
|
||||
#define ID_RECV MKID('R','E','C','V')
|
||||
#define ID_DENT MKID('D','E','N','T')
|
||||
#define ID_DONE MKID('D','O','N','E')
|
||||
#define ID_DATA MKID('D','A','T','A')
|
||||
#define ID_OKAY MKID('O','K','A','Y')
|
||||
#define ID_FAIL MKID('F','A','I','L')
|
||||
#define ID_QUIT MKID('Q','U','I','T')
|
||||
#define ID_LSTAT_V1 MKID('S', 'T', 'A', 'T')
|
||||
#define ID_STAT_V2 MKID('S', 'T', 'A', '2')
|
||||
#define ID_LSTAT_V2 MKID('L', 'S', 'T', '2')
|
||||
#define ID_LIST MKID('L', 'I', 'S', 'T')
|
||||
#define ID_SEND MKID('S', 'E', 'N', 'D')
|
||||
#define ID_RECV MKID('R', 'E', 'C', 'V')
|
||||
#define ID_DENT MKID('D', 'E', 'N', 'T')
|
||||
#define ID_DONE MKID('D', 'O', 'N', 'E')
|
||||
#define ID_DATA MKID('D', 'A', 'T', 'A')
|
||||
#define ID_OKAY MKID('O', 'K', 'A', 'Y')
|
||||
#define ID_FAIL MKID('F', 'A', 'I', 'L')
|
||||
#define ID_QUIT MKID('Q', 'U', 'I', 'T')
|
||||
|
||||
struct SyncRequest {
|
||||
uint32_t id; // ID_STAT, et cetera.
|
||||
uint32_t id; // ID_STAT, et cetera.
|
||||
uint32_t path_length; // <= 1024
|
||||
// Followed by 'path_length' bytes of path (not NUL-terminated).
|
||||
} __attribute__((packed)) ;
|
||||
} __attribute__((packed));
|
||||
|
||||
union syncmsg {
|
||||
struct __attribute__((packed)) {
|
||||
|
@ -81,14 +75,4 @@ union syncmsg {
|
|||
} status;
|
||||
};
|
||||
|
||||
void file_sync_service(android::base::unique_fd fd);
|
||||
bool do_sync_ls(const char* path);
|
||||
bool do_sync_push(const std::vector<const char*>& srcs, const char* dst, bool sync);
|
||||
bool do_sync_pull(const std::vector<const char*>& srcs, const char* dst,
|
||||
bool copy_attrs, const char* name=nullptr);
|
||||
|
||||
bool do_sync_sync(const std::string& lpath, const std::string& rpath, bool list_only);
|
||||
|
||||
#define SYNC_DATA_MAX (64*1024)
|
||||
|
||||
#endif
|
||||
#define SYNC_DATA_MAX (64 * 1024)
|
|
@ -51,10 +51,10 @@
|
|||
#include "adb_io.h"
|
||||
#include "adb_utils.h"
|
||||
#if !ADB_HOST
|
||||
#include "daemon/file_sync_service.h"
|
||||
#include "daemon/framebuffer_service.h"
|
||||
#include "daemon/set_verity_enable_state_service.h"
|
||||
#endif
|
||||
#include "file_sync_service.h"
|
||||
#include "remount_service.h"
|
||||
#include "services.h"
|
||||
#include "shell_service.h"
|
||||
|
|
Loading…
Reference in a new issue