mirror of
https://github.com/drakkan/sftpgo.git
synced 2025-12-07 06:40:54 +03:00
transfer logs: add FTP mode
This commit is contained in:
@@ -30,6 +30,19 @@ type Connection struct {
|
||||
clientContext ftpserver.ClientContext
|
||||
}
|
||||
|
||||
func (c *Connection) getFTPMode() string {
|
||||
if c.clientContext == nil {
|
||||
return ""
|
||||
}
|
||||
switch c.clientContext.GetLastDataChannel() {
|
||||
case ftpserver.DataChannelActive:
|
||||
return "active"
|
||||
case ftpserver.DataChannelPassive:
|
||||
return "passive"
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
// GetClientVersion returns the connected client's version.
|
||||
// It returns "Unknown" if the client does not advertise its
|
||||
// version
|
||||
@@ -325,6 +338,7 @@ func (c *Connection) downloadFile(fs vfs.Fs, fsPath, ftpPath string, offset int6
|
||||
|
||||
baseTransfer := common.NewBaseTransfer(file, c.BaseConnection, cancelFn, fsPath, fsPath, ftpPath, common.TransferDownload,
|
||||
0, 0, 0, false, fs)
|
||||
baseTransfer.SetFtpMode(c.getFTPMode())
|
||||
t := newTransfer(baseTransfer, nil, r, offset)
|
||||
|
||||
return t, nil
|
||||
@@ -390,6 +404,7 @@ func (c *Connection) handleFTPUploadToNewFile(fs vfs.Fs, resolvedPath, filePath,
|
||||
|
||||
baseTransfer := common.NewBaseTransfer(file, c.BaseConnection, cancelFn, resolvedPath, filePath, requestPath,
|
||||
common.TransferUpload, 0, 0, maxWriteSize, true, fs)
|
||||
baseTransfer.SetFtpMode(c.getFTPMode())
|
||||
t := newTransfer(baseTransfer, w, nil, 0)
|
||||
|
||||
return t, nil
|
||||
@@ -466,6 +481,7 @@ func (c *Connection) handleFTPUploadToExistingFile(fs vfs.Fs, flags int, resolve
|
||||
|
||||
baseTransfer := common.NewBaseTransfer(file, c.BaseConnection, cancelFn, resolvedPath, filePath, requestPath,
|
||||
common.TransferUpload, minWriteOffset, initialSize, maxWriteSize, false, fs)
|
||||
baseTransfer.SetFtpMode(c.getFTPMode())
|
||||
t := newTransfer(baseTransfer, w, nil, 0)
|
||||
|
||||
return t, nil
|
||||
|
||||
Reference in New Issue
Block a user