Fishhook
public struct Fishhook<UnderlyingBackend> : Backend where UnderlyingBackend : Backend
extension Backends.Fishhook: DefaultBackend where UnderlyingBackend: DefaultBackend
A backend which uses Fishhook to hook functions.
Other hook requests are forwarded to the UnderlyingBackend
.
This backend conditionally conforms to DefaultBackend
iff
UnderlyingBackend
does as well.
Warning
This backend does not support hooking functions by their address. It is also subject to the pitfalls of Fishhook, for example calls to hooked functions from within the image in which the function is declared may still use the original implementation. In addition, all instances of symbols with the same name as the target function are hooked, not just the one in the requested image.-
Initializes the Fishhook backend with the provided underlying backend.
Declaration
Swift
public init(underlyingBackend: UnderlyingBackend)
Parameters
underlyingBackend
The backend to fall back to for non-function hooking.
-
Declaration
Swift
public func apply(hooks: [HookDescriptor])
-
Declaration
Swift
public init()