NativePoc.Builder

public static abstract class NativePoc.Builder
extends Object

java.lang.Object
   ↳ com.android.sts.common.NativePoc.Builder


摘要

公用建構函式

Builder()

公用方法

abstract NativePoc.Builder after(NativePoc.AfterFunction value)

在 PoC 執行完畢但在斷言或清理之前執行的函式。

abstract NativePoc.Builder args(List<String> value)

要傳遞至可執行 PoC 的引數清單

abstract NativePoc.Builder args(String... value)

要傳遞至可執行 PoC 的引數清單

abstract NativePoc.Builder asserter(NativePocAsserter value)

用於檢查 PoC 執行結果或副作用的 NativePocAsserter

abstract NativePoc.Builder assumePocExitSuccess(boolean value)

在 PoC 未傳回 0 時,是否要擲回假設失敗。

NativePoc build()

建構不可變動的 NativePoc 物件

abstract NativePoc.Builder envVars(Map<String, String> value)

在執行 PoC 前,需要設定的環境變數對應表

NativePoc.Builder only32()

強制使用 32 位元版本的 PoC 可執行檔

NativePoc.Builder only64()

強制使用 64 位元版本的 PoC 可執行檔

abstract NativePoc.Builder pocName(String value)

要上傳及執行的可執行檔名稱。

abstract NativePoc.Builder resourcePushLocation(String value)

要上傳擷取的 Java 資源的位置。

abstract NativePoc.Builder resources(String... value)

要擷取並上傳至裝置的 Java 資源清單

abstract NativePoc.Builder resources(List<String> value)

要擷取並上傳至裝置的 Java 資源清單

NativePoc.Builder timeoutSeconds(long value, String reason)

讓 PoC 執行多久後終止

abstract NativePoc.Builder useDefaultLdLibraryPath(boolean value)

是否要在 LD_LIBRARY_PATH 中加入 /system/lib64 和 /system/lib

公用建構函式

Builder

public Builder ()

公用方法

之後

public abstract NativePoc.Builder after (NativePoc.AfterFunction value)

在 PoC 執行完畢但在斷言或清理之前執行的函式。

這通常用於等待 PoC 程序本身完成後可能發生的 PoC 副作用,例如等待系統將當機傾印寫入檔案,或等待服務當機。

參數
value NativePoc.AfterFunction

傳回
NativePoc.Builder

args

public abstract NativePoc.Builder args (List<String> value)

要傳遞至可執行 PoC 的引數清單

參數
value List

傳回
NativePoc.Builder

args

public abstract NativePoc.Builder args (String... value)

要傳遞至可執行 PoC 的引數清單

參數
value String

傳回
NativePoc.Builder

asserter

public abstract NativePoc.Builder asserter (NativePocAsserter value)

用於檢查 PoC 執行結果或副作用的 NativePocAsserter

參數
value NativePocAsserter

傳回
NativePoc.Builder

assumePocExitSuccess

public abstract NativePoc.Builder assumePocExitSuccess (boolean value)

在 PoC 未傳回 0 時,是否要擲回假設失敗。預設值為 true

參數
value boolean

傳回
NativePoc.Builder

build

public NativePoc build ()

建構不可變動的 NativePoc 物件

傳回
NativePoc

envVars

public abstract NativePoc.Builder envVars (Map<String, String> value)

在執行 PoC 前要設定的環境變數對應表

參數
value Map

傳回
NativePoc.Builder

only32

public NativePoc.Builder only32 ()

強制使用 32 位元版本的 PoC 執行檔

傳回
NativePoc.Builder

only64

public NativePoc.Builder only64 ()

強制使用 64 位元版本的 PoC 執行檔

傳回
NativePoc.Builder

pocName

public abstract NativePoc.Builder pocName (String value)

要上傳及執行的可執行檔名稱。請勿加入「_sts??」後置字串。

參數
value String

傳回
NativePoc.Builder

resourcePushLocation

public abstract NativePoc.Builder resourcePushLocation (String value)

要將擷取的 Java 資源上傳至何處。預設為上傳 PoC 的位置

參數
value String

傳回
NativePoc.Builder

資源

public abstract NativePoc.Builder resources (String... value)

要擷取並上傳至裝置的 Java 資源清單

參數
value String

傳回
NativePoc.Builder

資源

public abstract NativePoc.Builder resources (List<String> value)

要擷取並上傳至裝置的 Java 資源清單

參數
value List

傳回
NativePoc.Builder

timeoutSeconds

public NativePoc.Builder timeoutSeconds (long value, 
                String reason)

PoC 在終止前執行的時間長度

參數
value long:原生 PoC 在終止前執行的秒數

reason String:說明為何需要使用不同的逾時時間長度,而非預設的 NativePoc.DEFAULT_POC_TIMEOUT_SECONDS。通常用於嘗試利用競爭狀況的概念驗證。

傳回
NativePoc.Builder 這個 Builder 例項

useDefaultLdLibraryPath

public abstract NativePoc.Builder useDefaultLdLibraryPath (boolean value)

是否要在 LD_LIBRARY_PATH 中加入 /system/lib64 和 /system/lib

參數
value boolean

傳回
NativePoc.Builder