summaryrefslogtreecommitdiff
path: root/internal/toggledlog
diff options
context:
space:
mode:
Diffstat (limited to 'internal/toggledlog')
-rw-r--r--internal/toggledlog/log.go103
-rw-r--r--internal/toggledlog/log_go1.4.go12
-rw-r--r--internal/toggledlog/log_go1.5.go17
3 files changed, 0 insertions, 132 deletions
diff --git a/internal/toggledlog/log.go b/internal/toggledlog/log.go
deleted file mode 100644
index 30fab18..0000000
--- a/internal/toggledlog/log.go
+++ /dev/null
@@ -1,103 +0,0 @@
-package toggledlog
-
-import (
- "encoding/json"
- "fmt"
- "log"
- "os"
-
- "golang.org/x/crypto/ssh/terminal"
-)
-
-const (
- ProgramName = "gocryptfs"
- wpanicMsg = "-wpanic turns this warning into a panic: "
-)
-
-// Escape sequences for terminal colors. These will be empty strings if stdout
-// is not a terminal.
-var ColorReset, ColorGrey, ColorRed, ColorGreen, ColorYellow string
-
-func JSONDump(obj interface{}) string {
- b, err := json.MarshalIndent(obj, "", "\t")
- if err != nil {
- return err.Error()
- } else {
- return string(b)
- }
-}
-
-// toggledLogger - a Logger than can be enabled and disabled
-type toggledLogger struct {
- // Enable or disable output
- Enabled bool
- // Panic after logging a message, useful in regression tests
- Wpanic bool
- // Private prefix and postfix are used for coloring
- prefix string
- postfix string
-
- *log.Logger
-}
-
-func (l *toggledLogger) Printf(format string, v ...interface{}) {
- if !l.Enabled {
- return
- }
- l.Logger.Printf(l.prefix + fmt.Sprintf(format, v...) + l.postfix)
- if l.Wpanic {
- l.Logger.Panic(wpanicMsg + fmt.Sprintf(format, v...))
- }
-}
-func (l *toggledLogger) Println(v ...interface{}) {
- if !l.Enabled {
- return
- }
- l.Logger.Println(l.prefix + fmt.Sprint(v...) + l.postfix)
- if l.Wpanic {
- l.Logger.Panic(wpanicMsg + fmt.Sprint(v...))
- }
-}
-
-// Debug messages
-// Can be enabled by passing "-d"
-var Debug *toggledLogger
-
-// Informational message
-// Can be disabled by passing "-q"
-var Info *toggledLogger
-
-// A warning, meaning nothing serious by itself but might indicate problems.
-// Passing "-wpanic" will make this function panic after printing the message.
-var Warn *toggledLogger
-
-// Fatal error, we are about to exit
-var Fatal *toggledLogger
-
-func init() {
- if terminal.IsTerminal(int(os.Stdout.Fd())) {
- ColorReset = "\033[0m"
- ColorGrey = "\033[2m"
- ColorRed = "\033[31m"
- ColorGreen = "\033[32m"
- ColorYellow = "\033[33m"
- }
-
- Debug = &toggledLogger{
- Logger: log.New(os.Stdout, "", 0),
- }
- Info = &toggledLogger{
- Enabled: true,
- Logger: log.New(os.Stdout, "", 0),
- }
- Warn = &toggledLogger{
- Enabled: true,
- Logger: log.New(os.Stderr, "", 0),
- }
- Fatal = &toggledLogger{
- Enabled: true,
- Logger: log.New(os.Stderr, "", 0),
- prefix: ColorRed,
- postfix: ColorReset,
- }
-}
diff --git a/internal/toggledlog/log_go1.4.go b/internal/toggledlog/log_go1.4.go
deleted file mode 100644
index 4cdba44..0000000
--- a/internal/toggledlog/log_go1.4.go
+++ /dev/null
@@ -1,12 +0,0 @@
-// +build !go1.5
-// = go 1.4 or lower
-
-package toggledlog
-
-import (
- "log/syslog"
-)
-
-func (l *toggledLogger) SwitchToSyslog(p syslog.Priority) {
- Debug.Printf("Cannot switch to syslog - need Go 1.5 or higher")
-}
diff --git a/internal/toggledlog/log_go1.5.go b/internal/toggledlog/log_go1.5.go
deleted file mode 100644
index e8e71f9..0000000
--- a/internal/toggledlog/log_go1.5.go
+++ /dev/null
@@ -1,17 +0,0 @@
-// +build go1.5
-// = go 1.5 or higher
-
-package toggledlog
-
-import (
- "log/syslog"
-)
-
-func (l *toggledLogger) SwitchToSyslog(p syslog.Priority) {
- w, err := syslog.New(p, ProgramName)
- if err != nil {
- Warn.Printf("Cannot switch 0x%02x to syslog: %v", p, err)
- } else {
- l.SetOutput(w)
- }
-}