spc-kiosk-pb/Library/FluentFTP/Proxy/FtpClientUserAtHostProxy.cs
2019-06-16 14:12:09 +09:00

26 lines
954 B
C#

namespace FluentFTP.Proxy {
/// <summary> A FTP client with a user@host proxy identification. </summary>
public class FtpClientUserAtHostProxy : FtpClientProxy {
/// <summary> A FTP client with a user@host proxy identification. </summary>
/// <param name="proxy">Proxy information</param>
public FtpClientUserAtHostProxy(ProxyInfo proxy)
: base(proxy) {
ConnectionType = "User@Host";
}
/// <summary> FTP Create. </summary>
protected override FtpClient Create() {
return new FtpClientUserAtHostProxy(Proxy);
}
/// <summary> Redefine the first dialog: auth with proxy information </summary>
protected override void Handshake() {
// Proxy authentication eventually needed.
if (Proxy.Credentials != null)
Authenticate(Proxy.Credentials.UserName, Proxy.Credentials.Password);
// Connection USER@Host meens to change user name to add host.
Credentials.UserName = Credentials.UserName + "@" + Host;
}
}
}