// automatically generated by stateify.

package control

import (
	"gvisor.dev/gvisor/pkg/sentry/fs"
	"gvisor.dev/gvisor/pkg/state"
)

func (x *RightsFiles) save(m state.Map) {
	m.SaveValue("", ([]*fs.File)(*x))
}

func (x *RightsFiles) load(m state.Map) {
	m.LoadValue("", new([]*fs.File), func(y interface{}) { *x = (RightsFiles)(y.([]*fs.File)) })
}

func (x *scmCredentials) beforeSave() {}
func (x *scmCredentials) save(m state.Map) {
	x.beforeSave()
	m.Save("t", &x.t)
	m.Save("kuid", &x.kuid)
	m.Save("kgid", &x.kgid)
}

func (x *scmCredentials) afterLoad() {}
func (x *scmCredentials) load(m state.Map) {
	m.Load("t", &x.t)
	m.Load("kuid", &x.kuid)
	m.Load("kgid", &x.kgid)
}

func init() {
	state.Register("pkg/sentry/socket/control.RightsFiles", (*RightsFiles)(nil), state.Fns{Save: (*RightsFiles).save, Load: (*RightsFiles).load})
	state.Register("pkg/sentry/socket/control.scmCredentials", (*scmCredentials)(nil), state.Fns{Save: (*scmCredentials).save, Load: (*scmCredentials).load})
}