[jcifs] Re: Status Codes.

Andrew Bartlett abartlet at samba.org
Thu Jul 11 09:42:12 EST 2002

"Christopher R. Hertel" wrote:
> I am working on figuring out error codes in SMB.  Anyone with a quick
> rundown, I'd appreciate it...
> I note that in the Leach/Naik draft it says that the NT LM 0.12 dialect
> can return 32-bit error codes, depending upon the state of one of the
> capabilities bits.  It then goes on to specify only DOS error class/error
> code combinations.

My understanding is that MS assured people 'NTSTATUS is only for NT ->
NT, you just won't need them' ;-)

> Another oddity... In the older X/Open docs, as well as the SNIA CIFS doc,
> there is a small amount of discussion about dialects which support OS/2
> error codes (also 32-bit).
> So, I'm wondering...
> - What is the relationship (if any) between OS/2 status codes and the
>   Win32 32-bit status codes?

Win32 32-bit status codes are different to NTSTATUS codes.  We use
WERRORs in the printing subsystem, and have conversion tables for them

On the subject of error conversion:  The 'NTSTATUS -> DOS' table is
pretty solid - due to it being extracted almost directly from an NT
table (over the wire, naturally).  The other tables are much less robust
- and a glance there are certainly error codes that don't mach up.  DOS
-> NTSTATUS in particular.  

(We need bright ideas on extracting them).

> - Are the 32-bit codes preferred?  In the Samba code, I note one place in
>   which 32-bit error codes are forced (in smbd/error.c) under certain
>   circumstances.

Some clients expect NTSTATUS error codes on some packets - and don't
behave when they don't get them.

They also provide a *much* richer functionality and allow a much greater
range of errors to be expressed.

> - Is the list of error codes in include/nterr.h the best available
>   (probably)?

A newer list could probably be generated by the same mechinism.  The
best available is found on Win2k - but we like keeping at arms length
from that stuff.

Andrew Bartlett

Andrew Bartlett                                 abartlet at pcug.org.au
Manager, Authentication Subsystems, Samba Team  abartlet at samba.org
Student Network Administrator, Hawker College   abartlet at hawkerc.net
http://samba.org     http://build.samba.org     http://hawkerc.net

More information about the jcifs mailing list