validateName checks if a skill name is safe for use (filesystem-safe).
(name string)
| 1037 | |
| 1038 | // validateName checks if a skill name is safe for use (filesystem-safe). |
| 1039 | func validateName(name string) bool { |
| 1040 | if len(name) == 0 || len(name) > 64 { |
| 1041 | return false |
| 1042 | } |
| 1043 | if strings.Contains(name, "/") || strings.Contains(name, "..") { |
| 1044 | return false |
| 1045 | } |
| 1046 | return safeNamePattern.MatchString(name) |
| 1047 | } |
| 1048 | |
| 1049 | // hasHiddenSegment reports whether any path component starts with a dot. |
| 1050 | func hasHiddenSegment(p string) bool { |