diff options
-rw-r--r-- | source3/smbd/trans2.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c index 77cd43f04f..d5c445c5f3 100644 --- a/source3/smbd/trans2.c +++ b/source3/smbd/trans2.c @@ -2076,6 +2076,9 @@ static int call_trans2setfilepathinfo(connection_struct *conn, case SMB_INFO_STANDARD: case SMB_INFO_QUERY_EA_SIZE: { + if (total_data < l1_cbFile+4) + return(ERROR_DOS(ERRDOS,ERRinvalidparam)); + /* access time */ tvs.actime = make_unix_date2(pdata+l1_fdateLastAccess); @@ -2084,6 +2087,7 @@ static int call_trans2setfilepathinfo(connection_struct *conn, mode = SVAL(pdata,l1_attrFile); size = IVAL(pdata,l1_cbFile); + break; } |