forked from TrueCloudLab/rclone
Optionally disable gzip compression on downloads with --no-gzip-encoding
- fixes #353
This commit is contained in:
parent
280ac26464
commit
dfc7cd97a3
2 changed files with 23 additions and 0 deletions
|
@ -392,6 +392,16 @@ if you are reading and writing to an OS X filing system this will be
|
||||||
|
|
||||||
This command line flag allows you to override that computed default.
|
This command line flag allows you to override that computed default.
|
||||||
|
|
||||||
|
### --no-gzip-encoding ###
|
||||||
|
|
||||||
|
Don't set `Accept-Encoding: gzip`. This means that rclone won't ask
|
||||||
|
the server for compressed files automatically. Useful if you've set
|
||||||
|
the server to return files with `Content-Encoding: gzip` but you
|
||||||
|
uploaded compressed files.
|
||||||
|
|
||||||
|
There is no need to set this in normal operation, and doing so will
|
||||||
|
decrease the network transfer efficiency of rclone.
|
||||||
|
|
||||||
### -q, --quiet ###
|
### -q, --quiet ###
|
||||||
|
|
||||||
Normally rclone outputs stats and a completion message. If you set
|
Normally rclone outputs stats and a completion message. If you set
|
||||||
|
|
13
fs/config.go
13
fs/config.go
|
@ -82,6 +82,7 @@ var (
|
||||||
deleteAfter = pflag.BoolP("delete-after", "", false, "When synchronizing, delete files on destination after transfering")
|
deleteAfter = pflag.BoolP("delete-after", "", false, "When synchronizing, delete files on destination after transfering")
|
||||||
lowLevelRetries = pflag.IntP("low-level-retries", "", 10, "Number of low level retries to do.")
|
lowLevelRetries = pflag.IntP("low-level-retries", "", 10, "Number of low level retries to do.")
|
||||||
updateOlder = pflag.BoolP("update", "u", false, "Skip files that are newer on the destination.")
|
updateOlder = pflag.BoolP("update", "u", false, "Skip files that are newer on the destination.")
|
||||||
|
noGzip = pflag.BoolP("no-gzip-encoding", "", false, "Don't set Accept-Encoding: gzip.")
|
||||||
bwLimit SizeSuffix
|
bwLimit SizeSuffix
|
||||||
|
|
||||||
// Key to use for password en/decryption.
|
// Key to use for password en/decryption.
|
||||||
|
@ -201,6 +202,7 @@ type ConfigInfo struct {
|
||||||
DeleteAfter bool // Delete after successful transfer.
|
DeleteAfter bool // Delete after successful transfer.
|
||||||
LowLevelRetries int
|
LowLevelRetries int
|
||||||
UpdateOlder bool // Skip files that are newer on the destination
|
UpdateOlder bool // Skip files that are newer on the destination
|
||||||
|
NoGzip bool // Disable compression
|
||||||
}
|
}
|
||||||
|
|
||||||
// Transport returns an http.RoundTripper with the correct timeouts
|
// Transport returns an http.RoundTripper with the correct timeouts
|
||||||
|
@ -235,6 +237,16 @@ func (ci *ConfigInfo) Transport() http.RoundTripper {
|
||||||
// In this mode, TLS is susceptible to man-in-the-middle attacks.
|
// In this mode, TLS is susceptible to man-in-the-middle attacks.
|
||||||
// This should be used only for testing.
|
// This should be used only for testing.
|
||||||
TLSClientConfig: &tls.Config{InsecureSkipVerify: ci.InsecureSkipVerify},
|
TLSClientConfig: &tls.Config{InsecureSkipVerify: ci.InsecureSkipVerify},
|
||||||
|
|
||||||
|
// DisableCompression, if true, prevents the Transport from
|
||||||
|
// requesting compression with an "Accept-Encoding: gzip"
|
||||||
|
// request header when the Request contains no existing
|
||||||
|
// Accept-Encoding value. If the Transport requests gzip on
|
||||||
|
// its own and gets a gzipped response, it's transparently
|
||||||
|
// decoded in the Response.Body. However, if the user
|
||||||
|
// explicitly requested gzip it is not automatically
|
||||||
|
// uncompressed.
|
||||||
|
DisableCompression: *noGzip,
|
||||||
}
|
}
|
||||||
if ci.DumpHeaders || ci.DumpBodies {
|
if ci.DumpHeaders || ci.DumpBodies {
|
||||||
return NewLoggedTransport(t, ci.DumpBodies)
|
return NewLoggedTransport(t, ci.DumpBodies)
|
||||||
|
@ -291,6 +303,7 @@ func LoadConfig() {
|
||||||
Config.InsecureSkipVerify = *skipVerify
|
Config.InsecureSkipVerify = *skipVerify
|
||||||
Config.LowLevelRetries = *lowLevelRetries
|
Config.LowLevelRetries = *lowLevelRetries
|
||||||
Config.UpdateOlder = *updateOlder
|
Config.UpdateOlder = *updateOlder
|
||||||
|
Config.NoGzip = *noGzip
|
||||||
|
|
||||||
ConfigPath = *configFile
|
ConfigPath = *configFile
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue