You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
964 B
30 lines
964 B
package main |
|
|
|
import ( |
|
"fmt" |
|
"os" |
|
"strings" |
|
|
|
"github.com/rfjakob/gocryptfs/v2/internal/configfile" |
|
"github.com/rfjakob/gocryptfs/v2/internal/exitcodes" |
|
) |
|
|
|
// info pretty-prints the contents of the config file at "filename" for human |
|
// consumption, stripping out sensitive data. |
|
// This is called when you pass the "-info" option. |
|
func info(filename string) { |
|
cf, err := configfile.Load(filename) |
|
if err != nil { |
|
fmt.Printf("Loading config file failed: %v\n", err) |
|
os.Exit(exitcodes.LoadConf) |
|
} |
|
s := cf.ScryptObject |
|
algo, _ := cf.ContentEncryption() |
|
// Pretty-print |
|
fmt.Printf("Creator: %s\n", cf.Creator) |
|
fmt.Printf("FeatureFlags: %s\n", strings.Join(cf.FeatureFlags, " ")) |
|
fmt.Printf("EncryptedKey: %dB\n", len(cf.EncryptedKey)) |
|
fmt.Printf("ScryptObject: Salt=%dB N=%d R=%d P=%d KeyLen=%d\n", |
|
len(s.Salt), s.N, s.R, s.P, s.KeyLen) |
|
fmt.Printf("contentEncryption: %s\n", algo.Algo) // lowercase because not in JSON |
|
}
|
|
|