mirror of
https://github.com/TalAloni/SMBLibrary.git
synced 2025-04-30 02:37:49 +02:00
SMBServer: Moved socket parameters to the Start method
This commit is contained in:
parent
c93bb66152
commit
f4fa70a280
2 changed files with 17 additions and 18 deletions
|
@ -27,43 +27,43 @@ namespace SMBLibrary.Server
|
||||||
private ShareCollection m_shares; // e.g. Shared folders
|
private ShareCollection m_shares; // e.g. Shared folders
|
||||||
private GSSProvider m_securityProvider;
|
private GSSProvider m_securityProvider;
|
||||||
private NamedPipeShare m_services; // Named pipes
|
private NamedPipeShare m_services; // Named pipes
|
||||||
|
private Guid m_serverGuid;
|
||||||
|
|
||||||
private IPAddress m_serverAddress;
|
private IPAddress m_serverAddress;
|
||||||
private SMBTransportType m_transport;
|
private SMBTransportType m_transport;
|
||||||
private bool m_enableSMB1;
|
private bool m_enableSMB1;
|
||||||
private bool m_enableSMB2;
|
private bool m_enableSMB2;
|
||||||
|
|
||||||
private Socket m_listenerSocket;
|
private Socket m_listenerSocket;
|
||||||
private bool m_listening;
|
private bool m_listening;
|
||||||
private Guid m_serverGuid;
|
|
||||||
private DateTime m_serverStartTime;
|
private DateTime m_serverStartTime;
|
||||||
|
|
||||||
public event EventHandler<LogEntry> OnLogEntry;
|
public event EventHandler<LogEntry> OnLogEntry;
|
||||||
|
|
||||||
public SMBServer(ShareCollection shares, GSSProvider securityProvider, IPAddress serverAddress, SMBTransportType transport) : this(shares, securityProvider, serverAddress, transport, true, true)
|
public SMBServer(ShareCollection shares, GSSProvider securityProvider)
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public SMBServer(ShareCollection shares, GSSProvider securityProvider, IPAddress serverAddress, SMBTransportType transport, bool enableSMB1, bool enableSMB2)
|
|
||||||
{
|
{
|
||||||
m_shares = shares;
|
m_shares = shares;
|
||||||
m_securityProvider = securityProvider;
|
m_securityProvider = securityProvider;
|
||||||
m_serverAddress = serverAddress;
|
|
||||||
m_serverGuid = Guid.NewGuid();
|
|
||||||
m_serverStartTime = DateTime.Now;
|
|
||||||
m_transport = transport;
|
|
||||||
m_enableSMB1 = enableSMB1;
|
|
||||||
m_enableSMB2 = enableSMB2;
|
|
||||||
|
|
||||||
m_services = new NamedPipeShare(shares.ListShares());
|
m_services = new NamedPipeShare(shares.ListShares());
|
||||||
|
m_serverGuid = Guid.NewGuid();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Start(IPAddress serverAddress, SMBTransportType transport)
|
||||||
|
{
|
||||||
|
Start(serverAddress, transport, true, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <exception cref="System.Net.Sockets.SocketException"></exception>
|
/// <exception cref="System.Net.Sockets.SocketException"></exception>
|
||||||
public void Start()
|
public void Start(IPAddress serverAddress, SMBTransportType transport, bool enableSMB1, bool enableSMB2)
|
||||||
{
|
{
|
||||||
if (!m_listening)
|
if (!m_listening)
|
||||||
{
|
{
|
||||||
Log(Severity.Information, "Starting server");
|
Log(Severity.Information, "Starting server");
|
||||||
|
m_serverAddress = serverAddress;
|
||||||
|
m_transport = transport;
|
||||||
|
m_enableSMB1 = enableSMB1;
|
||||||
|
m_enableSMB2 = enableSMB2;
|
||||||
m_listening = true;
|
m_listening = true;
|
||||||
|
m_serverStartTime = DateTime.Now;
|
||||||
|
|
||||||
m_listenerSocket = new Socket(m_serverAddress.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
|
m_listenerSocket = new Socket(m_serverAddress.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
|
||||||
int port = (m_transport == SMBTransportType.DirectTCPTransport ? DirectTCPPort : NetBiosOverTCPPort);
|
int port = (m_transport == SMBTransportType.DirectTCPTransport ? DirectTCPPort : NetBiosOverTCPPort);
|
||||||
|
|
|
@ -84,7 +84,6 @@ namespace SMBServer
|
||||||
authenticationMechanism = new IndependentNTLMAuthenticationProvider(users.GetUserPassword);
|
authenticationMechanism = new IndependentNTLMAuthenticationProvider(users.GetUserPassword);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
ShareCollection shares;
|
ShareCollection shares;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
@ -97,12 +96,12 @@ namespace SMBServer
|
||||||
}
|
}
|
||||||
|
|
||||||
GSSProvider securityProvider = new GSSProvider(authenticationMechanism);
|
GSSProvider securityProvider = new GSSProvider(authenticationMechanism);
|
||||||
m_server = new SMBLibrary.Server.SMBServer(shares, securityProvider, serverAddress, transportType, chkSMB1.Checked, chkSMB2.Checked);
|
m_server = new SMBLibrary.Server.SMBServer(shares, securityProvider);
|
||||||
m_server.OnLogEntry += new EventHandler<LogEntry>(Server_OnLogEntry);
|
m_server.OnLogEntry += new EventHandler<LogEntry>(Server_OnLogEntry);
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
m_server.Start();
|
m_server.Start(serverAddress, transportType, chkSMB1.Checked, chkSMB2.Checked);
|
||||||
if (transportType == SMBTransportType.NetBiosOverTCP)
|
if (transportType == SMBTransportType.NetBiosOverTCP)
|
||||||
{
|
{
|
||||||
if (serverAddress.AddressFamily == AddressFamily.InterNetwork && !IPAddress.Equals(serverAddress, IPAddress.Any))
|
if (serverAddress.AddressFamily == AddressFamily.InterNetwork && !IPAddress.Equals(serverAddress, IPAddress.Any))
|
||||||
|
|
Loading…
Add table
Reference in a new issue