X-Git-Url: https://ruderich.org/simon/gitweb/?p=nsscash%2Fnsscash.git;a=blobdiff_plain;f=file.go;h=33d71c14c152c144dc4e0e3cf04e758c0cee4858;hp=b48d0751ae3bad521ea36dd39ec2327a6ec5168c;hb=839f07d7b3130efc613d7d3fa8ed71a7d8d5fd7f;hpb=61a186321612e50e2c0224ca84c77434d3c42722 diff --git a/file.go b/file.go index b48d075..33d71c1 100644 --- a/file.go +++ b/file.go @@ -92,6 +92,22 @@ func fetchFile(file *File, state *State) error { } file.body = x.Bytes() + } else if file.Type == FileTypeGroup { + grs, err := ParseGroups(bytes.NewReader(body)) + if err != nil { + return err + } + if len(grs) == 0 { + return fmt.Errorf("refusing to use empty group file") + } + + var x bytes.Buffer + err = SerializeGroups(&x, grs) + if err != nil { + return err + } + file.body = x.Bytes() + } else { return fmt.Errorf("unsupported file type %v", file.Type) }