zfs: ResumeToken: parse embedok, largeblockok, savedok if available

Developed for #285 but ultimately not used for it.
This commit is contained in:
Christian Schwarz 2020-11-07 17:52:10 +01:00
parent efe7b17d21
commit 70bbdfe760

View File

@ -23,6 +23,9 @@ type ResumeToken struct {
ToName string
HasCompressOK, CompressOK bool
HasRawOk, RawOK bool
HasLargeBlockOK, LargeBlockOK bool
HasEmbedOk, EmbedOK bool
HasSavedOk, SavedOk bool
}
var resumeTokenNVListRE = regexp.MustCompile(`\t(\S+) = (.*)`)
@ -240,6 +243,24 @@ func ParseResumeToken(ctx context.Context, token string) (*ResumeToken, error) {
if err != nil {
return nil, ResumeTokenParsingError
}
case "embedok":
rt.HasEmbedOk = true
rt.EmbedOK, err = strconv.ParseBool(val)
if err != nil {
return nil, ResumeTokenParsingError
}
case "largeblockok":
rt.HasLargeBlockOK = true
rt.LargeBlockOK, err = strconv.ParseBool(val)
if err != nil {
return nil, ResumeTokenParsingError
}
case "savedok":
rt.HasSavedOk = true
rt.SavedOk, err = strconv.ParseBool(val)
if err != nil {
return nil, ResumeTokenParsingError
}
}
}