pipe/header.go (9 lines of code) (raw):
package pipe
//Header represent file metadata in the beginning of the file
type Header struct {
Format string
Filters []string `json:",omitempty"`
Schema []byte `json:",omitempty"`
Delimited bool `json:",omitempty"`
HMAC string `json:"HMAC-SHA256,omitempty"`
IV string `json:"AES256-CFB-IV,omitempty"`
}
/*
func writeHeader(header *Header, hash []byte, f io.Writer) error {
if len(hash) != 0 {
header.HMAC = fmt.Sprintf("%x", hash)
}
h, err := json.Marshal(header)
if err != nil {
return err
}
h = append(h, delimiter)
_, err = f.Write(h)
return err
}
func readHeader(r *bufio.Reader) (Header, error) {
u := &Header{}
h, err := r.ReadBytes(delimiter)
if err != nil {
return *u, err
}
err = json.Unmarshal(h, u)
if err != nil {
return *u, err
}
return *u, nil
}
*/