// RemoveSnapshot removes a pool wide snapshot. func (pool *Pool) RemovePoolSnapshot(snapshotName string) error { name := C.CString(snapshotName) defer freeString(name) ret := C.rados_ioctx_snap_remove(pool.context, name) if err := toRadosError(ret); err != nil { err.Message = fmt.Sprintf("Unable to remove snapshot %s", snapshotName) return err } return nil }
func (r *RadosIoCtx) SnapRemove(snapname string) error { csnapname := C.CString(snapname) defer func() { C.free(unsafe.Pointer(csnapname)) }() cerr := C.rados_ioctx_snap_remove(*r.ctx, csnapname) if cerr < 0 { return errors.New("remove snap failed") } return nil }