use std::sync::Arc;
use crate::dialects::DialectImpl;
use crate::packets::guid::Guid;
use crate::packets::smb2::*;
use binrw::prelude::*;
use super::ConnectionConfig;
#[derive(Debug)]
pub struct NegotiatedProperties {
pub server_guid: Guid,
pub caps: GlobalCapabilities,
pub max_transact_size: u32,
pub max_read_size: u32,
pub max_write_size: u32,
pub auth_buffer: Vec<u8>,
pub signing_algo: Option<SigningAlgorithmId>,
pub encryption_cipher: Option<EncryptionCipher>,
pub compression: Option<CompressionCapabilities>,
pub dialect_rev: Dialect,
}
#[derive(Debug)]
pub struct ConnectionInfo {
pub negotiation: NegotiatedProperties,
pub dialect: Arc<DialectImpl>,
pub config: ConnectionConfig,
}