---
name: "libnvme_mi_ep_set_submit_exit-libnvme3"
section: "2"
platform: "linux"
package: "nvme-cli"
version: "3.2-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/libnvme_mi_ep_set_submit_exit-libnvme3"
---

# libnvme\_mi\_ep\_set\_submit\_exit-libnvme3(2)

Install MI submit-exit callback

## NAME

libnvme\_mi\_ep\_set\_submit\_exit - Install MI submit-exit callback

## SYNOPSIS

**void libnvme\_mi\_ep\_set\_submit\_exit** **(struct libnvme\_mi\_ep \*ep** *,* **void (\*mi\_submit\_exit)(struct libnvme\_mi\_ep \*ep, \_\_u8 type, const struct nvme\_mi\_msg\_hdr \*hdr, size\_t hdr\_len, const void \*data, size\_t data\_len, void \*user\_data)** *);*

## ARGUMENTS

- ep

  endpoint to configure

- mi\_submit\_exit

  Callback invoked after an MI command completes callback (i.e., after a response has been received and passed basic validation). The function receives the endpoint, message type, header, data, and the *user\_data* pointer returned earlier by the mi\_submit\_entry callback. Implementations typically use this hook for logging, tracing, or freeing per-command state.

## DESCRIPTION

Installs a callback invoked when an MI command completes. This applies to all MI operations through this endpoint. Passing NULL removes any previously installed callback.
