/// Remove a message queue.
///
/// # Examples
///
/// ```
/// let name = "nc-mq-unlink";
/// let ret = unsafe {
/// nc::mq_open(
/// name,
/// nc::O_CREAT | nc::O_RDWR,
/// (nc::S_IRUSR | nc::S_IWUSR) as nc::umode_t,
/// None,
/// )
/// };
/// assert!(ret.is_ok());
/// let mq_id = ret.unwrap();
/// let ret = unsafe { nc::close(mq_id) };
/// assert!(ret.is_ok());
/// let ret = unsafe { nc::mq_unlink(name) };
/// assert!(ret.is_ok());
/// ```
pub unsafe fn mq_unlink<P: AsRef<Path>>(name: P) -> Result<(), Errno> {
let name = CString::new(name.as_ref());
let name_ptr = name.as_ptr() as usize;
syscall1(SYS_MQ_UNLINK, name_ptr).map(drop)
}