return ret;
}
-static int ceph_snap_gmt_mknod(vfs_handle_struct *handle,
- const struct smb_filename *csmb_fname,
- mode_t mode,
- SMB_DEV_T dev)
-{
- time_t timestamp = 0;
- int ret;
-
- ret = ceph_snap_gmt_strip_snapshot(handle,
- csmb_fname->base_name,
- ×tamp, NULL, 0);
- if (ret < 0) {
- errno = -ret;
- return -1;
- }
- if (timestamp != 0) {
- errno = EROFS;
- return -1;
- }
- return SMB_VFS_NEXT_MKNOD(handle, csmb_fname, mode, dev);
-}
-
static int ceph_snap_gmt_mknodat(vfs_handle_struct *handle,
files_struct *dirfsp,
const struct smb_filename *csmb_fname,
.chdir_fn = ceph_snap_gmt_chdir,
.ntimes_fn = ceph_snap_gmt_ntimes,
.readlink_fn = ceph_snap_gmt_readlink,
- .mknod_fn = ceph_snap_gmt_mknod,
.mknodat_fn = ceph_snap_gmt_mknodat,
.realpath_fn = ceph_snap_gmt_realpath,
.get_nt_acl_fn = ceph_snap_gmt_get_nt_acl,