rpc.pb.go 42 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212
  1. // Code generated by protoc-gen-go. DO NOT EDIT.
  2. // source: rpc/rpc.proto
  3. /*
  4. Package rpc is a generated protocol buffer package.
  5. It is generated from these files:
  6. rpc/rpc.proto
  7. It has these top-level messages:
  8. CriuPageServerInfo
  9. CriuVethPair
  10. ExtMountMap
  11. JoinNamespace
  12. InheritFd
  13. CgroupRoot
  14. UnixSk
  15. CriuOpts
  16. CriuDumpResp
  17. CriuRestoreResp
  18. CriuNotify
  19. CriuFeatures
  20. CriuReq
  21. CriuResp
  22. CriuVersion
  23. */
  24. package rpc
  25. import proto "github.com/golang/protobuf/proto"
  26. import fmt "fmt"
  27. import math "math"
  28. // Reference imports to suppress errors if they are not otherwise used.
  29. var _ = proto.Marshal
  30. var _ = fmt.Errorf
  31. var _ = math.Inf
  32. // This is a compile-time assertion to ensure that this generated file
  33. // is compatible with the proto package it is being compiled against.
  34. // A compilation error at this line likely means your copy of the
  35. // proto package needs to be updated.
  36. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
  37. type CriuCgMode int32
  38. const (
  39. CriuCgMode_IGNORE CriuCgMode = 0
  40. CriuCgMode_CG_NONE CriuCgMode = 1
  41. CriuCgMode_PROPS CriuCgMode = 2
  42. CriuCgMode_SOFT CriuCgMode = 3
  43. CriuCgMode_FULL CriuCgMode = 4
  44. CriuCgMode_STRICT CriuCgMode = 5
  45. CriuCgMode_DEFAULT CriuCgMode = 6
  46. )
  47. var CriuCgMode_name = map[int32]string{
  48. 0: "IGNORE",
  49. 1: "CG_NONE",
  50. 2: "PROPS",
  51. 3: "SOFT",
  52. 4: "FULL",
  53. 5: "STRICT",
  54. 6: "DEFAULT",
  55. }
  56. var CriuCgMode_value = map[string]int32{
  57. "IGNORE": 0,
  58. "CG_NONE": 1,
  59. "PROPS": 2,
  60. "SOFT": 3,
  61. "FULL": 4,
  62. "STRICT": 5,
  63. "DEFAULT": 6,
  64. }
  65. func (x CriuCgMode) Enum() *CriuCgMode {
  66. p := new(CriuCgMode)
  67. *p = x
  68. return p
  69. }
  70. func (x CriuCgMode) String() string {
  71. return proto.EnumName(CriuCgMode_name, int32(x))
  72. }
  73. func (x *CriuCgMode) UnmarshalJSON(data []byte) error {
  74. value, err := proto.UnmarshalJSONEnum(CriuCgMode_value, data, "CriuCgMode")
  75. if err != nil {
  76. return err
  77. }
  78. *x = CriuCgMode(value)
  79. return nil
  80. }
  81. func (CriuCgMode) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
  82. type CriuReqType int32
  83. const (
  84. CriuReqType_EMPTY CriuReqType = 0
  85. CriuReqType_DUMP CriuReqType = 1
  86. CriuReqType_RESTORE CriuReqType = 2
  87. CriuReqType_CHECK CriuReqType = 3
  88. CriuReqType_PRE_DUMP CriuReqType = 4
  89. CriuReqType_PAGE_SERVER CriuReqType = 5
  90. CriuReqType_NOTIFY CriuReqType = 6
  91. CriuReqType_CPUINFO_DUMP CriuReqType = 7
  92. CriuReqType_CPUINFO_CHECK CriuReqType = 8
  93. CriuReqType_FEATURE_CHECK CriuReqType = 9
  94. CriuReqType_VERSION CriuReqType = 10
  95. CriuReqType_WAIT_PID CriuReqType = 11
  96. CriuReqType_PAGE_SERVER_CHLD CriuReqType = 12
  97. )
  98. var CriuReqType_name = map[int32]string{
  99. 0: "EMPTY",
  100. 1: "DUMP",
  101. 2: "RESTORE",
  102. 3: "CHECK",
  103. 4: "PRE_DUMP",
  104. 5: "PAGE_SERVER",
  105. 6: "NOTIFY",
  106. 7: "CPUINFO_DUMP",
  107. 8: "CPUINFO_CHECK",
  108. 9: "FEATURE_CHECK",
  109. 10: "VERSION",
  110. 11: "WAIT_PID",
  111. 12: "PAGE_SERVER_CHLD",
  112. }
  113. var CriuReqType_value = map[string]int32{
  114. "EMPTY": 0,
  115. "DUMP": 1,
  116. "RESTORE": 2,
  117. "CHECK": 3,
  118. "PRE_DUMP": 4,
  119. "PAGE_SERVER": 5,
  120. "NOTIFY": 6,
  121. "CPUINFO_DUMP": 7,
  122. "CPUINFO_CHECK": 8,
  123. "FEATURE_CHECK": 9,
  124. "VERSION": 10,
  125. "WAIT_PID": 11,
  126. "PAGE_SERVER_CHLD": 12,
  127. }
  128. func (x CriuReqType) Enum() *CriuReqType {
  129. p := new(CriuReqType)
  130. *p = x
  131. return p
  132. }
  133. func (x CriuReqType) String() string {
  134. return proto.EnumName(CriuReqType_name, int32(x))
  135. }
  136. func (x *CriuReqType) UnmarshalJSON(data []byte) error {
  137. value, err := proto.UnmarshalJSONEnum(CriuReqType_value, data, "CriuReqType")
  138. if err != nil {
  139. return err
  140. }
  141. *x = CriuReqType(value)
  142. return nil
  143. }
  144. func (CriuReqType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
  145. type CriuPageServerInfo struct {
  146. Address *string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  147. Port *int32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"`
  148. Pid *int32 `protobuf:"varint,3,opt,name=pid" json:"pid,omitempty"`
  149. Fd *int32 `protobuf:"varint,4,opt,name=fd" json:"fd,omitempty"`
  150. XXX_unrecognized []byte `json:"-"`
  151. }
  152. func (m *CriuPageServerInfo) Reset() { *m = CriuPageServerInfo{} }
  153. func (m *CriuPageServerInfo) String() string { return proto.CompactTextString(m) }
  154. func (*CriuPageServerInfo) ProtoMessage() {}
  155. func (*CriuPageServerInfo) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
  156. func (m *CriuPageServerInfo) GetAddress() string {
  157. if m != nil && m.Address != nil {
  158. return *m.Address
  159. }
  160. return ""
  161. }
  162. func (m *CriuPageServerInfo) GetPort() int32 {
  163. if m != nil && m.Port != nil {
  164. return *m.Port
  165. }
  166. return 0
  167. }
  168. func (m *CriuPageServerInfo) GetPid() int32 {
  169. if m != nil && m.Pid != nil {
  170. return *m.Pid
  171. }
  172. return 0
  173. }
  174. func (m *CriuPageServerInfo) GetFd() int32 {
  175. if m != nil && m.Fd != nil {
  176. return *m.Fd
  177. }
  178. return 0
  179. }
  180. type CriuVethPair struct {
  181. IfIn *string `protobuf:"bytes,1,req,name=if_in,json=ifIn" json:"if_in,omitempty"`
  182. IfOut *string `protobuf:"bytes,2,req,name=if_out,json=ifOut" json:"if_out,omitempty"`
  183. XXX_unrecognized []byte `json:"-"`
  184. }
  185. func (m *CriuVethPair) Reset() { *m = CriuVethPair{} }
  186. func (m *CriuVethPair) String() string { return proto.CompactTextString(m) }
  187. func (*CriuVethPair) ProtoMessage() {}
  188. func (*CriuVethPair) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
  189. func (m *CriuVethPair) GetIfIn() string {
  190. if m != nil && m.IfIn != nil {
  191. return *m.IfIn
  192. }
  193. return ""
  194. }
  195. func (m *CriuVethPair) GetIfOut() string {
  196. if m != nil && m.IfOut != nil {
  197. return *m.IfOut
  198. }
  199. return ""
  200. }
  201. type ExtMountMap struct {
  202. Key *string `protobuf:"bytes,1,req,name=key" json:"key,omitempty"`
  203. Val *string `protobuf:"bytes,2,req,name=val" json:"val,omitempty"`
  204. XXX_unrecognized []byte `json:"-"`
  205. }
  206. func (m *ExtMountMap) Reset() { *m = ExtMountMap{} }
  207. func (m *ExtMountMap) String() string { return proto.CompactTextString(m) }
  208. func (*ExtMountMap) ProtoMessage() {}
  209. func (*ExtMountMap) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
  210. func (m *ExtMountMap) GetKey() string {
  211. if m != nil && m.Key != nil {
  212. return *m.Key
  213. }
  214. return ""
  215. }
  216. func (m *ExtMountMap) GetVal() string {
  217. if m != nil && m.Val != nil {
  218. return *m.Val
  219. }
  220. return ""
  221. }
  222. type JoinNamespace struct {
  223. Ns *string `protobuf:"bytes,1,req,name=ns" json:"ns,omitempty"`
  224. NsFile *string `protobuf:"bytes,2,req,name=ns_file,json=nsFile" json:"ns_file,omitempty"`
  225. ExtraOpt *string `protobuf:"bytes,3,opt,name=extra_opt,json=extraOpt" json:"extra_opt,omitempty"`
  226. XXX_unrecognized []byte `json:"-"`
  227. }
  228. func (m *JoinNamespace) Reset() { *m = JoinNamespace{} }
  229. func (m *JoinNamespace) String() string { return proto.CompactTextString(m) }
  230. func (*JoinNamespace) ProtoMessage() {}
  231. func (*JoinNamespace) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
  232. func (m *JoinNamespace) GetNs() string {
  233. if m != nil && m.Ns != nil {
  234. return *m.Ns
  235. }
  236. return ""
  237. }
  238. func (m *JoinNamespace) GetNsFile() string {
  239. if m != nil && m.NsFile != nil {
  240. return *m.NsFile
  241. }
  242. return ""
  243. }
  244. func (m *JoinNamespace) GetExtraOpt() string {
  245. if m != nil && m.ExtraOpt != nil {
  246. return *m.ExtraOpt
  247. }
  248. return ""
  249. }
  250. type InheritFd struct {
  251. Key *string `protobuf:"bytes,1,req,name=key" json:"key,omitempty"`
  252. Fd *int32 `protobuf:"varint,2,req,name=fd" json:"fd,omitempty"`
  253. XXX_unrecognized []byte `json:"-"`
  254. }
  255. func (m *InheritFd) Reset() { *m = InheritFd{} }
  256. func (m *InheritFd) String() string { return proto.CompactTextString(m) }
  257. func (*InheritFd) ProtoMessage() {}
  258. func (*InheritFd) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
  259. func (m *InheritFd) GetKey() string {
  260. if m != nil && m.Key != nil {
  261. return *m.Key
  262. }
  263. return ""
  264. }
  265. func (m *InheritFd) GetFd() int32 {
  266. if m != nil && m.Fd != nil {
  267. return *m.Fd
  268. }
  269. return 0
  270. }
  271. type CgroupRoot struct {
  272. Ctrl *string `protobuf:"bytes,1,opt,name=ctrl" json:"ctrl,omitempty"`
  273. Path *string `protobuf:"bytes,2,req,name=path" json:"path,omitempty"`
  274. XXX_unrecognized []byte `json:"-"`
  275. }
  276. func (m *CgroupRoot) Reset() { *m = CgroupRoot{} }
  277. func (m *CgroupRoot) String() string { return proto.CompactTextString(m) }
  278. func (*CgroupRoot) ProtoMessage() {}
  279. func (*CgroupRoot) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
  280. func (m *CgroupRoot) GetCtrl() string {
  281. if m != nil && m.Ctrl != nil {
  282. return *m.Ctrl
  283. }
  284. return ""
  285. }
  286. func (m *CgroupRoot) GetPath() string {
  287. if m != nil && m.Path != nil {
  288. return *m.Path
  289. }
  290. return ""
  291. }
  292. type UnixSk struct {
  293. Inode *uint32 `protobuf:"varint,1,req,name=inode" json:"inode,omitempty"`
  294. XXX_unrecognized []byte `json:"-"`
  295. }
  296. func (m *UnixSk) Reset() { *m = UnixSk{} }
  297. func (m *UnixSk) String() string { return proto.CompactTextString(m) }
  298. func (*UnixSk) ProtoMessage() {}
  299. func (*UnixSk) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
  300. func (m *UnixSk) GetInode() uint32 {
  301. if m != nil && m.Inode != nil {
  302. return *m.Inode
  303. }
  304. return 0
  305. }
  306. type CriuOpts struct {
  307. ImagesDirFd *int32 `protobuf:"varint,1,req,name=images_dir_fd,json=imagesDirFd" json:"images_dir_fd,omitempty"`
  308. Pid *int32 `protobuf:"varint,2,opt,name=pid" json:"pid,omitempty"`
  309. LeaveRunning *bool `protobuf:"varint,3,opt,name=leave_running,json=leaveRunning" json:"leave_running,omitempty"`
  310. ExtUnixSk *bool `protobuf:"varint,4,opt,name=ext_unix_sk,json=extUnixSk" json:"ext_unix_sk,omitempty"`
  311. TcpEstablished *bool `protobuf:"varint,5,opt,name=tcp_established,json=tcpEstablished" json:"tcp_established,omitempty"`
  312. EvasiveDevices *bool `protobuf:"varint,6,opt,name=evasive_devices,json=evasiveDevices" json:"evasive_devices,omitempty"`
  313. ShellJob *bool `protobuf:"varint,7,opt,name=shell_job,json=shellJob" json:"shell_job,omitempty"`
  314. FileLocks *bool `protobuf:"varint,8,opt,name=file_locks,json=fileLocks" json:"file_locks,omitempty"`
  315. LogLevel *int32 `protobuf:"varint,9,opt,name=log_level,json=logLevel,def=2" json:"log_level,omitempty"`
  316. LogFile *string `protobuf:"bytes,10,opt,name=log_file,json=logFile" json:"log_file,omitempty"`
  317. Ps *CriuPageServerInfo `protobuf:"bytes,11,opt,name=ps" json:"ps,omitempty"`
  318. NotifyScripts *bool `protobuf:"varint,12,opt,name=notify_scripts,json=notifyScripts" json:"notify_scripts,omitempty"`
  319. Root *string `protobuf:"bytes,13,opt,name=root" json:"root,omitempty"`
  320. ParentImg *string `protobuf:"bytes,14,opt,name=parent_img,json=parentImg" json:"parent_img,omitempty"`
  321. TrackMem *bool `protobuf:"varint,15,opt,name=track_mem,json=trackMem" json:"track_mem,omitempty"`
  322. AutoDedup *bool `protobuf:"varint,16,opt,name=auto_dedup,json=autoDedup" json:"auto_dedup,omitempty"`
  323. WorkDirFd *int32 `protobuf:"varint,17,opt,name=work_dir_fd,json=workDirFd" json:"work_dir_fd,omitempty"`
  324. LinkRemap *bool `protobuf:"varint,18,opt,name=link_remap,json=linkRemap" json:"link_remap,omitempty"`
  325. Veths []*CriuVethPair `protobuf:"bytes,19,rep,name=veths" json:"veths,omitempty"`
  326. CpuCap *uint32 `protobuf:"varint,20,opt,name=cpu_cap,json=cpuCap,def=4294967295" json:"cpu_cap,omitempty"`
  327. ForceIrmap *bool `protobuf:"varint,21,opt,name=force_irmap,json=forceIrmap" json:"force_irmap,omitempty"`
  328. ExecCmd []string `protobuf:"bytes,22,rep,name=exec_cmd,json=execCmd" json:"exec_cmd,omitempty"`
  329. ExtMnt []*ExtMountMap `protobuf:"bytes,23,rep,name=ext_mnt,json=extMnt" json:"ext_mnt,omitempty"`
  330. ManageCgroups *bool `protobuf:"varint,24,opt,name=manage_cgroups,json=manageCgroups" json:"manage_cgroups,omitempty"`
  331. CgRoot []*CgroupRoot `protobuf:"bytes,25,rep,name=cg_root,json=cgRoot" json:"cg_root,omitempty"`
  332. RstSibling *bool `protobuf:"varint,26,opt,name=rst_sibling,json=rstSibling" json:"rst_sibling,omitempty"`
  333. InheritFd []*InheritFd `protobuf:"bytes,27,rep,name=inherit_fd,json=inheritFd" json:"inherit_fd,omitempty"`
  334. AutoExtMnt *bool `protobuf:"varint,28,opt,name=auto_ext_mnt,json=autoExtMnt" json:"auto_ext_mnt,omitempty"`
  335. ExtSharing *bool `protobuf:"varint,29,opt,name=ext_sharing,json=extSharing" json:"ext_sharing,omitempty"`
  336. ExtMasters *bool `protobuf:"varint,30,opt,name=ext_masters,json=extMasters" json:"ext_masters,omitempty"`
  337. SkipMnt []string `protobuf:"bytes,31,rep,name=skip_mnt,json=skipMnt" json:"skip_mnt,omitempty"`
  338. EnableFs []string `protobuf:"bytes,32,rep,name=enable_fs,json=enableFs" json:"enable_fs,omitempty"`
  339. UnixSkIno []*UnixSk `protobuf:"bytes,33,rep,name=unix_sk_ino,json=unixSkIno" json:"unix_sk_ino,omitempty"`
  340. ManageCgroupsMode *CriuCgMode `protobuf:"varint,34,opt,name=manage_cgroups_mode,json=manageCgroupsMode,enum=CriuCgMode" json:"manage_cgroups_mode,omitempty"`
  341. GhostLimit *uint32 `protobuf:"varint,35,opt,name=ghost_limit,json=ghostLimit,def=1048576" json:"ghost_limit,omitempty"`
  342. IrmapScanPaths []string `protobuf:"bytes,36,rep,name=irmap_scan_paths,json=irmapScanPaths" json:"irmap_scan_paths,omitempty"`
  343. External []string `protobuf:"bytes,37,rep,name=external" json:"external,omitempty"`
  344. EmptyNs *uint32 `protobuf:"varint,38,opt,name=empty_ns,json=emptyNs" json:"empty_ns,omitempty"`
  345. JoinNs []*JoinNamespace `protobuf:"bytes,39,rep,name=join_ns,json=joinNs" json:"join_ns,omitempty"`
  346. CgroupProps *string `protobuf:"bytes,41,opt,name=cgroup_props,json=cgroupProps" json:"cgroup_props,omitempty"`
  347. CgroupPropsFile *string `protobuf:"bytes,42,opt,name=cgroup_props_file,json=cgroupPropsFile" json:"cgroup_props_file,omitempty"`
  348. CgroupDumpController []string `protobuf:"bytes,43,rep,name=cgroup_dump_controller,json=cgroupDumpController" json:"cgroup_dump_controller,omitempty"`
  349. FreezeCgroup *string `protobuf:"bytes,44,opt,name=freeze_cgroup,json=freezeCgroup" json:"freeze_cgroup,omitempty"`
  350. Timeout *uint32 `protobuf:"varint,45,opt,name=timeout" json:"timeout,omitempty"`
  351. TcpSkipInFlight *bool `protobuf:"varint,46,opt,name=tcp_skip_in_flight,json=tcpSkipInFlight" json:"tcp_skip_in_flight,omitempty"`
  352. WeakSysctls *bool `protobuf:"varint,47,opt,name=weak_sysctls,json=weakSysctls" json:"weak_sysctls,omitempty"`
  353. LazyPages *bool `protobuf:"varint,48,opt,name=lazy_pages,json=lazyPages" json:"lazy_pages,omitempty"`
  354. StatusFd *int32 `protobuf:"varint,49,opt,name=status_fd,json=statusFd" json:"status_fd,omitempty"`
  355. OrphanPtsMaster *bool `protobuf:"varint,50,opt,name=orphan_pts_master,json=orphanPtsMaster" json:"orphan_pts_master,omitempty"`
  356. ConfigFile *string `protobuf:"bytes,51,opt,name=config_file,json=configFile" json:"config_file,omitempty"`
  357. XXX_unrecognized []byte `json:"-"`
  358. }
  359. func (m *CriuOpts) Reset() { *m = CriuOpts{} }
  360. func (m *CriuOpts) String() string { return proto.CompactTextString(m) }
  361. func (*CriuOpts) ProtoMessage() {}
  362. func (*CriuOpts) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
  363. const Default_CriuOpts_LogLevel int32 = 2
  364. const Default_CriuOpts_CpuCap uint32 = 4294967295
  365. const Default_CriuOpts_GhostLimit uint32 = 1048576
  366. func (m *CriuOpts) GetImagesDirFd() int32 {
  367. if m != nil && m.ImagesDirFd != nil {
  368. return *m.ImagesDirFd
  369. }
  370. return 0
  371. }
  372. func (m *CriuOpts) GetPid() int32 {
  373. if m != nil && m.Pid != nil {
  374. return *m.Pid
  375. }
  376. return 0
  377. }
  378. func (m *CriuOpts) GetLeaveRunning() bool {
  379. if m != nil && m.LeaveRunning != nil {
  380. return *m.LeaveRunning
  381. }
  382. return false
  383. }
  384. func (m *CriuOpts) GetExtUnixSk() bool {
  385. if m != nil && m.ExtUnixSk != nil {
  386. return *m.ExtUnixSk
  387. }
  388. return false
  389. }
  390. func (m *CriuOpts) GetTcpEstablished() bool {
  391. if m != nil && m.TcpEstablished != nil {
  392. return *m.TcpEstablished
  393. }
  394. return false
  395. }
  396. func (m *CriuOpts) GetEvasiveDevices() bool {
  397. if m != nil && m.EvasiveDevices != nil {
  398. return *m.EvasiveDevices
  399. }
  400. return false
  401. }
  402. func (m *CriuOpts) GetShellJob() bool {
  403. if m != nil && m.ShellJob != nil {
  404. return *m.ShellJob
  405. }
  406. return false
  407. }
  408. func (m *CriuOpts) GetFileLocks() bool {
  409. if m != nil && m.FileLocks != nil {
  410. return *m.FileLocks
  411. }
  412. return false
  413. }
  414. func (m *CriuOpts) GetLogLevel() int32 {
  415. if m != nil && m.LogLevel != nil {
  416. return *m.LogLevel
  417. }
  418. return Default_CriuOpts_LogLevel
  419. }
  420. func (m *CriuOpts) GetLogFile() string {
  421. if m != nil && m.LogFile != nil {
  422. return *m.LogFile
  423. }
  424. return ""
  425. }
  426. func (m *CriuOpts) GetPs() *CriuPageServerInfo {
  427. if m != nil {
  428. return m.Ps
  429. }
  430. return nil
  431. }
  432. func (m *CriuOpts) GetNotifyScripts() bool {
  433. if m != nil && m.NotifyScripts != nil {
  434. return *m.NotifyScripts
  435. }
  436. return false
  437. }
  438. func (m *CriuOpts) GetRoot() string {
  439. if m != nil && m.Root != nil {
  440. return *m.Root
  441. }
  442. return ""
  443. }
  444. func (m *CriuOpts) GetParentImg() string {
  445. if m != nil && m.ParentImg != nil {
  446. return *m.ParentImg
  447. }
  448. return ""
  449. }
  450. func (m *CriuOpts) GetTrackMem() bool {
  451. if m != nil && m.TrackMem != nil {
  452. return *m.TrackMem
  453. }
  454. return false
  455. }
  456. func (m *CriuOpts) GetAutoDedup() bool {
  457. if m != nil && m.AutoDedup != nil {
  458. return *m.AutoDedup
  459. }
  460. return false
  461. }
  462. func (m *CriuOpts) GetWorkDirFd() int32 {
  463. if m != nil && m.WorkDirFd != nil {
  464. return *m.WorkDirFd
  465. }
  466. return 0
  467. }
  468. func (m *CriuOpts) GetLinkRemap() bool {
  469. if m != nil && m.LinkRemap != nil {
  470. return *m.LinkRemap
  471. }
  472. return false
  473. }
  474. func (m *CriuOpts) GetVeths() []*CriuVethPair {
  475. if m != nil {
  476. return m.Veths
  477. }
  478. return nil
  479. }
  480. func (m *CriuOpts) GetCpuCap() uint32 {
  481. if m != nil && m.CpuCap != nil {
  482. return *m.CpuCap
  483. }
  484. return Default_CriuOpts_CpuCap
  485. }
  486. func (m *CriuOpts) GetForceIrmap() bool {
  487. if m != nil && m.ForceIrmap != nil {
  488. return *m.ForceIrmap
  489. }
  490. return false
  491. }
  492. func (m *CriuOpts) GetExecCmd() []string {
  493. if m != nil {
  494. return m.ExecCmd
  495. }
  496. return nil
  497. }
  498. func (m *CriuOpts) GetExtMnt() []*ExtMountMap {
  499. if m != nil {
  500. return m.ExtMnt
  501. }
  502. return nil
  503. }
  504. func (m *CriuOpts) GetManageCgroups() bool {
  505. if m != nil && m.ManageCgroups != nil {
  506. return *m.ManageCgroups
  507. }
  508. return false
  509. }
  510. func (m *CriuOpts) GetCgRoot() []*CgroupRoot {
  511. if m != nil {
  512. return m.CgRoot
  513. }
  514. return nil
  515. }
  516. func (m *CriuOpts) GetRstSibling() bool {
  517. if m != nil && m.RstSibling != nil {
  518. return *m.RstSibling
  519. }
  520. return false
  521. }
  522. func (m *CriuOpts) GetInheritFd() []*InheritFd {
  523. if m != nil {
  524. return m.InheritFd
  525. }
  526. return nil
  527. }
  528. func (m *CriuOpts) GetAutoExtMnt() bool {
  529. if m != nil && m.AutoExtMnt != nil {
  530. return *m.AutoExtMnt
  531. }
  532. return false
  533. }
  534. func (m *CriuOpts) GetExtSharing() bool {
  535. if m != nil && m.ExtSharing != nil {
  536. return *m.ExtSharing
  537. }
  538. return false
  539. }
  540. func (m *CriuOpts) GetExtMasters() bool {
  541. if m != nil && m.ExtMasters != nil {
  542. return *m.ExtMasters
  543. }
  544. return false
  545. }
  546. func (m *CriuOpts) GetSkipMnt() []string {
  547. if m != nil {
  548. return m.SkipMnt
  549. }
  550. return nil
  551. }
  552. func (m *CriuOpts) GetEnableFs() []string {
  553. if m != nil {
  554. return m.EnableFs
  555. }
  556. return nil
  557. }
  558. func (m *CriuOpts) GetUnixSkIno() []*UnixSk {
  559. if m != nil {
  560. return m.UnixSkIno
  561. }
  562. return nil
  563. }
  564. func (m *CriuOpts) GetManageCgroupsMode() CriuCgMode {
  565. if m != nil && m.ManageCgroupsMode != nil {
  566. return *m.ManageCgroupsMode
  567. }
  568. return CriuCgMode_IGNORE
  569. }
  570. func (m *CriuOpts) GetGhostLimit() uint32 {
  571. if m != nil && m.GhostLimit != nil {
  572. return *m.GhostLimit
  573. }
  574. return Default_CriuOpts_GhostLimit
  575. }
  576. func (m *CriuOpts) GetIrmapScanPaths() []string {
  577. if m != nil {
  578. return m.IrmapScanPaths
  579. }
  580. return nil
  581. }
  582. func (m *CriuOpts) GetExternal() []string {
  583. if m != nil {
  584. return m.External
  585. }
  586. return nil
  587. }
  588. func (m *CriuOpts) GetEmptyNs() uint32 {
  589. if m != nil && m.EmptyNs != nil {
  590. return *m.EmptyNs
  591. }
  592. return 0
  593. }
  594. func (m *CriuOpts) GetJoinNs() []*JoinNamespace {
  595. if m != nil {
  596. return m.JoinNs
  597. }
  598. return nil
  599. }
  600. func (m *CriuOpts) GetCgroupProps() string {
  601. if m != nil && m.CgroupProps != nil {
  602. return *m.CgroupProps
  603. }
  604. return ""
  605. }
  606. func (m *CriuOpts) GetCgroupPropsFile() string {
  607. if m != nil && m.CgroupPropsFile != nil {
  608. return *m.CgroupPropsFile
  609. }
  610. return ""
  611. }
  612. func (m *CriuOpts) GetCgroupDumpController() []string {
  613. if m != nil {
  614. return m.CgroupDumpController
  615. }
  616. return nil
  617. }
  618. func (m *CriuOpts) GetFreezeCgroup() string {
  619. if m != nil && m.FreezeCgroup != nil {
  620. return *m.FreezeCgroup
  621. }
  622. return ""
  623. }
  624. func (m *CriuOpts) GetTimeout() uint32 {
  625. if m != nil && m.Timeout != nil {
  626. return *m.Timeout
  627. }
  628. return 0
  629. }
  630. func (m *CriuOpts) GetTcpSkipInFlight() bool {
  631. if m != nil && m.TcpSkipInFlight != nil {
  632. return *m.TcpSkipInFlight
  633. }
  634. return false
  635. }
  636. func (m *CriuOpts) GetWeakSysctls() bool {
  637. if m != nil && m.WeakSysctls != nil {
  638. return *m.WeakSysctls
  639. }
  640. return false
  641. }
  642. func (m *CriuOpts) GetLazyPages() bool {
  643. if m != nil && m.LazyPages != nil {
  644. return *m.LazyPages
  645. }
  646. return false
  647. }
  648. func (m *CriuOpts) GetStatusFd() int32 {
  649. if m != nil && m.StatusFd != nil {
  650. return *m.StatusFd
  651. }
  652. return 0
  653. }
  654. func (m *CriuOpts) GetOrphanPtsMaster() bool {
  655. if m != nil && m.OrphanPtsMaster != nil {
  656. return *m.OrphanPtsMaster
  657. }
  658. return false
  659. }
  660. func (m *CriuOpts) GetConfigFile() string {
  661. if m != nil && m.ConfigFile != nil {
  662. return *m.ConfigFile
  663. }
  664. return ""
  665. }
  666. type CriuDumpResp struct {
  667. Restored *bool `protobuf:"varint,1,opt,name=restored" json:"restored,omitempty"`
  668. XXX_unrecognized []byte `json:"-"`
  669. }
  670. func (m *CriuDumpResp) Reset() { *m = CriuDumpResp{} }
  671. func (m *CriuDumpResp) String() string { return proto.CompactTextString(m) }
  672. func (*CriuDumpResp) ProtoMessage() {}
  673. func (*CriuDumpResp) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
  674. func (m *CriuDumpResp) GetRestored() bool {
  675. if m != nil && m.Restored != nil {
  676. return *m.Restored
  677. }
  678. return false
  679. }
  680. type CriuRestoreResp struct {
  681. Pid *int32 `protobuf:"varint,1,req,name=pid" json:"pid,omitempty"`
  682. XXX_unrecognized []byte `json:"-"`
  683. }
  684. func (m *CriuRestoreResp) Reset() { *m = CriuRestoreResp{} }
  685. func (m *CriuRestoreResp) String() string { return proto.CompactTextString(m) }
  686. func (*CriuRestoreResp) ProtoMessage() {}
  687. func (*CriuRestoreResp) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
  688. func (m *CriuRestoreResp) GetPid() int32 {
  689. if m != nil && m.Pid != nil {
  690. return *m.Pid
  691. }
  692. return 0
  693. }
  694. type CriuNotify struct {
  695. Script *string `protobuf:"bytes,1,opt,name=script" json:"script,omitempty"`
  696. Pid *int32 `protobuf:"varint,2,opt,name=pid" json:"pid,omitempty"`
  697. XXX_unrecognized []byte `json:"-"`
  698. }
  699. func (m *CriuNotify) Reset() { *m = CriuNotify{} }
  700. func (m *CriuNotify) String() string { return proto.CompactTextString(m) }
  701. func (*CriuNotify) ProtoMessage() {}
  702. func (*CriuNotify) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
  703. func (m *CriuNotify) GetScript() string {
  704. if m != nil && m.Script != nil {
  705. return *m.Script
  706. }
  707. return ""
  708. }
  709. func (m *CriuNotify) GetPid() int32 {
  710. if m != nil && m.Pid != nil {
  711. return *m.Pid
  712. }
  713. return 0
  714. }
  715. //
  716. // List of features which can queried via
  717. // CRIU_REQ_TYPE__FEATURE_CHECK
  718. type CriuFeatures struct {
  719. MemTrack *bool `protobuf:"varint,1,opt,name=mem_track,json=memTrack" json:"mem_track,omitempty"`
  720. LazyPages *bool `protobuf:"varint,2,opt,name=lazy_pages,json=lazyPages" json:"lazy_pages,omitempty"`
  721. XXX_unrecognized []byte `json:"-"`
  722. }
  723. func (m *CriuFeatures) Reset() { *m = CriuFeatures{} }
  724. func (m *CriuFeatures) String() string { return proto.CompactTextString(m) }
  725. func (*CriuFeatures) ProtoMessage() {}
  726. func (*CriuFeatures) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
  727. func (m *CriuFeatures) GetMemTrack() bool {
  728. if m != nil && m.MemTrack != nil {
  729. return *m.MemTrack
  730. }
  731. return false
  732. }
  733. func (m *CriuFeatures) GetLazyPages() bool {
  734. if m != nil && m.LazyPages != nil {
  735. return *m.LazyPages
  736. }
  737. return false
  738. }
  739. type CriuReq struct {
  740. Type *CriuReqType `protobuf:"varint,1,req,name=type,enum=CriuReqType" json:"type,omitempty"`
  741. Opts *CriuOpts `protobuf:"bytes,2,opt,name=opts" json:"opts,omitempty"`
  742. NotifySuccess *bool `protobuf:"varint,3,opt,name=notify_success,json=notifySuccess" json:"notify_success,omitempty"`
  743. //
  744. // When set service won't close the connection but
  745. // will wait for more req-s to appear. Works not
  746. // for all request types.
  747. KeepOpen *bool `protobuf:"varint,4,opt,name=keep_open,json=keepOpen" json:"keep_open,omitempty"`
  748. //
  749. // 'features' can be used to query which features
  750. // are supported by the installed criu/kernel
  751. // via RPC.
  752. Features *CriuFeatures `protobuf:"bytes,5,opt,name=features" json:"features,omitempty"`
  753. // 'pid' is used for WAIT_PID
  754. Pid *uint32 `protobuf:"varint,6,opt,name=pid" json:"pid,omitempty"`
  755. XXX_unrecognized []byte `json:"-"`
  756. }
  757. func (m *CriuReq) Reset() { *m = CriuReq{} }
  758. func (m *CriuReq) String() string { return proto.CompactTextString(m) }
  759. func (*CriuReq) ProtoMessage() {}
  760. func (*CriuReq) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
  761. func (m *CriuReq) GetType() CriuReqType {
  762. if m != nil && m.Type != nil {
  763. return *m.Type
  764. }
  765. return CriuReqType_EMPTY
  766. }
  767. func (m *CriuReq) GetOpts() *CriuOpts {
  768. if m != nil {
  769. return m.Opts
  770. }
  771. return nil
  772. }
  773. func (m *CriuReq) GetNotifySuccess() bool {
  774. if m != nil && m.NotifySuccess != nil {
  775. return *m.NotifySuccess
  776. }
  777. return false
  778. }
  779. func (m *CriuReq) GetKeepOpen() bool {
  780. if m != nil && m.KeepOpen != nil {
  781. return *m.KeepOpen
  782. }
  783. return false
  784. }
  785. func (m *CriuReq) GetFeatures() *CriuFeatures {
  786. if m != nil {
  787. return m.Features
  788. }
  789. return nil
  790. }
  791. func (m *CriuReq) GetPid() uint32 {
  792. if m != nil && m.Pid != nil {
  793. return *m.Pid
  794. }
  795. return 0
  796. }
  797. type CriuResp struct {
  798. Type *CriuReqType `protobuf:"varint,1,req,name=type,enum=CriuReqType" json:"type,omitempty"`
  799. Success *bool `protobuf:"varint,2,req,name=success" json:"success,omitempty"`
  800. Dump *CriuDumpResp `protobuf:"bytes,3,opt,name=dump" json:"dump,omitempty"`
  801. Restore *CriuRestoreResp `protobuf:"bytes,4,opt,name=restore" json:"restore,omitempty"`
  802. Notify *CriuNotify `protobuf:"bytes,5,opt,name=notify" json:"notify,omitempty"`
  803. Ps *CriuPageServerInfo `protobuf:"bytes,6,opt,name=ps" json:"ps,omitempty"`
  804. CrErrno *int32 `protobuf:"varint,7,opt,name=cr_errno,json=crErrno" json:"cr_errno,omitempty"`
  805. Features *CriuFeatures `protobuf:"bytes,8,opt,name=features" json:"features,omitempty"`
  806. CrErrmsg *string `protobuf:"bytes,9,opt,name=cr_errmsg,json=crErrmsg" json:"cr_errmsg,omitempty"`
  807. Version *CriuVersion `protobuf:"bytes,10,opt,name=version" json:"version,omitempty"`
  808. Status *int32 `protobuf:"varint,11,opt,name=status" json:"status,omitempty"`
  809. XXX_unrecognized []byte `json:"-"`
  810. }
  811. func (m *CriuResp) Reset() { *m = CriuResp{} }
  812. func (m *CriuResp) String() string { return proto.CompactTextString(m) }
  813. func (*CriuResp) ProtoMessage() {}
  814. func (*CriuResp) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
  815. func (m *CriuResp) GetType() CriuReqType {
  816. if m != nil && m.Type != nil {
  817. return *m.Type
  818. }
  819. return CriuReqType_EMPTY
  820. }
  821. func (m *CriuResp) GetSuccess() bool {
  822. if m != nil && m.Success != nil {
  823. return *m.Success
  824. }
  825. return false
  826. }
  827. func (m *CriuResp) GetDump() *CriuDumpResp {
  828. if m != nil {
  829. return m.Dump
  830. }
  831. return nil
  832. }
  833. func (m *CriuResp) GetRestore() *CriuRestoreResp {
  834. if m != nil {
  835. return m.Restore
  836. }
  837. return nil
  838. }
  839. func (m *CriuResp) GetNotify() *CriuNotify {
  840. if m != nil {
  841. return m.Notify
  842. }
  843. return nil
  844. }
  845. func (m *CriuResp) GetPs() *CriuPageServerInfo {
  846. if m != nil {
  847. return m.Ps
  848. }
  849. return nil
  850. }
  851. func (m *CriuResp) GetCrErrno() int32 {
  852. if m != nil && m.CrErrno != nil {
  853. return *m.CrErrno
  854. }
  855. return 0
  856. }
  857. func (m *CriuResp) GetFeatures() *CriuFeatures {
  858. if m != nil {
  859. return m.Features
  860. }
  861. return nil
  862. }
  863. func (m *CriuResp) GetCrErrmsg() string {
  864. if m != nil && m.CrErrmsg != nil {
  865. return *m.CrErrmsg
  866. }
  867. return ""
  868. }
  869. func (m *CriuResp) GetVersion() *CriuVersion {
  870. if m != nil {
  871. return m.Version
  872. }
  873. return nil
  874. }
  875. func (m *CriuResp) GetStatus() int32 {
  876. if m != nil && m.Status != nil {
  877. return *m.Status
  878. }
  879. return 0
  880. }
  881. // Answer for criu_req_type.VERSION requests
  882. type CriuVersion struct {
  883. Major *int32 `protobuf:"varint,1,req,name=major" json:"major,omitempty"`
  884. Minor *int32 `protobuf:"varint,2,req,name=minor" json:"minor,omitempty"`
  885. Gitid *string `protobuf:"bytes,3,opt,name=gitid" json:"gitid,omitempty"`
  886. Sublevel *int32 `protobuf:"varint,4,opt,name=sublevel" json:"sublevel,omitempty"`
  887. Extra *int32 `protobuf:"varint,5,opt,name=extra" json:"extra,omitempty"`
  888. Name *string `protobuf:"bytes,6,opt,name=name" json:"name,omitempty"`
  889. XXX_unrecognized []byte `json:"-"`
  890. }
  891. func (m *CriuVersion) Reset() { *m = CriuVersion{} }
  892. func (m *CriuVersion) String() string { return proto.CompactTextString(m) }
  893. func (*CriuVersion) ProtoMessage() {}
  894. func (*CriuVersion) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
  895. func (m *CriuVersion) GetMajor() int32 {
  896. if m != nil && m.Major != nil {
  897. return *m.Major
  898. }
  899. return 0
  900. }
  901. func (m *CriuVersion) GetMinor() int32 {
  902. if m != nil && m.Minor != nil {
  903. return *m.Minor
  904. }
  905. return 0
  906. }
  907. func (m *CriuVersion) GetGitid() string {
  908. if m != nil && m.Gitid != nil {
  909. return *m.Gitid
  910. }
  911. return ""
  912. }
  913. func (m *CriuVersion) GetSublevel() int32 {
  914. if m != nil && m.Sublevel != nil {
  915. return *m.Sublevel
  916. }
  917. return 0
  918. }
  919. func (m *CriuVersion) GetExtra() int32 {
  920. if m != nil && m.Extra != nil {
  921. return *m.Extra
  922. }
  923. return 0
  924. }
  925. func (m *CriuVersion) GetName() string {
  926. if m != nil && m.Name != nil {
  927. return *m.Name
  928. }
  929. return ""
  930. }
  931. func init() {
  932. proto.RegisterType((*CriuPageServerInfo)(nil), "criu_page_server_info")
  933. proto.RegisterType((*CriuVethPair)(nil), "criu_veth_pair")
  934. proto.RegisterType((*ExtMountMap)(nil), "ext_mount_map")
  935. proto.RegisterType((*JoinNamespace)(nil), "join_namespace")
  936. proto.RegisterType((*InheritFd)(nil), "inherit_fd")
  937. proto.RegisterType((*CgroupRoot)(nil), "cgroup_root")
  938. proto.RegisterType((*UnixSk)(nil), "unix_sk")
  939. proto.RegisterType((*CriuOpts)(nil), "criu_opts")
  940. proto.RegisterType((*CriuDumpResp)(nil), "criu_dump_resp")
  941. proto.RegisterType((*CriuRestoreResp)(nil), "criu_restore_resp")
  942. proto.RegisterType((*CriuNotify)(nil), "criu_notify")
  943. proto.RegisterType((*CriuFeatures)(nil), "criu_features")
  944. proto.RegisterType((*CriuReq)(nil), "criu_req")
  945. proto.RegisterType((*CriuResp)(nil), "criu_resp")
  946. proto.RegisterType((*CriuVersion)(nil), "criu_version")
  947. proto.RegisterEnum("CriuCgMode", CriuCgMode_name, CriuCgMode_value)
  948. proto.RegisterEnum("CriuReqType", CriuReqType_name, CriuReqType_value)
  949. }
  950. func init() { proto.RegisterFile("rpc/rpc.proto", fileDescriptor0) }
  951. var fileDescriptor0 = []byte{
  952. // 1835 bytes of a gzipped FileDescriptorProto
  953. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x56, 0xeb, 0x72, 0x5b, 0xb7,
  954. 0x11, 0x0e, 0x29, 0xf1, 0x06, 0x5e, 0x7c, 0x0c, 0x5f, 0x02, 0xc7, 0xb5, 0xad, 0xd0, 0x51, 0xa2,
  955. 0x2a, 0x2e, 0x93, 0x30, 0x76, 0x5c, 0x67, 0xda, 0x1f, 0x1e, 0x8a, 0x74, 0xd8, 0x48, 0x22, 0x07,
  956. 0xa4, 0xdc, 0xc9, 0x2f, 0xcc, 0xd1, 0x39, 0x20, 0x05, 0xf3, 0xdc, 0x0a, 0x80, 0x8a, 0xe4, 0x97,
  957. 0xe8, 0xbf, 0x3e, 0x57, 0xde, 0xa4, 0xaf, 0xd0, 0xd9, 0x05, 0x28, 0x4b, 0x49, 0x66, 0xd2, 0x7f,
  958. 0xd8, 0x0f, 0xbb, 0xc0, 0xde, 0x77, 0x49, 0x5b, 0x17, 0xd1, 0x57, 0xba, 0x88, 0x7a, 0x85, 0xce,
  959. 0x6d, 0xde, 0x5d, 0x92, 0x7b, 0x91, 0x56, 0x6b, 0x51, 0x84, 0x4b, 0x29, 0x8c, 0xd4, 0xe7, 0x52,
  960. 0x0b, 0x95, 0x2d, 0x72, 0xca, 0x48, 0x2d, 0x8c, 0x63, 0x2d, 0x8d, 0x61, 0xa5, 0x9d, 0xd2, 0x5e,
  961. 0x83, 0x6f, 0x48, 0x4a, 0xc9, 0x76, 0x91, 0x6b, 0xcb, 0xca, 0x3b, 0xa5, 0xbd, 0x0a, 0xc7, 0x33,
  962. 0x0d, 0xc8, 0x56, 0xa1, 0x62, 0xb6, 0x85, 0x10, 0x1c, 0x69, 0x87, 0x94, 0x17, 0x31, 0xdb, 0x46,
  963. 0xa0, 0xbc, 0x88, 0xbb, 0x7f, 0x23, 0x1d, 0xfc, 0xe8, 0x5c, 0xda, 0x33, 0x51, 0x84, 0x4a, 0xd3,
  964. 0x3b, 0xa4, 0xa2, 0x16, 0x42, 0x65, 0xac, 0xb4, 0x53, 0xde, 0x6b, 0xf0, 0x6d, 0xb5, 0x18, 0x67,
  965. 0xf4, 0x1e, 0xa9, 0xaa, 0x85, 0xc8, 0xd7, 0xf0, 0x3c, 0xa0, 0x15, 0xb5, 0x98, 0xac, 0x6d, 0xf7,
  966. 0x5b, 0xd2, 0x96, 0x17, 0x56, 0xa4, 0xf9, 0x3a, 0xb3, 0x22, 0x0d, 0x0b, 0xf8, 0x70, 0x25, 0x2f,
  967. 0xbd, 0x28, 0x1c, 0x01, 0x39, 0x0f, 0x13, 0x2f, 0x06, 0xc7, 0xee, 0x5b, 0xd2, 0x79, 0x97, 0xab,
  968. 0x4c, 0x64, 0x61, 0x2a, 0x4d, 0x11, 0x46, 0x12, 0x94, 0xca, 0x8c, 0x17, 0x2a, 0x67, 0x86, 0x7e,
  969. 0x4c, 0x6a, 0x99, 0x11, 0x0b, 0x95, 0x48, 0x2f, 0x57, 0xcd, 0xcc, 0x48, 0x25, 0x92, 0x3e, 0x24,
  970. 0x0d, 0x79, 0x61, 0x75, 0x28, 0xf2, 0xc2, 0xa2, 0x55, 0x0d, 0x5e, 0x47, 0x60, 0x52, 0xd8, 0x6e,
  971. 0x8f, 0x10, 0x95, 0x9d, 0x49, 0xad, 0xac, 0x58, 0xc4, 0xbf, 0xa3, 0x89, 0x33, 0x1d, 0x1e, 0x74,
  972. 0xa6, 0xbf, 0x20, 0xcd, 0x68, 0xa9, 0xf3, 0x75, 0x21, 0x74, 0x9e, 0x5b, 0xf0, 0x5f, 0x64, 0x75,
  973. 0xe2, 0xdd, 0x8a, 0x67, 0xf4, 0x69, 0x68, 0xcf, 0xbc, 0x16, 0x78, 0xee, 0x3e, 0x21, 0xb5, 0x75,
  974. 0xa6, 0x2e, 0x84, 0x59, 0xd1, 0xbb, 0xa4, 0xa2, 0xb2, 0x3c, 0x96, 0xf8, 0x4b, 0x9b, 0x3b, 0xa2,
  975. 0xfb, 0xdf, 0x36, 0x69, 0xa0, 0x4f, 0xf3, 0xc2, 0x1a, 0xda, 0x25, 0x6d, 0x95, 0x86, 0x4b, 0x69,
  976. 0x44, 0xac, 0xb4, 0x58, 0xc4, 0xc8, 0x5b, 0xe1, 0x4d, 0x07, 0x1e, 0x28, 0x3d, 0x8a, 0x37, 0x61,
  977. 0x2a, 0x7f, 0x08, 0xd3, 0x53, 0xd2, 0x4e, 0x64, 0x78, 0x2e, 0x85, 0x5e, 0x67, 0x99, 0xca, 0x96,
  978. 0x68, 0x6c, 0x9d, 0xb7, 0x10, 0xe4, 0x0e, 0xa3, 0x8f, 0x49, 0x13, 0xbc, 0xef, 0xb5, 0xc1, 0xa0,
  979. 0xd6, 0x39, 0x38, 0xe8, 0x24, 0x53, 0x17, 0xb3, 0x15, 0xfd, 0x82, 0xdc, 0xb2, 0x51, 0x21, 0xa4,
  980. 0xb1, 0xe1, 0x69, 0xa2, 0xcc, 0x99, 0x8c, 0x59, 0x05, 0x79, 0x3a, 0x36, 0x2a, 0x86, 0x1f, 0x50,
  981. 0x60, 0x94, 0xe7, 0xa1, 0x51, 0xe7, 0x52, 0xc4, 0xf2, 0x5c, 0x45, 0xd2, 0xb0, 0xaa, 0x63, 0xf4,
  982. 0xf0, 0x81, 0x43, 0xc1, 0xff, 0xe6, 0x4c, 0x26, 0x89, 0x78, 0x97, 0x9f, 0xb2, 0x1a, 0xb2, 0xd4,
  983. 0x11, 0xf8, 0x47, 0x7e, 0x4a, 0x1f, 0x11, 0x02, 0x21, 0x13, 0x49, 0x1e, 0xad, 0x0c, 0xab, 0x3b,
  984. 0x6d, 0x00, 0x39, 0x04, 0x80, 0x3e, 0x26, 0x8d, 0x24, 0x5f, 0x8a, 0x44, 0x9e, 0xcb, 0x84, 0x35,
  985. 0xc0, 0xd4, 0xef, 0x4b, 0x7d, 0x5e, 0x4f, 0xf2, 0xe5, 0x21, 0x40, 0xf4, 0x01, 0x81, 0xb3, 0x8b,
  986. 0x3a, 0x71, 0xa9, 0x9d, 0xe4, 0x4b, 0x0c, 0xfb, 0xe7, 0xa4, 0x5c, 0x18, 0xd6, 0xdc, 0x29, 0xed,
  987. 0x35, 0xfb, 0xf7, 0x7b, 0xbf, 0x5b, 0x18, 0xbc, 0x5c, 0x18, 0xba, 0x4b, 0x3a, 0x59, 0x6e, 0xd5,
  988. 0xe2, 0x52, 0x98, 0x48, 0xab, 0xc2, 0x1a, 0xd6, 0x42, 0x2d, 0xda, 0x0e, 0x9d, 0x39, 0x10, 0xa2,
  989. 0x0a, 0x11, 0x67, 0x6d, 0x17, 0x69, 0x8c, 0xfe, 0x23, 0x42, 0x8a, 0x50, 0xcb, 0xcc, 0x0a, 0x95,
  990. 0x2e, 0x59, 0x07, 0x6f, 0x1a, 0x0e, 0x19, 0xa7, 0x4b, 0x30, 0xdc, 0xea, 0x30, 0x5a, 0x89, 0x54,
  991. 0xa6, 0xec, 0x96, 0x33, 0x1c, 0x81, 0x23, 0x99, 0x82, 0x6c, 0xb8, 0xb6, 0xb9, 0x88, 0x65, 0xbc,
  992. 0x2e, 0x58, 0xe0, 0x0c, 0x07, 0xe4, 0x00, 0x00, 0x08, 0xd3, 0xcf, 0xb9, 0x5e, 0x6d, 0xe2, 0x7f,
  993. 0x1b, 0xa3, 0xdc, 0x00, 0xc8, 0x45, 0xff, 0x11, 0x21, 0x89, 0xca, 0x56, 0x42, 0xcb, 0x34, 0x2c,
  994. 0x18, 0x75, 0xe2, 0x80, 0x70, 0x00, 0xe8, 0x2e, 0xa9, 0x40, 0x71, 0x1a, 0x76, 0x67, 0x67, 0x6b,
  995. 0xaf, 0xd9, 0xbf, 0xd5, 0xbb, 0x59, 0xaf, 0xdc, 0xdd, 0xd2, 0xa7, 0xa4, 0x16, 0x15, 0x6b, 0x11,
  996. 0x85, 0x05, 0xbb, 0xbb, 0x53, 0xda, 0x6b, 0x7f, 0x4f, 0x9e, 0xf7, 0x5f, 0x3d, 0x7f, 0xf5, 0xdd,
  997. 0xcb, 0xfe, 0xab, 0x17, 0xbc, 0x1a, 0x15, 0xeb, 0x41, 0x58, 0xd0, 0x27, 0xa4, 0xb9, 0xc8, 0x75,
  998. 0x24, 0x85, 0xd2, 0xf0, 0xd7, 0x3d, 0xfc, 0x8b, 0x20, 0x34, 0x06, 0x04, 0x82, 0x20, 0x2f, 0x64,
  999. 0x24, 0xa2, 0x34, 0x66, 0xf7, 0x77, 0xb6, 0x20, 0x08, 0x40, 0x0f, 0x52, 0x48, 0x92, 0x1a, 0xd6,
  1000. 0x7a, 0x66, 0xd9, 0xc7, 0xa8, 0x49, 0xa7, 0x77, 0xa3, 0xf6, 0x79, 0x55, 0x5e, 0xd8, 0xa3, 0xcc,
  1001. 0x42, 0x14, 0xd2, 0x30, 0x83, 0xf8, 0xb8, 0xf2, 0x32, 0x8c, 0xb9, 0x28, 0x38, 0x74, 0xe0, 0x40,
  1002. 0xba, 0x4b, 0x6a, 0xd1, 0x12, 0x4b, 0x8f, 0x3d, 0xc0, 0xf7, 0x5a, 0xbd, 0x6b, 0xe5, 0xc8, 0xab,
  1003. 0xd1, 0x92, 0x43, 0x60, 0x9e, 0x90, 0xa6, 0x36, 0x56, 0x18, 0x75, 0x9a, 0x40, 0x1d, 0x7c, 0xe2,
  1004. 0x54, 0xd6, 0xc6, 0xce, 0x1c, 0x42, 0xf7, 0xaf, 0x97, 0x3d, 0x7b, 0x88, 0x4f, 0x35, 0x7b, 0x1f,
  1005. 0x20, 0xde, 0xf0, 0xe7, 0x51, 0x4c, 0x77, 0x48, 0x0b, 0x23, 0xb5, 0x31, 0xe4, 0x4f, 0xee, 0x35,
  1006. 0xc0, 0x86, 0x4e, 0xf9, 0x27, 0xae, 0xa6, 0xcc, 0x59, 0xa8, 0xe1, 0xbb, 0x47, 0x8e, 0x41, 0x5e,
  1007. 0xd8, 0x99, 0x43, 0x36, 0x0c, 0x69, 0x68, 0xac, 0xd4, 0x86, 0x3d, 0xbe, 0x62, 0x38, 0x72, 0x08,
  1008. 0xb8, 0xd0, 0xac, 0x54, 0x81, 0xef, 0x3f, 0x71, 0x2e, 0x04, 0x1a, 0x1e, 0x87, 0xf6, 0x95, 0x85,
  1009. 0xa7, 0x89, 0x14, 0x0b, 0xc3, 0x76, 0xf0, 0xae, 0xee, 0x80, 0x91, 0xa1, 0x7b, 0xa4, 0xe9, 0x2b,
  1010. 0x59, 0xa8, 0x2c, 0x67, 0x9f, 0xa2, 0x21, 0xf5, 0x9e, 0xc7, 0x78, 0x63, 0x8d, 0x45, 0x3d, 0xce,
  1011. 0x72, 0xfa, 0x77, 0x72, 0xe7, 0xa6, 0x83, 0x45, 0x0a, 0x4d, 0xa8, 0xbb, 0x53, 0xda, 0xeb, 0xf4,
  1012. 0xdb, 0x2e, 0x3f, 0xa2, 0x25, 0x82, 0xfc, 0xf6, 0x0d, 0xa7, 0x1f, 0xe5, 0xb1, 0x84, 0x8f, 0x96,
  1013. 0x67, 0xb9, 0xb1, 0x22, 0x51, 0xa9, 0xb2, 0xec, 0x29, 0x66, 0x4b, 0xed, 0x9b, 0xaf, 0x9f, 0xff,
  1014. 0xf5, 0xc5, 0xcb, 0xef, 0x38, 0xc1, 0xbb, 0x43, 0xb8, 0xa2, 0x7b, 0x24, 0xc0, 0x44, 0x11, 0x26,
  1015. 0x0a, 0x33, 0x01, 0xdd, 0xcf, 0xb0, 0xcf, 0x50, 0xed, 0x0e, 0xe2, 0xb3, 0x28, 0xcc, 0xa6, 0x80,
  1016. 0xd2, 0x4f, 0x20, 0x6f, 0xac, 0xd4, 0x59, 0x98, 0xb0, 0x5d, 0x6f, 0x98, 0xa7, 0x31, 0xa7, 0xd2,
  1017. 0xc2, 0x5e, 0x8a, 0xcc, 0xb0, 0xcf, 0xe1, 0x33, 0x5e, 0x43, 0xfa, 0x18, 0x6c, 0xae, 0xb9, 0x51,
  1018. 0x60, 0xd8, 0x17, 0x3e, 0xbb, 0x6f, 0x8e, 0x06, 0x5e, 0x05, 0xfa, 0xd8, 0xd0, 0x4f, 0x49, 0xcb,
  1019. 0x67, 0x47, 0xa1, 0xf3, 0xc2, 0xb0, 0x3f, 0x63, 0x85, 0xfa, 0x06, 0x3e, 0x05, 0x88, 0xee, 0x93,
  1020. 0xdb, 0xd7, 0x59, 0x5c, 0x27, 0xd9, 0x47, 0xbe, 0x5b, 0xd7, 0xf8, 0xb0, 0xa3, 0x3c, 0x27, 0xf7,
  1021. 0x3d, 0x6f, 0xbc, 0x4e, 0x0b, 0x11, 0xe5, 0x99, 0xd5, 0x79, 0x92, 0x48, 0xcd, 0xbe, 0x44, 0xed,
  1022. 0xef, 0xba, 0xdb, 0x83, 0x75, 0x5a, 0x0c, 0xae, 0xee, 0xa0, 0x2b, 0x2f, 0xb4, 0x94, 0xef, 0x37,
  1023. 0x8e, 0x67, 0xcf, 0xf0, 0xf5, 0x96, 0x03, 0x9d, 0x8f, 0x61, 0x42, 0x5b, 0x95, 0x4a, 0x98, 0x95,
  1024. 0x7f, 0x71, 0xd6, 0x7a, 0x92, 0x7e, 0x49, 0x28, 0xf4, 0x63, 0xcc, 0x0e, 0x95, 0x89, 0x45, 0xa2,
  1025. 0x96, 0x67, 0x96, 0xf5, 0x30, 0x83, 0xa0, 0x53, 0xcf, 0x56, 0xaa, 0x18, 0x67, 0x23, 0x84, 0xc1,
  1026. 0xe0, 0x9f, 0x65, 0xb8, 0x12, 0xe6, 0xd2, 0x44, 0x36, 0x31, 0xec, 0x2b, 0x64, 0x6b, 0x02, 0x36,
  1027. 0x73, 0x10, 0x36, 0x8e, 0xf0, 0xfd, 0x25, 0xf6, 0x42, 0xc3, 0xbe, 0xf6, 0x8d, 0x23, 0x7c, 0x7f,
  1028. 0x39, 0x05, 0x00, 0x9b, 0xb5, 0x0d, 0xed, 0xda, 0x40, 0x5d, 0x7c, 0x83, 0x5d, 0xa7, 0xee, 0x80,
  1029. 0x51, 0x0c, 0xce, 0xca, 0x75, 0x71, 0x06, 0x61, 0xb5, 0xc6, 0x67, 0x33, 0xeb, 0x3b, 0x55, 0xdc,
  1030. 0xc5, 0xd4, 0x1a, 0x97, 0xd2, 0x90, 0xf2, 0x51, 0x9e, 0x2d, 0x94, 0x6f, 0xce, 0xdf, 0xa2, 0xd1,
  1031. 0xc4, 0x41, 0xe0, 0xcd, 0xee, 0x33, 0xbf, 0x44, 0xa0, 0x2f, 0xb5, 0x34, 0x05, 0xe4, 0x83, 0x96,
  1032. 0xc6, 0xe6, 0x5a, 0xc6, 0x38, 0x50, 0xeb, 0xfc, 0x8a, 0xee, 0xee, 0x92, 0xdb, 0xc8, 0xed, 0x01,
  1033. 0x27, 0xe0, 0x47, 0xa0, 0x1b, 0x8e, 0x70, 0xec, 0xbe, 0x24, 0x4d, 0x64, 0x73, 0xbd, 0x9b, 0xde,
  1034. 0x27, 0x55, 0xd7, 0xd4, 0xfd, 0x80, 0xf6, 0xd4, 0x6f, 0x67, 0x67, 0xf7, 0x47, 0xd2, 0x46, 0xc1,
  1035. 0x85, 0x0c, 0xed, 0x5a, 0x3b, 0x47, 0xa4, 0x32, 0x15, 0xd8, 0xaf, 0x37, 0xda, 0xa4, 0x32, 0x9d,
  1036. 0x03, 0xfd, 0x2b, 0x27, 0x96, 0x7f, 0xe5, 0xc4, 0xee, 0x2f, 0x25, 0x52, 0xf7, 0xda, 0xfe, 0x8b,
  1037. 0x76, 0xc9, 0xb6, 0xbd, 0x2c, 0xdc, 0xb8, 0xef, 0xf4, 0x3b, 0xbd, 0xcd, 0x85, 0x00, 0x94, 0xe3,
  1038. 0x1d, 0x7d, 0x4c, 0xb6, 0x61, 0xee, 0xe3, 0x4b, 0xcd, 0x3e, 0xe9, 0x5d, 0x6d, 0x02, 0x1c, 0xf1,
  1039. 0xeb, 0x33, 0x6a, 0x1d, 0x45, 0xb0, 0xc7, 0x6d, 0xdd, 0x98, 0x51, 0x0e, 0x04, 0x9d, 0x57, 0x52,
  1040. 0x16, 0x22, 0x2f, 0x64, 0xe6, 0x27, 0x7b, 0x1d, 0x80, 0x49, 0x21, 0x33, 0xba, 0x4f, 0xea, 0x1b,
  1041. 0xe3, 0x70, 0xa2, 0x37, 0x37, 0xba, 0x6c, 0x50, 0x7e, 0x75, 0xbf, 0xf1, 0x4f, 0x15, 0x53, 0x11,
  1042. 0xfd, 0xf3, 0xef, 0x2d, 0xbf, 0x9f, 0xa0, 0xe3, 0xff, 0x1f, 0x9b, 0x18, 0xa9, 0x6d, 0x94, 0x85,
  1043. 0x4d, 0xa8, 0xce, 0x37, 0x24, 0x7d, 0x4a, 0xb6, 0x21, 0xe8, 0x68, 0xc3, 0xd5, 0x6c, 0xba, 0x4a,
  1044. 0x03, 0x8e, 0x97, 0xf4, 0x19, 0xa9, 0xf9, 0x58, 0xa3, 0x25, 0xcd, 0x3e, 0xed, 0xfd, 0x26, 0x01,
  1045. 0xf8, 0x86, 0x85, 0x7e, 0x46, 0xaa, 0xce, 0x15, 0xde, 0xb4, 0x56, 0xef, 0x5a, 0x1a, 0x70, 0x7f,
  1046. 0xe7, 0x57, 0x82, 0xea, 0x1f, 0xae, 0x04, 0x0f, 0x20, 0x7c, 0x42, 0x6a, 0x9d, 0xe5, 0xb8, 0xb0,
  1047. 0x54, 0x78, 0x2d, 0xd2, 0x43, 0x20, 0x6f, 0x78, 0xb1, 0xfe, 0x07, 0x5e, 0x7c, 0x08, 0x2e, 0x83,
  1048. 0x67, 0x52, 0xb3, 0xc4, 0xe5, 0xa5, 0xc1, 0xeb, 0xf8, 0x4e, 0x6a, 0x96, 0x30, 0x19, 0xcf, 0xa5,
  1049. 0x36, 0x2a, 0xcf, 0x70, 0x71, 0x69, 0x6e, 0x7a, 0xb0, 0x07, 0xf9, 0xe6, 0x16, 0x73, 0x18, 0x0b,
  1050. 0x10, 0x77, 0x99, 0x0a, 0xf7, 0x54, 0xf7, 0x3f, 0x25, 0xd2, 0xba, 0x2e, 0x01, 0x8b, 0x65, 0x1a,
  1051. 0xbe, 0xcb, 0xb5, 0xaf, 0x07, 0x47, 0x20, 0xaa, 0xb2, 0x5c, 0xfb, 0x1d, 0xd6, 0x11, 0x80, 0x2e,
  1052. 0x95, 0xf5, 0x5b, 0x7e, 0x83, 0x3b, 0x02, 0x0a, 0xd0, 0xac, 0x4f, 0xdd, 0xb2, 0xb5, 0xed, 0x6b,
  1053. 0xdf, 0xd3, 0x20, 0x81, 0x4b, 0x33, 0x3a, 0xb8, 0xc2, 0x1d, 0x01, 0x5b, 0x11, 0xb4, 0x5d, 0xf4,
  1054. 0x69, 0x83, 0xe3, 0x79, 0x5f, 0x78, 0xbd, 0xfc, 0x34, 0xa1, 0x84, 0x54, 0xc7, 0x6f, 0x8e, 0x27,
  1055. 0x7c, 0x18, 0x7c, 0x44, 0x9b, 0xa4, 0x36, 0x78, 0x23, 0x8e, 0x27, 0xc7, 0xc3, 0xa0, 0x44, 0x1b,
  1056. 0xa4, 0x32, 0xe5, 0x93, 0xe9, 0x2c, 0x28, 0xd3, 0x3a, 0xd9, 0x9e, 0x4d, 0x46, 0xf3, 0x60, 0x0b,
  1057. 0x4e, 0xa3, 0x93, 0xc3, 0xc3, 0x60, 0x1b, 0xe4, 0x66, 0x73, 0x3e, 0x1e, 0xcc, 0x83, 0x0a, 0xc8,
  1058. 0x1d, 0x0c, 0x47, 0xaf, 0x4f, 0x0e, 0xe7, 0x41, 0x75, 0xff, 0x97, 0x92, 0x2f, 0xd6, 0x4d, 0xc6,
  1059. 0xc1, 0x4b, 0xc3, 0xa3, 0xe9, 0xfc, 0xa7, 0xe0, 0x23, 0x90, 0x3f, 0x38, 0x39, 0x9a, 0x06, 0x25,
  1060. 0x90, 0xe1, 0xc3, 0xd9, 0x1c, 0x3e, 0x2e, 0x03, 0xc7, 0xe0, 0x87, 0xe1, 0xe0, 0xc7, 0x60, 0x8b,
  1061. 0xb6, 0x48, 0x7d, 0xca, 0x87, 0x02, 0xb9, 0xb6, 0xe9, 0x2d, 0xd2, 0x9c, 0xbe, 0x7e, 0x33, 0x14,
  1062. 0xb3, 0x21, 0x7f, 0x3b, 0xe4, 0x41, 0x05, 0xbe, 0x3d, 0x9e, 0xcc, 0xc7, 0xa3, 0x9f, 0x82, 0x2a,
  1063. 0x0d, 0x48, 0x6b, 0x30, 0x3d, 0x19, 0x1f, 0x8f, 0x26, 0x8e, 0xbd, 0x46, 0x6f, 0x93, 0xf6, 0x06,
  1064. 0x71, 0xef, 0xd5, 0x01, 0x1a, 0x0d, 0x5f, 0xcf, 0x4f, 0xf8, 0xd0, 0x43, 0x0d, 0xf8, 0xfa, 0xed,
  1065. 0x90, 0xcf, 0xc6, 0x93, 0xe3, 0x80, 0xc0, 0x7f, 0xff, 0x7c, 0x3d, 0x9e, 0x8b, 0xe9, 0xf8, 0x20,
  1066. 0x68, 0xd2, 0xbb, 0x24, 0xb8, 0xf6, 0x9f, 0x18, 0xfc, 0x70, 0x78, 0x10, 0xb4, 0xfe, 0x17, 0x00,
  1067. 0x00, 0xff, 0xff, 0xf8, 0x9f, 0x0e, 0x7d, 0xca, 0x0d, 0x00, 0x00,
  1068. }