summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2020-11-10 05:05:16 +0100
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2020-11-10 05:05:16 +0100
commit6ab06e1de6c876ee113efbacfd7d2f18902b7495 (patch)
tree80fd625216f4cf024d1e2d9a51009efa46196bc1
parentMerge "Migrate system/core/adb to packages/modules/adb" am: 7bc92050e3 (diff)
parentMerge "Expose EthernetDevice to custom UIs" (diff)
downloadandroid_bootable_recovery-6ab06e1de6c876ee113efbacfd7d2f18902b7495.tar
android_bootable_recovery-6ab06e1de6c876ee113efbacfd7d2f18902b7495.tar.gz
android_bootable_recovery-6ab06e1de6c876ee113efbacfd7d2f18902b7495.tar.bz2
android_bootable_recovery-6ab06e1de6c876ee113efbacfd7d2f18902b7495.tar.lz
android_bootable_recovery-6ab06e1de6c876ee113efbacfd7d2f18902b7495.tar.xz
android_bootable_recovery-6ab06e1de6c876ee113efbacfd7d2f18902b7495.tar.zst
android_bootable_recovery-6ab06e1de6c876ee113efbacfd7d2f18902b7495.zip
-rw-r--r--recovery_ui/Android.bp3
-rw-r--r--recovery_ui/default_ethernet_device.cpp23
-rw-r--r--recovery_ui/ethernet_device.cpp21
-rw-r--r--recovery_ui/include/recovery_ui/ethernet_device.h42
4 files changed, 68 insertions, 21 deletions
diff --git a/recovery_ui/Android.bp b/recovery_ui/Android.bp
index 9dfee5fd5..c9616ec15 100644
--- a/recovery_ui/Android.bp
+++ b/recovery_ui/Android.bp
@@ -22,6 +22,7 @@ cc_library {
srcs: [
"device.cpp",
+ "ethernet_device.cpp",
"ethernet_ui.cpp",
"screen_ui.cpp",
"stub_ui.cpp",
@@ -102,7 +103,7 @@ cc_library_static {
],
srcs: [
- "ethernet_device.cpp",
+ "default_ethernet_device.cpp",
],
shared_libs: [
diff --git a/recovery_ui/default_ethernet_device.cpp b/recovery_ui/default_ethernet_device.cpp
new file mode 100644
index 000000000..1fdff0d86
--- /dev/null
+++ b/recovery_ui/default_ethernet_device.cpp
@@ -0,0 +1,23 @@
+/*
+ * Copyright (C) 2020 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 "recovery_ui/device.h"
+#include "recovery_ui/ethernet_device.h"
+#include "recovery_ui/ethernet_ui.h"
+
+Device* make_device() {
+ return new EthernetDevice(new EthernetRecoveryUI);
+}
diff --git a/recovery_ui/ethernet_device.cpp b/recovery_ui/ethernet_device.cpp
index 39ec65dc4..d79f41dec 100644
--- a/recovery_ui/ethernet_device.cpp
+++ b/recovery_ui/ethernet_device.cpp
@@ -27,23 +27,9 @@
#include <sys/types.h>
#include "recovery_ui/device.h"
+#include "recovery_ui/ethernet_device.h"
#include "recovery_ui/ethernet_ui.h"
-class EthernetDevice : public Device {
- public:
- explicit EthernetDevice(EthernetRecoveryUI* ui);
-
- void PreRecovery() override;
- void PreFastboot() override;
-
- private:
- int SetInterfaceFlags(const unsigned set, const unsigned clr);
- void SetTitleIPv6LinkLocalAddress(const bool interface_up);
-
- android::base::unique_fd ctl_sock_;
- static const std::string interface;
-};
-
const std::string EthernetDevice::interface = "eth0";
EthernetDevice::EthernetDevice(EthernetRecoveryUI* ui)
@@ -129,8 +115,3 @@ void EthernetDevice::SetTitleIPv6LinkLocalAddress(const bool interface_up) {
recovery_ui->SetIPv6LinkLocalAddress();
}
-
-// -----------------------------------------------------------------------------------------
-Device* make_device() {
- return new EthernetDevice(new EthernetRecoveryUI);
-}
diff --git a/recovery_ui/include/recovery_ui/ethernet_device.h b/recovery_ui/include/recovery_ui/ethernet_device.h
new file mode 100644
index 000000000..ea710ab93
--- /dev/null
+++ b/recovery_ui/include/recovery_ui/ethernet_device.h
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2020 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.
+ */
+
+#ifndef _ETHERNET_RECOVERY_DEVICE_H
+#define _ETHERNET_RECOVERY_DEVICE_H
+
+#include "device.h"
+
+#include <android-base/unique_fd.h>
+
+// Forward declaration to avoid including "ethernet_ui.h".
+class EthernetRecoveryUI;
+
+class EthernetDevice : public Device {
+ public:
+ explicit EthernetDevice(EthernetRecoveryUI* ui);
+
+ void PreRecovery() override;
+ void PreFastboot() override;
+
+ private:
+ int SetInterfaceFlags(const unsigned set, const unsigned clr);
+ void SetTitleIPv6LinkLocalAddress(const bool interface_up);
+
+ android::base::unique_fd ctl_sock_;
+ static const std::string interface;
+};
+
+#endif // _ETHERNET_RECOVERY_DEVICE_H