pub trait NamespaceControllerProxyInterface: Send + Sync {
type DetachResponseFut: Future<Output = Result<[u8; 16], Error>> + Send;
type RegisterEbpfProgramResponseFut: Future<Output = Result<NamespaceControllerRegisterEbpfProgramResult, Error>> + Send;
type PushChangesResponseFut: Future<Output = Result<ChangeValidationResult, Error>> + Send;
type CommitResponseFut: Future<Output = Result<CommitResult, Error>> + Send;
// Required methods
fn detach(&self) -> Self::DetachResponseFut;
fn register_ebpf_program(
&self,
handle: ProgramHandle,
program: VerifiedProgram,
) -> Self::RegisterEbpfProgramResponseFut;
fn push_changes(&self, changes: &[Change]) -> Self::PushChangesResponseFut;
fn commit(&self, payload: CommitOptions) -> Self::CommitResponseFut;
}