1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-22 13:34:15 +03:00

libsmb: Make "struct smb2_lock_element" generally usable

This struct will be of interest when we add locking capabilities to
libcli/smb/smb2cli*

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
This commit is contained in:
Volker Lendecke 2019-03-25 15:43:49 +01:00 committed by Jeremy Allison
parent aac203907f
commit c05ff617cc
3 changed files with 34 additions and 6 deletions

32
libcli/smb/smb2_lock.h Normal file
View File

@ -0,0 +1,32 @@
/*
* Unix SMB/CIFS implementation.
*
* Copyright (C) Volker Lendecke 2019
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __LIBCLI_SMB_SMB2_LOCK_H__
#define __LIBCLI_SMB_SMB2_LOCK_H__
#include "replace.h"
struct smb2_lock_element {
uint64_t offset;
uint64_t length;
uint32_t flags;
uint32_t reserved;
};
#endif

View File

@ -26,6 +26,7 @@
#include "libcli/smb/smb2_constants.h"
#include "libcli/smb/smb2_create_blob.h"
#include "libcli/smb/smb2_lease.h"
#include "libcli/smb/smb2_lock.h"
#include "libcli/smb/smb2_signing.h"
#include "libcli/smb/smb_util.h"
#include "libcli/smb/smb_unix_ext.h"

View File

@ -2086,12 +2086,7 @@ union smb_lock {
uint16_t lock_count;
uint32_t lock_sequence;
/* struct smb2_handle handle; */
struct smb2_lock_element {
uint64_t offset;
uint64_t length;
uint32_t flags;
uint32_t reserved;
} *locks;
struct smb2_lock_element *locks;
} in;
struct {
/* static body buffer 4 (0x04) bytes */