Commit 8c21ede9 authored by Juliusz Chroboczek's avatar Juliusz Chroboczek

Don't allow group names to start with a period.

parent d440cdf8
......@@ -24,8 +24,8 @@ message types.
### Group
A group is a set of clients. It is identified by a human-readable name
that must not start or end with a slash "`/`" and must not have the
substrings "`/../`" or "`/./`".
that must not start or end with a slash "`/`", must not start with
a period "`.`", and must not contain the substrings "`/../`" or "`/./`".
### Client
......
......@@ -1085,6 +1085,11 @@ func Update() {
)
return nil
}
base := filepath.Base(filename)
if base[0] == '.' {
log.Printf("Group file %v ignored", filename)
return nil
}
name := filename[:len(filename)-5]
desc, err := GetDescription(name)
if err != nil {
......
......@@ -262,6 +262,10 @@ func parseGroupName(prefix string, p string) string {
return ""
}
if name[0] == '.' {
return ""
}
if filepath.Separator != '/' &&
strings.ContainsRune(name, filepath.Separator) {
return ""
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment