summaryrefslogtreecommitdiff
path: root/source4/libcli/raw
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2008-05-27 16:43:36 +1000
committerAndrew Tridgell <tridge@samba.org>2008-05-27 16:43:36 +1000
commitcb36437db2d75e7facc91cf0089f2caa20bf0ca0 (patch)
tree5027cc712961400b15d0b519a7e8e30bdc909f21 /source4/libcli/raw
parentc400933c02632caf0f8113594f4b0cd2afbcaef4 (diff)
downloadsamba-cb36437db2d75e7facc91cf0089f2caa20bf0ca0.tar.gz
samba-cb36437db2d75e7facc91cf0089f2caa20bf0ca0.tar.bz2
samba-cb36437db2d75e7facc91cf0089f2caa20bf0ca0.zip
added support for the output fields of SMB2 close
(This used to be commit 2633bc749792c224acc73a2e4ca723404331c19c)
Diffstat (limited to 'source4/libcli/raw')
-rw-r--r--source4/libcli/raw/interfaces.h31
1 files changed, 25 insertions, 6 deletions
diff --git a/source4/libcli/raw/interfaces.h b/source4/libcli/raw/interfaces.h
index 36d8c3abb0..68ebc19bdb 100644
--- a/source4/libcli/raw/interfaces.h
+++ b/source4/libcli/raw/interfaces.h
@@ -1950,23 +1950,43 @@ union smb_lock {
enum smb_close_level {
RAW_CLOSE_CLOSE,
RAW_CLOSE_SPLCLOSE,
- RAW_CLOSE_SMB2
+ RAW_CLOSE_SMB2,
+ RAW_CLOSE_GENERIC,
};
-#define RAW_CLOSE_GENERIC RAW_CLOSE_CLOSE
-
/*
union for close() backend call
*/
union smb_close {
- /* SMBclose (and generic) interface */
+ /* generic interface */
struct {
enum smb_close_level level;
struct {
union smb_handle file;
time_t write_time;
+#define SMB2_CLOSE_FLAGS_FULL_INFORMATION (1<<0)
+ uint16_t flags; /* SMB2_CLOSE_FLAGS_* */
} in;
- } close, generic;
+ struct {
+ uint16_t flags;
+ NTTIME create_time;
+ NTTIME access_time;
+ NTTIME write_time;
+ NTTIME change_time;
+ uint64_t alloc_size;
+ uint64_t size;
+ uint32_t file_attr;
+ } out;
+ } generic;
+
+ /* SMBclose interface */
+ struct {
+ enum smb_close_level level;
+ struct {
+ union smb_handle file;
+ time_t write_time;
+ } in;
+ } close;
/* SMBsplclose interface - empty! */
struct {
@@ -1984,7 +2004,6 @@ union smb_close {
/* static body buffer 24 (0x18) bytes */
/* uint16_t buffer_code; 0x18 */
-#define SMB2_CLOSE_FLAGS_FULL_INFORMATION (1<<0)
uint16_t flags; /* SMB2_CLOSE_FLAGS_* */
uint32_t _pad;
} in;