From: Jeremy Allison Date: Wed, 16 Mar 2005 23:32:42 +0000 (+0000) Subject: r5836: Correct fix for OS/2 bug #2335. The error return code in this case is protocol X-Git-Tag: samba-misc-tags/initial-v3-0-unstable~5116 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=712ef86ac008524866615e670db7659ea674fefb;p=thirdparty%2Fsamba.git r5836: Correct fix for OS/2 bug #2335. The error return code in this case is protocol level dependent. Jeremy. --- diff --git a/source/smbd/trans2.c b/source/smbd/trans2.c index e4e1243d68e..7137c4b5f5a 100644 --- a/source/smbd/trans2.c +++ b/source/smbd/trans2.c @@ -1485,12 +1485,18 @@ close_if_end = %d requires_resume_key = %d level = 0x%x, max_data_bytes = %d\n", /* * If there are no matching entries we must return ERRDOS/ERRbadfile - - * from observation of NT. + * from observation of NT. NB. This changes to ERRDOS,ERRnofiles if + * the protocol level is less than NT1. Tested with smbclient. JRA. + * This should fix the OS/2 client bug #2335. */ if(numentries == 0) { dptr_close(&dptr_num); - return ERROR_DOS(ERRDOS,ERRbadfile); + if (protocol < PROTOCOL_NT1) { + return ERROR_DOS(ERRDOS,ERRnofiles); + } else { + return ERROR_BOTH(NT_STATUS_NO_SUCH_FILE,ERRDOS,ERRbadfile); + } } /* At this point pdata points to numentries directory entries. */