This ioctl unregisters an application name. This ioctl returns an error if any ioctl is active for the RVG using the registered key.

For a Primary RVG, no RV_IBC_SEND ioctls will be accepted with the registered key after unregistering. Those IBC messages already introduced into the update stream are not affected by a subsequent unregister, even if they have not yet been sent to the Secondary RVG.

For a Secondary RVG, RV_IBC_RECEIVE or RV_IBC_UNFREEZE ioctls using the registered key cannot be successfully executed after the unregister, and any IBC messages arriving for the registered name are discarded.

The ioctl argument structure for the RV_IBC_UNREGISTER command is:

    struct ibc_unregister_args {
        ibc_appid_t     application_id;

Argument application_id is the key returned by the RV_IBC_REGISTER ioctl. A registration must be done before the RV_IBC_UNREGISTER ioctl can be used.

On failure, possible values returned in errno are:


Application is not registered.


IBC deliver or unfreeze pending.