// automatically generated by stateify.

package netlink

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

func (x *Socket) beforeSave() {}
func (x *Socket) save(m state.Map) {
	x.beforeSave()
	m.Save("SendReceiveTimeout", &x.SendReceiveTimeout)
	m.Save("ports", &x.ports)
	m.Save("protocol", &x.protocol)
	m.Save("skType", &x.skType)
	m.Save("ep", &x.ep)
	m.Save("connection", &x.connection)
	m.Save("bound", &x.bound)
	m.Save("portID", &x.portID)
	m.Save("sendBufferSize", &x.sendBufferSize)
	m.Save("passcred", &x.passcred)
	m.Save("filter", &x.filter)
}

func (x *Socket) afterLoad() {}
func (x *Socket) load(m state.Map) {
	m.Load("SendReceiveTimeout", &x.SendReceiveTimeout)
	m.Load("ports", &x.ports)
	m.Load("protocol", &x.protocol)
	m.Load("skType", &x.skType)
	m.Load("ep", &x.ep)
	m.Load("connection", &x.connection)
	m.Load("bound", &x.bound)
	m.Load("portID", &x.portID)
	m.Load("sendBufferSize", &x.sendBufferSize)
	m.Load("passcred", &x.passcred)
	m.Load("filter", &x.filter)
}

func (x *kernelSCM) beforeSave() {}
func (x *kernelSCM) save(m state.Map) {
	x.beforeSave()
}

func (x *kernelSCM) afterLoad() {}
func (x *kernelSCM) load(m state.Map) {
}

func init() {
	state.Register("pkg/sentry/socket/netlink.Socket", (*Socket)(nil), state.Fns{Save: (*Socket).save, Load: (*Socket).load})
	state.Register("pkg/sentry/socket/netlink.kernelSCM", (*kernelSCM)(nil), state.Fns{Save: (*kernelSCM).save, Load: (*kernelSCM).load})
}