Remaining set_saved_error_triple

Volker Lendecke Volker.Lendecke at SerNet.DE
Tue Aug 23 11:53:04 GMT 2005

Hi, Jeremy!

There's some set_saved_error_triple left:

reply.c, line 4836. This is in reply_copy. It says
set_saved_error_triple(ERRDOS, ERRbadpath, NT_STATUS_OK) which to me looks a
bit weird. If we negotiate DOS errors then we get an error, but for NT_STATUS
it is fine? Can this be replaced by
set_saved_ntstatus(NT_STATUS_OBJECT_PATH_NOT_FOUND) which would map to

The routine check_for_pipe sets set_saved_error_triple(ERRSRV, ERRaccess,
ERRSRV/ERRaccess. Is this just an oversight? I can't really see what
check_for_pipe does at all and haven't really been able to find how to trigger
something equivalent in W2k3.

Then the OS/2 .+,;=[]. check, here I'm waiting for input from Steve what OS/2
expects here.

open.c:1867, this one is nasty: It actually returns
NT_STATUS_OBJECT_NAME_COLLISION with 32-bit status codes and
ERRDOS/ERRfileexists with DOS error codes. The reverse mapping is correct, so
we might here use tridge's trick to embed DOS error codes in an NTSTATUS field
and if NTSTATUS is negotiated map the other way round. But this is more
intrusive I think...

open.c:1912 has set_saved_error_triple(0, 0, status). I would *assume* that
this could be converted to set_saved_error_ntstatus(status). What do you

That makes 3 dubious ones left: One where Steve might comment, one really
nasty one and one that might be a bug.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url :

More information about the samba-technical mailing list