summaryrefslogtreecommitdiffstats
path: root/source4/ntvfs/posix/pvfs_setfileinfo.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2005-03-05 22:50:13 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:10:58 -0500
commita52a6f1c425335a4154fcd0d8f1c45f6e387ce53 (patch)
tree7e1f273af10e4480dac7a955e716db6cf2857b28 /source4/ntvfs/posix/pvfs_setfileinfo.c
parent2f9e1650f9fe5a17a1f8d29f1ae4b04c33a91190 (diff)
downloadsamba-a52a6f1c425335a4154fcd0d8f1c45f6e387ce53.tar.gz
samba-a52a6f1c425335a4154fcd0d8f1c45f6e387ce53.tar.xz
samba-a52a6f1c425335a4154fcd0d8f1c45f6e387ce53.zip
r5666: winxp will use a NTTIME of -1 to mean "don't change" in setfileinfo
basic_info. Add null_nttime() as the equivalent of the existing null_time() call for cheecking for valid NTTIME values (This used to be commit 439ce2efbf7d2ba9b17d6b4bfaf651e781140715)
Diffstat (limited to 'source4/ntvfs/posix/pvfs_setfileinfo.c')
-rw-r--r--source4/ntvfs/posix/pvfs_setfileinfo.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/source4/ntvfs/posix/pvfs_setfileinfo.c b/source4/ntvfs/posix/pvfs_setfileinfo.c
index 9bc51d1ef4..31a60fac18 100644
--- a/source4/ntvfs/posix/pvfs_setfileinfo.c
+++ b/source4/ntvfs/posix/pvfs_setfileinfo.c
@@ -301,18 +301,18 @@ NTSTATUS pvfs_setfileinfo(struct ntvfs_module_context *ntvfs,
case RAW_SFILEINFO_BASIC_INFO:
case RAW_SFILEINFO_BASIC_INFORMATION:
- if (info->basic_info.in.create_time) {
+ if (!null_nttime(info->basic_info.in.create_time)) {
newstats.dos.create_time = info->basic_info.in.create_time;
}
- if (info->basic_info.in.access_time) {
+ if (!null_nttime(info->basic_info.in.access_time)) {
newstats.dos.access_time = info->basic_info.in.access_time;
}
- if (info->basic_info.in.write_time) {
+ if (!null_nttime(info->basic_info.in.write_time)) {
newstats.dos.write_time = info->basic_info.in.write_time;
newstats.dos.flags |= XATTR_ATTRIB_FLAG_STICKY_WRITE_TIME;
h->sticky_write_time = True;
}
- if (info->basic_info.in.change_time) {
+ if (!null_nttime(info->basic_info.in.change_time)) {
newstats.dos.change_time = info->basic_info.in.change_time;
}
if (info->basic_info.in.attrib != 0) {
@@ -490,16 +490,16 @@ NTSTATUS pvfs_setpathinfo(struct ntvfs_module_context *ntvfs,
case RAW_SFILEINFO_BASIC_INFO:
case RAW_SFILEINFO_BASIC_INFORMATION:
- if (info->basic_info.in.create_time) {
+ if (!null_nttime(info->basic_info.in.create_time)) {
newstats.dos.create_time = info->basic_info.in.create_time;
}
- if (info->basic_info.in.access_time) {
+ if (!null_nttime(info->basic_info.in.access_time)) {
newstats.dos.access_time = info->basic_info.in.access_time;
}
- if (info->basic_info.in.write_time) {
+ if (!null_nttime(info->basic_info.in.write_time)) {
newstats.dos.write_time = info->basic_info.in.write_time;
}
- if (info->basic_info.in.change_time) {
+ if (!null_nttime(info->basic_info.in.change_time)) {
newstats.dos.change_time = info->basic_info.in.change_time;
}
if (info->basic_info.in.attrib != 0) {