level 261 findfirst

tridge at samba.org tridge at samba.org
Fri Nov 12 01:55:25 GMT 2004


Steve,

 > Also looks like Samba 4 header is wrong (unless I am misreading
 > something). 

you are :)

 >         struct {
 >                 uint32_t file_index;
 >                 NTTIME create_time;
 >                 NTTIME access_time;
 >                 NTTIME write_time;
 >                 NTTIME change_time;
 >                 uint64_t size;
 >                 uint64_t alloc_size;
 >                 uint32_t attrib;
 >                 uint32_t ea_size;
 >                 uint64_t file_id;
 >                 WIRE_STRING name;
 >         } id_full_directory_info;
 > 
 > 
 > Isn't that wrong or is there some magic that fixes the string len up and
 > puts it earlier in the frame?

The smb_interfaces.h header describes the API interface only, not the
wire format. It deliberately avoids describing the wire level
information as I didn't want the wire details to complicate the
API. Please read the "Interface Structures" section of the Samba4
programming guide for more on this design decision.

For core SMB functions the wire details are in libcli/raw/

All of these structures are fully tested using the RAW-* smbtorture
tests. I would be quite surprised if you find such a fundamental bug
in Samba4, given the extent of the test suites.

Cheers, Tridge


More information about the samba-technical mailing list