fix: gofmt/gocylo leftover from old PR (#610)

This commit is contained in:
James Read 2025-06-22 21:42:57 +01:00 committed by GitHub
parent 1ffdd93ddf
commit e38361f3d7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 27 additions and 27 deletions

View File

@ -81,6 +81,7 @@ func parseActionArguments(values map[string]string, action *config.Action, entit
return parsedShellCommand, nil
}
//gocyclo:ignore
func redactShellCommand(shellCommand string, arguments []config.ActionArgument, argumentValues map[string]string) string {
for _, arg := range arguments {
if arg.Type == "password" {
@ -92,7 +93,7 @@ func redactShellCommand(shellCommand string, arguments []config.ActionArgument,
}
if argValue == "" {
continue
continue
}
shellCommand = strings.ReplaceAll(shellCommand, argValue, "<redacted>")
@ -237,30 +238,29 @@ func typeSafetyCheckUrl(value string) error {
}
func mangleInvalidArgumentValues(req *ExecutionRequest) {
mangleInvalidDatetimeValues(req)
}
func mangleInvalidDatetimeValues(req *ExecutionRequest) {
for _, arg := range req.Action.Arguments {
if arg.Type == "datetime" {
value, exists := req.Arguments[arg.Name]
if !exists || value == "" {
continue
}
timestamp, err := time.Parse("2006-01-02T15:04", value)
if err == nil {
log.WithFields(log.Fields {
"arg": arg.Name,
"value": value,
"actionTitle": req.Action.Title,
}).Warnf("Mangled invalid datetime value without seconds to :00 seconds, this issue is commonly caused by Android browsers.")
req.Arguments[arg.Name] = timestamp.Format("2006-01-02T15:04:05")
}
mangleInvalidDatetimeValues(req, &arg)
}
}
}
func mangleInvalidDatetimeValues(req *ExecutionRequest, arg *config.ActionArgument) {
value, exists := req.Arguments[arg.Name]
if !exists || value == "" {
return
}
timestamp, err := time.Parse("2006-01-02T15:04", value)
if err == nil {
log.WithFields(log.Fields{
"arg": arg.Name,
"value": value,
"actionTitle": req.Action.Title,
}).Warnf("Mangled invalid datetime value without seconds to :00 seconds, this issue is commonly caused by Android browsers.")
req.Arguments[arg.Name] = timestamp.Format("2006-01-02T15:04:05")
}
}

View File

@ -149,7 +149,7 @@ func TestRedactShellCommand(t *testing.T) {
values := map[string]string{
"personName": "Fred",
"password": "toomanysecrets",
"password": "toomanysecrets",
}
res := redactShellCommand(cmd, args, values)

View File

@ -247,11 +247,11 @@ func TestMangleInvalidArgumentValues(t *testing.T) {
cfg.Sanitize()
req := ExecutionRequest{
Action: a1,
Action: a1,
AuthenticatedUser: acl.UserFromSystem(cfg, "testuser"),
Cfg: cfg,
Arguments: map[string]string{
"date": "1990-01-10T12:00", // Invalid format, should be without seconds
Arguments: map[string]string{
"date": "1990-01-10T12:00", // Invalid format, should be without seconds
},
}