pub struct ValidateNegotiateInfoRequest {
pub capabilities: u32,
pub guid: Guid,
pub security_mode: NegotiateSecurityMode,
pub dialects: Vec<Dialect>,
}Expand description
Request packet for validating a previous SMB 2 NEGOTIATE. Used in FSCTL_VALIDATE_NEGOTIATE_INFO to ensure the negotiation was not tampered with. Valid for clients and servers implementing SMB 3.0 and SMB 3.0.2 dialects.
Reference: MS-SMB2 2.2.31.4
Fields§
§capabilities: u32The capabilities of the client.
guid: GuidThe ClientGuid of the client.
security_mode: NegotiateSecurityModeThe security mode of the client.
dialects: Vec<Dialect>The list of SMB2 dialects supported by the client. These entries should contain only the dialect values defined in the negotiate request.
Trait Implementations§
Source§impl BinRead for ValidateNegotiateInfoRequest
impl BinRead for ValidateNegotiateInfoRequest
Source§fn read_options<R: Read + Seek>(
__binrw_generated_var_reader: &mut R,
__binrw_generated_var_endian: Endian,
__binrw_generated_var_arguments: Self::Args<'_>,
) -> BinResult<Self>
fn read_options<R: Read + Seek>( __binrw_generated_var_reader: &mut R, __binrw_generated_var_endian: Endian, __binrw_generated_var_arguments: Self::Args<'_>, ) -> BinResult<Self>
Source§fn read_be<R>(reader: &mut R) -> Result<Self, Error>
fn read_be<R>(reader: &mut R) -> Result<Self, Error>
Read
Self from the reader using default arguments and assuming
big-endian byte order. Read moreSource§fn read_le<R>(reader: &mut R) -> Result<Self, Error>
fn read_le<R>(reader: &mut R) -> Result<Self, Error>
Read
Self from the reader using default arguments and assuming
little-endian byte order. Read moreSource§fn read_ne<R>(reader: &mut R) -> Result<Self, Error>
fn read_ne<R>(reader: &mut R) -> Result<Self, Error>
Read
T from the reader assuming native-endian byte order. Read moreSource§fn read_be_args<R>(reader: &mut R, args: Self::Args<'_>) -> Result<Self, Error>
fn read_be_args<R>(reader: &mut R, args: Self::Args<'_>) -> Result<Self, Error>
Read
Self from the reader, assuming big-endian byte order, using the
given arguments. Read moreSource§impl BinWrite for ValidateNegotiateInfoRequest
impl BinWrite for ValidateNegotiateInfoRequest
Source§fn write_options<W: Write + Seek>(
&self,
__binrw_generated_var_writer: &mut W,
__binrw_generated_var_endian: Endian,
__binrw_generated_var_arguments: Self::Args<'_>,
) -> BinResult<()>
fn write_options<W: Write + Seek>( &self, __binrw_generated_var_writer: &mut W, __binrw_generated_var_endian: Endian, __binrw_generated_var_arguments: Self::Args<'_>, ) -> BinResult<()>
Source§fn write_be<W>(&self, writer: &mut W) -> Result<(), Error>
fn write_be<W>(&self, writer: &mut W) -> Result<(), Error>
Write
Self to the writer assuming big-endian byte order. Read moreSource§fn write_le<W>(&self, writer: &mut W) -> Result<(), Error>
fn write_le<W>(&self, writer: &mut W) -> Result<(), Error>
Write
Self to the writer assuming little-endian byte order. Read moreSource§fn write_ne<W>(&self, writer: &mut W) -> Result<(), Error>
fn write_ne<W>(&self, writer: &mut W) -> Result<(), Error>
Write
Self to the writer assuming native-endian byte order. Read moreSource§fn write_be_args<W>(
&self,
writer: &mut W,
args: Self::Args<'_>,
) -> Result<(), Error>
fn write_be_args<W>( &self, writer: &mut W, args: Self::Args<'_>, ) -> Result<(), Error>
Write
Self to the writer, assuming big-endian byte order, using the
given arguments. Read moreSource§impl Debug for ValidateNegotiateInfoRequest
impl Debug for ValidateNegotiateInfoRequest
Source§impl From<ValidateNegotiateInfoRequest> for IoctlReqData
impl From<ValidateNegotiateInfoRequest> for IoctlReqData
Source§fn from(model: ValidateNegotiateInfoRequest) -> IoctlReqData
fn from(model: ValidateNegotiateInfoRequest) -> IoctlReqData
Converts to this type from the input type.
Source§impl FsctlRequest for ValidateNegotiateInfoRequest
impl FsctlRequest for ValidateNegotiateInfoRequest
const FSCTL_CODE: FsctlCodes = FsctlCodes::ValidateNegotiateInfo
type Response = ValidateNegotiateInfoResponse
Source§impl IoctlRequestContent for ValidateNegotiateInfoRequest
impl IoctlRequestContent for ValidateNegotiateInfoRequest
Source§fn get_bin_size(&self) -> u32
fn get_bin_size(&self) -> u32
Returns the size of the buffer for IOCTL requests – the size of the ENCODED data, in bytes.
Source§impl PartialEq for ValidateNegotiateInfoRequest
impl PartialEq for ValidateNegotiateInfoRequest
Source§fn eq(&self, other: &ValidateNegotiateInfoRequest) -> bool
fn eq(&self, other: &ValidateNegotiateInfoRequest) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Eq for ValidateNegotiateInfoRequest
impl StructuralPartialEq for ValidateNegotiateInfoRequest
Auto Trait Implementations§
impl Freeze for ValidateNegotiateInfoRequest
impl RefUnwindSafe for ValidateNegotiateInfoRequest
impl Send for ValidateNegotiateInfoRequest
impl Sync for ValidateNegotiateInfoRequest
impl Unpin for ValidateNegotiateInfoRequest
impl UnwindSafe for ValidateNegotiateInfoRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more