1// Code generated by protoc-gen-gogo. DO NOT EDIT. 2// source: rpcpb/rpc.proto 3 4package rpcpb 5 6import ( 7 context "context" 8 encoding_binary "encoding/binary" 9 fmt "fmt" 10 _ "github.com/gogo/protobuf/gogoproto" 11 proto "github.com/golang/protobuf/proto" 12 grpc "google.golang.org/grpc" 13 codes "google.golang.org/grpc/codes" 14 status "google.golang.org/grpc/status" 15 io "io" 16 math "math" 17 math_bits "math/bits" 18) 19 20// Reference imports to suppress errors if they are not otherwise used. 21var _ = proto.Marshal 22var _ = fmt.Errorf 23var _ = math.Inf 24 25// This is a compile-time assertion to ensure that this generated file 26// is compatible with the proto package it is being compiled against. 27// A compilation error at this line likely means your copy of the 28// proto package needs to be updated. 29const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package 30 31type StresserType int32 32 33const ( 34 StresserType_KV_WRITE_SMALL StresserType = 0 35 StresserType_KV_WRITE_LARGE StresserType = 1 36 StresserType_KV_READ_ONE_KEY StresserType = 2 37 StresserType_KV_READ_RANGE StresserType = 3 38 StresserType_KV_DELETE_ONE_KEY StresserType = 4 39 StresserType_KV_DELETE_RANGE StresserType = 5 40 StresserType_KV_TXN_WRITE_DELETE StresserType = 6 41 StresserType_LEASE StresserType = 10 42 StresserType_ELECTION_RUNNER StresserType = 20 43 StresserType_WATCH_RUNNER StresserType = 31 44 StresserType_LOCK_RACER_RUNNER StresserType = 41 45 StresserType_LEASE_RUNNER StresserType = 51 46) 47 48var StresserType_name = map[int32]string{ 49 0: "KV_WRITE_SMALL", 50 1: "KV_WRITE_LARGE", 51 2: "KV_READ_ONE_KEY", 52 3: "KV_READ_RANGE", 53 4: "KV_DELETE_ONE_KEY", 54 5: "KV_DELETE_RANGE", 55 6: "KV_TXN_WRITE_DELETE", 56 10: "LEASE", 57 20: "ELECTION_RUNNER", 58 31: "WATCH_RUNNER", 59 41: "LOCK_RACER_RUNNER", 60 51: "LEASE_RUNNER", 61} 62 63var StresserType_value = map[string]int32{ 64 "KV_WRITE_SMALL": 0, 65 "KV_WRITE_LARGE": 1, 66 "KV_READ_ONE_KEY": 2, 67 "KV_READ_RANGE": 3, 68 "KV_DELETE_ONE_KEY": 4, 69 "KV_DELETE_RANGE": 5, 70 "KV_TXN_WRITE_DELETE": 6, 71 "LEASE": 10, 72 "ELECTION_RUNNER": 20, 73 "WATCH_RUNNER": 31, 74 "LOCK_RACER_RUNNER": 41, 75 "LEASE_RUNNER": 51, 76} 77 78func (x StresserType) String() string { 79 return proto.EnumName(StresserType_name, int32(x)) 80} 81 82func (StresserType) EnumDescriptor() ([]byte, []int) { 83 return fileDescriptor_4fbc93a8dcc3881e, []int{0} 84} 85 86type Checker int32 87 88const ( 89 Checker_KV_HASH Checker = 0 90 Checker_LEASE_EXPIRE Checker = 1 91 Checker_RUNNER Checker = 2 92 Checker_NO_CHECK Checker = 3 93) 94 95var Checker_name = map[int32]string{ 96 0: "KV_HASH", 97 1: "LEASE_EXPIRE", 98 2: "RUNNER", 99 3: "NO_CHECK", 100} 101 102var Checker_value = map[string]int32{ 103 "KV_HASH": 0, 104 "LEASE_EXPIRE": 1, 105 "RUNNER": 2, 106 "NO_CHECK": 3, 107} 108 109func (x Checker) String() string { 110 return proto.EnumName(Checker_name, int32(x)) 111} 112 113func (Checker) EnumDescriptor() ([]byte, []int) { 114 return fileDescriptor_4fbc93a8dcc3881e, []int{1} 115} 116 117type Operation int32 118 119const ( 120 // NOT_STARTED is the agent status before etcd first start. 121 Operation_NOT_STARTED Operation = 0 122 // INITIAL_START_ETCD is only called to start etcd, the very first time. 123 Operation_INITIAL_START_ETCD Operation = 10 124 // RESTART_ETCD is sent to restart killed etcd. 125 Operation_RESTART_ETCD Operation = 11 126 // SIGTERM_ETCD pauses etcd process while keeping data directories 127 // and previous etcd configurations. 128 Operation_SIGTERM_ETCD Operation = 20 129 // SIGQUIT_ETCD_AND_REMOVE_DATA kills etcd process and removes all data 130 // directories to simulate destroying the whole machine. 131 Operation_SIGQUIT_ETCD_AND_REMOVE_DATA Operation = 21 132 // SAVE_SNAPSHOT is sent to trigger local member to download its snapshot 133 // onto its local disk with the specified path from tester. 134 Operation_SAVE_SNAPSHOT Operation = 30 135 // RESTORE_RESTART_FROM_SNAPSHOT is sent to trigger local member to 136 // restore a cluster from existing snapshot from disk, and restart 137 // an etcd instance from recovered data. 138 Operation_RESTORE_RESTART_FROM_SNAPSHOT Operation = 31 139 // RESTART_FROM_SNAPSHOT is sent to trigger local member to restart 140 // and join an existing cluster that has been recovered from a snapshot. 141 // Local member joins this cluster with fresh data. 142 Operation_RESTART_FROM_SNAPSHOT Operation = 32 143 // SIGQUIT_ETCD_AND_ARCHIVE_DATA is sent when consistency check failed, 144 // thus need to archive etcd data directories. 145 Operation_SIGQUIT_ETCD_AND_ARCHIVE_DATA Operation = 40 146 // SIGQUIT_ETCD_AND_REMOVE_DATA_AND_STOP_AGENT destroys etcd process, 147 // etcd data, and agent server. 148 Operation_SIGQUIT_ETCD_AND_REMOVE_DATA_AND_STOP_AGENT Operation = 41 149 // BLACKHOLE_PEER_PORT_TX_RX drops all outgoing/incoming packets from/to 150 // the peer port on target member's peer port. 151 Operation_BLACKHOLE_PEER_PORT_TX_RX Operation = 100 152 // UNBLACKHOLE_PEER_PORT_TX_RX removes outgoing/incoming packet dropping. 153 Operation_UNBLACKHOLE_PEER_PORT_TX_RX Operation = 101 154 // DELAY_PEER_PORT_TX_RX delays all outgoing/incoming packets from/to 155 // the peer port on target member's peer port. 156 Operation_DELAY_PEER_PORT_TX_RX Operation = 200 157 // UNDELAY_PEER_PORT_TX_RX removes all outgoing/incoming delays. 158 Operation_UNDELAY_PEER_PORT_TX_RX Operation = 201 159) 160 161var Operation_name = map[int32]string{ 162 0: "NOT_STARTED", 163 10: "INITIAL_START_ETCD", 164 11: "RESTART_ETCD", 165 20: "SIGTERM_ETCD", 166 21: "SIGQUIT_ETCD_AND_REMOVE_DATA", 167 30: "SAVE_SNAPSHOT", 168 31: "RESTORE_RESTART_FROM_SNAPSHOT", 169 32: "RESTART_FROM_SNAPSHOT", 170 40: "SIGQUIT_ETCD_AND_ARCHIVE_DATA", 171 41: "SIGQUIT_ETCD_AND_REMOVE_DATA_AND_STOP_AGENT", 172 100: "BLACKHOLE_PEER_PORT_TX_RX", 173 101: "UNBLACKHOLE_PEER_PORT_TX_RX", 174 200: "DELAY_PEER_PORT_TX_RX", 175 201: "UNDELAY_PEER_PORT_TX_RX", 176} 177 178var Operation_value = map[string]int32{ 179 "NOT_STARTED": 0, 180 "INITIAL_START_ETCD": 10, 181 "RESTART_ETCD": 11, 182 "SIGTERM_ETCD": 20, 183 "SIGQUIT_ETCD_AND_REMOVE_DATA": 21, 184 "SAVE_SNAPSHOT": 30, 185 "RESTORE_RESTART_FROM_SNAPSHOT": 31, 186 "RESTART_FROM_SNAPSHOT": 32, 187 "SIGQUIT_ETCD_AND_ARCHIVE_DATA": 40, 188 "SIGQUIT_ETCD_AND_REMOVE_DATA_AND_STOP_AGENT": 41, 189 "BLACKHOLE_PEER_PORT_TX_RX": 100, 190 "UNBLACKHOLE_PEER_PORT_TX_RX": 101, 191 "DELAY_PEER_PORT_TX_RX": 200, 192 "UNDELAY_PEER_PORT_TX_RX": 201, 193} 194 195func (x Operation) String() string { 196 return proto.EnumName(Operation_name, int32(x)) 197} 198 199func (Operation) EnumDescriptor() ([]byte, []int) { 200 return fileDescriptor_4fbc93a8dcc3881e, []int{2} 201} 202 203// Case defines various system faults or test case in distributed systems, 204// in order to verify correct behavior of etcd servers and clients. 205type Case int32 206 207const ( 208 // SIGTERM_ONE_FOLLOWER stops a randomly chosen follower (non-leader) 209 // but does not delete its data directories on disk for next restart. 210 // It waits "delay-ms" before recovering this failure. 211 // The expected behavior is that the follower comes back online 212 // and rejoins the cluster, and then each member continues to process 213 // client requests ('Put' request that requires Raft consensus). 214 Case_SIGTERM_ONE_FOLLOWER Case = 0 215 // SIGTERM_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT stops a randomly chosen 216 // follower but does not delete its data directories on disk for next 217 // restart. And waits until most up-to-date node (leader) applies the 218 // snapshot count of entries since the stop operation. 219 // The expected behavior is that the follower comes back online and 220 // rejoins the cluster, and then active leader sends snapshot 221 // to the follower to force it to follow the leader's log. 222 // As always, after recovery, each member must be able to process 223 // client requests. 224 Case_SIGTERM_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT Case = 1 225 // SIGTERM_LEADER stops the active leader node but does not delete its 226 // data directories on disk for next restart. Then it waits "delay-ms" 227 // before recovering this failure, in order to trigger election timeouts. 228 // The expected behavior is that a new leader gets elected, and the 229 // old leader comes back online and rejoins the cluster as a follower. 230 // As always, after recovery, each member must be able to process 231 // client requests. 232 Case_SIGTERM_LEADER Case = 2 233 // SIGTERM_LEADER_UNTIL_TRIGGER_SNAPSHOT stops the active leader node 234 // but does not delete its data directories on disk for next restart. 235 // And waits until most up-to-date node ("new" leader) applies the 236 // snapshot count of entries since the stop operation. 237 // The expected behavior is that cluster elects a new leader, and the 238 // old leader comes back online and rejoins the cluster as a follower. 239 // And it receives the snapshot from the new leader to overwrite its 240 // store. As always, after recovery, each member must be able to 241 // process client requests. 242 Case_SIGTERM_LEADER_UNTIL_TRIGGER_SNAPSHOT Case = 3 243 // SIGTERM_QUORUM stops majority number of nodes to make the whole cluster 244 // inoperable but does not delete data directories on stopped nodes 245 // for next restart. And it waits "delay-ms" before recovering failure. 246 // The expected behavior is that nodes come back online, thus cluster 247 // comes back operative as well. As always, after recovery, each member 248 // must be able to process client requests. 249 Case_SIGTERM_QUORUM Case = 4 250 // SIGTERM_ALL stops the whole cluster but does not delete data directories 251 // on disk for next restart. And it waits "delay-ms" before recovering 252 // this failure. 253 // The expected behavior is that nodes come back online, thus cluster 254 // comes back operative as well. As always, after recovery, each member 255 // must be able to process client requests. 256 Case_SIGTERM_ALL Case = 5 257 // SIGQUIT_AND_REMOVE_ONE_FOLLOWER stops a randomly chosen follower 258 // (non-leader), deletes its data directories on disk, and removes 259 // this member from cluster (membership reconfiguration). On recovery, 260 // tester adds a new member, and this member joins the existing cluster 261 // with fresh data. It waits "delay-ms" before recovering this 262 // failure. This simulates destroying one follower machine, where operator 263 // needs to add a new member from a fresh machine. 264 // The expected behavior is that a new member joins the existing cluster, 265 // and then each member continues to process client requests. 266 Case_SIGQUIT_AND_REMOVE_ONE_FOLLOWER Case = 10 267 // SIGQUIT_AND_REMOVE_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT stops a randomly 268 // chosen follower, deletes its data directories on disk, and removes 269 // this member from cluster (membership reconfiguration). On recovery, 270 // tester adds a new member, and this member joins the existing cluster 271 // restart. On member remove, cluster waits until most up-to-date node 272 // (leader) applies the snapshot count of entries since the stop operation. 273 // This simulates destroying a leader machine, where operator needs to add 274 // a new member from a fresh machine. 275 // The expected behavior is that a new member joins the existing cluster, 276 // and receives a snapshot from the active leader. As always, after 277 // recovery, each member must be able to process client requests. 278 Case_SIGQUIT_AND_REMOVE_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT Case = 11 279 // SIGQUIT_AND_REMOVE_LEADER stops the active leader node, deletes its 280 // data directories on disk, and removes this member from cluster. 281 // On recovery, tester adds a new member, and this member joins the 282 // existing cluster with fresh data. It waits "delay-ms" before 283 // recovering this failure. This simulates destroying a leader machine, 284 // where operator needs to add a new member from a fresh machine. 285 // The expected behavior is that a new member joins the existing cluster, 286 // and then each member continues to process client requests. 287 Case_SIGQUIT_AND_REMOVE_LEADER Case = 12 288 // SIGQUIT_AND_REMOVE_LEADER_UNTIL_TRIGGER_SNAPSHOT stops the active leader, 289 // deletes its data directories on disk, and removes this member from 290 // cluster (membership reconfiguration). On recovery, tester adds a new 291 // member, and this member joins the existing cluster restart. On member 292 // remove, cluster waits until most up-to-date node (new leader) applies 293 // the snapshot count of entries since the stop operation. This simulates 294 // destroying a leader machine, where operator needs to add a new member 295 // from a fresh machine. 296 // The expected behavior is that on member remove, cluster elects a new 297 // leader, and a new member joins the existing cluster and receives a 298 // snapshot from the newly elected leader. As always, after recovery, each 299 // member must be able to process client requests. 300 Case_SIGQUIT_AND_REMOVE_LEADER_UNTIL_TRIGGER_SNAPSHOT Case = 13 301 // SIGQUIT_AND_REMOVE_QUORUM_AND_RESTORE_LEADER_SNAPSHOT_FROM_SCRATCH first 302 // stops majority number of nodes, deletes data directories on those quorum 303 // nodes, to make the whole cluster inoperable. Now that quorum and their 304 // data are totally destroyed, cluster cannot even remove unavailable nodes 305 // (e.g. 2 out of 3 are lost, so no leader can be elected). 306 // Let's assume 3-node cluster of node A, B, and C. One day, node A and B 307 // are destroyed and all their data are gone. The only viable solution is 308 // to recover from C's latest snapshot. 309 // 310 // To simulate: 311 // 1. Assume node C is the current leader with most up-to-date data. 312 // 2. Download snapshot from node C, before destroying node A and B. 313 // 3. Destroy node A and B, and make the whole cluster inoperable. 314 // 4. Now node C cannot operate either. 315 // 5. SIGTERM node C and remove its data directories. 316 // 6. Restore a new seed member from node C's latest snapshot file. 317 // 7. Add another member to establish 2-node cluster. 318 // 8. Add another member to establish 3-node cluster. 319 // 9. Add more if any. 320 // 321 // The expected behavior is that etcd successfully recovers from such 322 // disastrous situation as only 1-node survives out of 3-node cluster, 323 // new members joins the existing cluster, and previous data from snapshot 324 // are still preserved after recovery process. As always, after recovery, 325 // each member must be able to process client requests. 326 Case_SIGQUIT_AND_REMOVE_QUORUM_AND_RESTORE_LEADER_SNAPSHOT_FROM_SCRATCH Case = 14 327 // BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER drops all outgoing/incoming 328 // packets from/to the peer port on a randomly chosen follower 329 // (non-leader), and waits for "delay-ms" until recovery. 330 // The expected behavior is that once dropping operation is undone, 331 // each member must be able to process client requests. 332 Case_BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER Case = 100 333 // BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT drops 334 // all outgoing/incoming packets from/to the peer port on a randomly 335 // chosen follower (non-leader), and waits for most up-to-date node 336 // (leader) applies the snapshot count of entries since the blackhole 337 // operation. 338 // The expected behavior is that once packet drop operation is undone, 339 // the slow follower tries to catch up, possibly receiving the snapshot 340 // from the active leader. As always, after recovery, each member must 341 // be able to process client requests. 342 Case_BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT Case = 101 343 // BLACKHOLE_PEER_PORT_TX_RX_LEADER drops all outgoing/incoming packets 344 // from/to the peer port on the active leader (isolated), and waits for 345 // "delay-ms" until recovery, in order to trigger election timeout. 346 // The expected behavior is that after election timeout, a new leader gets 347 // elected, and once dropping operation is undone, the old leader comes 348 // back and rejoins the cluster as a follower. As always, after recovery, 349 // each member must be able to process client requests. 350 Case_BLACKHOLE_PEER_PORT_TX_RX_LEADER Case = 102 351 // BLACKHOLE_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT drops all 352 // outgoing/incoming packets from/to the peer port on the active leader, 353 // and waits for most up-to-date node (leader) applies the snapshot 354 // count of entries since the blackhole operation. 355 // The expected behavior is that cluster elects a new leader, and once 356 // dropping operation is undone, the old leader comes back and rejoins 357 // the cluster as a follower. The slow follower tries to catch up, likely 358 // receiving the snapshot from the new active leader. As always, after 359 // recovery, each member must be able to process client requests. 360 Case_BLACKHOLE_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT Case = 103 361 // BLACKHOLE_PEER_PORT_TX_RX_QUORUM drops all outgoing/incoming packets 362 // from/to the peer ports on majority nodes of cluster, thus losing its 363 // leader and cluster being inoperable. And it waits for "delay-ms" 364 // until recovery. 365 // The expected behavior is that once packet drop operation is undone, 366 // nodes come back online, thus cluster comes back operative. As always, 367 // after recovery, each member must be able to process client requests. 368 Case_BLACKHOLE_PEER_PORT_TX_RX_QUORUM Case = 104 369 // BLACKHOLE_PEER_PORT_TX_RX_ALL drops all outgoing/incoming packets 370 // from/to the peer ports on all nodes, thus making cluster totally 371 // inoperable. It waits for "delay-ms" until recovery. 372 // The expected behavior is that once packet drop operation is undone, 373 // nodes come back online, thus cluster comes back operative. As always, 374 // after recovery, each member must be able to process client requests. 375 Case_BLACKHOLE_PEER_PORT_TX_RX_ALL Case = 105 376 // DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER delays outgoing/incoming packets 377 // from/to the peer port on a randomly chosen follower (non-leader). 378 // It waits for "delay-ms" until recovery. 379 // The expected behavior is that once packet delay operation is undone, 380 // the follower comes back and tries to catch up with latest changes from 381 // cluster. And as always, after recovery, each member must be able to 382 // process client requests. 383 Case_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER Case = 200 384 // RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER delays outgoing/incoming 385 // packets from/to the peer port on a randomly chosen follower 386 // (non-leader) with a randomized time duration (thus isolated). It 387 // waits for "delay-ms" until recovery. 388 // The expected behavior is that once packet delay operation is undone, 389 // each member must be able to process client requests. 390 Case_RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER Case = 201 391 // DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT delays 392 // outgoing/incoming packets from/to the peer port on a randomly chosen 393 // follower (non-leader), and waits for most up-to-date node (leader) 394 // applies the snapshot count of entries since the delay operation. 395 // The expected behavior is that the delayed follower gets isolated 396 // and behind the current active leader, and once delay operation is undone, 397 // the slow follower comes back and catches up possibly receiving snapshot 398 // from the active leader. As always, after recovery, each member must be 399 // able to process client requests. 400 Case_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT Case = 202 401 // RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT delays 402 // outgoing/incoming packets from/to the peer port on a randomly chosen 403 // follower (non-leader) with a randomized time duration, and waits for 404 // most up-to-date node (leader) applies the snapshot count of entries 405 // since the delay operation. 406 // The expected behavior is that the delayed follower gets isolated 407 // and behind the current active leader, and once delay operation is undone, 408 // the slow follower comes back and catches up, possibly receiving a 409 // snapshot from the active leader. As always, after recovery, each member 410 // must be able to process client requests. 411 Case_RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT Case = 203 412 // DELAY_PEER_PORT_TX_RX_LEADER delays outgoing/incoming packets from/to 413 // the peer port on the active leader. And waits for "delay-ms" until 414 // recovery. 415 // The expected behavior is that cluster may elect a new leader, and 416 // once packet delay operation is undone, the (old) leader comes back 417 // and tries to catch up with latest changes from cluster. As always, 418 // after recovery, each member must be able to process client requests. 419 Case_DELAY_PEER_PORT_TX_RX_LEADER Case = 204 420 // RANDOM_DELAY_PEER_PORT_TX_RX_LEADER delays outgoing/incoming packets 421 // from/to the peer port on the active leader with a randomized time 422 // duration. And waits for "delay-ms" until recovery. 423 // The expected behavior is that cluster may elect a new leader, and 424 // once packet delay operation is undone, the (old) leader comes back 425 // and tries to catch up with latest changes from cluster. As always, 426 // after recovery, each member must be able to process client requests. 427 Case_RANDOM_DELAY_PEER_PORT_TX_RX_LEADER Case = 205 428 // DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT delays 429 // outgoing/incoming packets from/to the peer port on the active leader, 430 // and waits for most up-to-date node (current or new leader) applies the 431 // snapshot count of entries since the delay operation. 432 // The expected behavior is that cluster may elect a new leader, and 433 // the old leader gets isolated and behind the current active leader, 434 // and once delay operation is undone, the slow follower comes back 435 // and catches up, likely receiving a snapshot from the active leader. 436 // As always, after recovery, each member must be able to process client 437 // requests. 438 Case_DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT Case = 206 439 // RANDOM_DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT delays 440 // outgoing/incoming packets from/to the peer port on the active leader, 441 // with a randomized time duration. And it waits for most up-to-date node 442 // (current or new leader) applies the snapshot count of entries since the 443 // delay operation. 444 // The expected behavior is that cluster may elect a new leader, and 445 // the old leader gets isolated and behind the current active leader, 446 // and once delay operation is undone, the slow follower comes back 447 // and catches up, likely receiving a snapshot from the active leader. 448 // As always, after recovery, each member must be able to process client 449 // requests. 450 Case_RANDOM_DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT Case = 207 451 // DELAY_PEER_PORT_TX_RX_QUORUM delays outgoing/incoming packets from/to 452 // the peer ports on majority nodes of cluster. And it waits for 453 // "delay-ms" until recovery, likely to trigger election timeouts. 454 // The expected behavior is that cluster may elect a new leader, while 455 // quorum of nodes struggle with slow networks, and once delay operation 456 // is undone, nodes come back and cluster comes back operative. As always, 457 // after recovery, each member must be able to process client requests. 458 Case_DELAY_PEER_PORT_TX_RX_QUORUM Case = 208 459 // RANDOM_DELAY_PEER_PORT_TX_RX_QUORUM delays outgoing/incoming packets 460 // from/to the peer ports on majority nodes of cluster, with randomized 461 // time durations. And it waits for "delay-ms" until recovery, likely 462 // to trigger election timeouts. 463 // The expected behavior is that cluster may elect a new leader, while 464 // quorum of nodes struggle with slow networks, and once delay operation 465 // is undone, nodes come back and cluster comes back operative. As always, 466 // after recovery, each member must be able to process client requests. 467 Case_RANDOM_DELAY_PEER_PORT_TX_RX_QUORUM Case = 209 468 // DELAY_PEER_PORT_TX_RX_ALL delays outgoing/incoming packets from/to the 469 // peer ports on all nodes. And it waits for "delay-ms" until recovery, 470 // likely to trigger election timeouts. 471 // The expected behavior is that cluster may become totally inoperable, 472 // struggling with slow networks across the whole cluster. Once delay 473 // operation is undone, nodes come back and cluster comes back operative. 474 // As always, after recovery, each member must be able to process client 475 // requests. 476 Case_DELAY_PEER_PORT_TX_RX_ALL Case = 210 477 // RANDOM_DELAY_PEER_PORT_TX_RX_ALL delays outgoing/incoming packets 478 // from/to the peer ports on all nodes, with randomized time durations. 479 // And it waits for "delay-ms" until recovery, likely to trigger 480 // election timeouts. 481 // The expected behavior is that cluster may become totally inoperable, 482 // struggling with slow networks across the whole cluster. Once delay 483 // operation is undone, nodes come back and cluster comes back operative. 484 // As always, after recovery, each member must be able to process client 485 // requests. 486 Case_RANDOM_DELAY_PEER_PORT_TX_RX_ALL Case = 211 487 // NO_FAIL_WITH_STRESS stops injecting failures while testing the 488 // consistency and correctness under pressure loads, for the duration of 489 // "delay-ms". Goal is to ensure cluster be still making progress 490 // on recovery, and verify system does not deadlock following a sequence 491 // of failure injections. 492 // The expected behavior is that cluster remains fully operative in healthy 493 // condition. As always, after recovery, each member must be able to process 494 // client requests. 495 Case_NO_FAIL_WITH_STRESS Case = 300 496 // NO_FAIL_WITH_NO_STRESS_FOR_LIVENESS neither injects failures nor 497 // sends stressig client requests to the cluster, for the duration of 498 // "delay-ms". Goal is to ensure cluster be still making progress 499 // on recovery, and verify system does not deadlock following a sequence 500 // of failure injections. 501 // The expected behavior is that cluster remains fully operative in healthy 502 // condition, and clients requests during liveness period succeed without 503 // errors. 504 // Note: this is how Google Chubby does failure injection testing 505 // https://static.googleusercontent.com/media/research.google.com/en//archive/paxos_made_live.pdf. 506 Case_NO_FAIL_WITH_NO_STRESS_FOR_LIVENESS Case = 301 507 // FAILPOINTS injects failpoints to etcd server runtime, triggering panics 508 // in critical code paths. 509 Case_FAILPOINTS Case = 400 510 // EXTERNAL runs external failure injection scripts. 511 Case_EXTERNAL Case = 500 512) 513 514var Case_name = map[int32]string{ 515 0: "SIGTERM_ONE_FOLLOWER", 516 1: "SIGTERM_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT", 517 2: "SIGTERM_LEADER", 518 3: "SIGTERM_LEADER_UNTIL_TRIGGER_SNAPSHOT", 519 4: "SIGTERM_QUORUM", 520 5: "SIGTERM_ALL", 521 10: "SIGQUIT_AND_REMOVE_ONE_FOLLOWER", 522 11: "SIGQUIT_AND_REMOVE_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT", 523 12: "SIGQUIT_AND_REMOVE_LEADER", 524 13: "SIGQUIT_AND_REMOVE_LEADER_UNTIL_TRIGGER_SNAPSHOT", 525 14: "SIGQUIT_AND_REMOVE_QUORUM_AND_RESTORE_LEADER_SNAPSHOT_FROM_SCRATCH", 526 100: "BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER", 527 101: "BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT", 528 102: "BLACKHOLE_PEER_PORT_TX_RX_LEADER", 529 103: "BLACKHOLE_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT", 530 104: "BLACKHOLE_PEER_PORT_TX_RX_QUORUM", 531 105: "BLACKHOLE_PEER_PORT_TX_RX_ALL", 532 200: "DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER", 533 201: "RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER", 534 202: "DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT", 535 203: "RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT", 536 204: "DELAY_PEER_PORT_TX_RX_LEADER", 537 205: "RANDOM_DELAY_PEER_PORT_TX_RX_LEADER", 538 206: "DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT", 539 207: "RANDOM_DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT", 540 208: "DELAY_PEER_PORT_TX_RX_QUORUM", 541 209: "RANDOM_DELAY_PEER_PORT_TX_RX_QUORUM", 542 210: "DELAY_PEER_PORT_TX_RX_ALL", 543 211: "RANDOM_DELAY_PEER_PORT_TX_RX_ALL", 544 300: "NO_FAIL_WITH_STRESS", 545 301: "NO_FAIL_WITH_NO_STRESS_FOR_LIVENESS", 546 400: "FAILPOINTS", 547 500: "EXTERNAL", 548} 549 550var Case_value = map[string]int32{ 551 "SIGTERM_ONE_FOLLOWER": 0, 552 "SIGTERM_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT": 1, 553 "SIGTERM_LEADER": 2, 554 "SIGTERM_LEADER_UNTIL_TRIGGER_SNAPSHOT": 3, 555 "SIGTERM_QUORUM": 4, 556 "SIGTERM_ALL": 5, 557 "SIGQUIT_AND_REMOVE_ONE_FOLLOWER": 10, 558 "SIGQUIT_AND_REMOVE_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT": 11, 559 "SIGQUIT_AND_REMOVE_LEADER": 12, 560 "SIGQUIT_AND_REMOVE_LEADER_UNTIL_TRIGGER_SNAPSHOT": 13, 561 "SIGQUIT_AND_REMOVE_QUORUM_AND_RESTORE_LEADER_SNAPSHOT_FROM_SCRATCH": 14, 562 "BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER": 100, 563 "BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT": 101, 564 "BLACKHOLE_PEER_PORT_TX_RX_LEADER": 102, 565 "BLACKHOLE_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT": 103, 566 "BLACKHOLE_PEER_PORT_TX_RX_QUORUM": 104, 567 "BLACKHOLE_PEER_PORT_TX_RX_ALL": 105, 568 "DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER": 200, 569 "RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER": 201, 570 "DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT": 202, 571 "RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT": 203, 572 "DELAY_PEER_PORT_TX_RX_LEADER": 204, 573 "RANDOM_DELAY_PEER_PORT_TX_RX_LEADER": 205, 574 "DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT": 206, 575 "RANDOM_DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT": 207, 576 "DELAY_PEER_PORT_TX_RX_QUORUM": 208, 577 "RANDOM_DELAY_PEER_PORT_TX_RX_QUORUM": 209, 578 "DELAY_PEER_PORT_TX_RX_ALL": 210, 579 "RANDOM_DELAY_PEER_PORT_TX_RX_ALL": 211, 580 "NO_FAIL_WITH_STRESS": 300, 581 "NO_FAIL_WITH_NO_STRESS_FOR_LIVENESS": 301, 582 "FAILPOINTS": 400, 583 "EXTERNAL": 500, 584} 585 586func (x Case) String() string { 587 return proto.EnumName(Case_name, int32(x)) 588} 589 590func (Case) EnumDescriptor() ([]byte, []int) { 591 return fileDescriptor_4fbc93a8dcc3881e, []int{3} 592} 593 594type Request struct { 595 Operation Operation `protobuf:"varint,1,opt,name=Operation,proto3,enum=rpcpb.Operation" json:"Operation,omitempty"` 596 // Member contains the same Member object from tester configuration. 597 Member *Member `protobuf:"bytes,2,opt,name=Member,proto3" json:"Member,omitempty"` 598 // Tester contains tester configuration. 599 Tester *Tester `protobuf:"bytes,3,opt,name=Tester,proto3" json:"Tester,omitempty"` 600 XXX_NoUnkeyedLiteral struct{} `json:"-"` 601 XXX_unrecognized []byte `json:"-"` 602 XXX_sizecache int32 `json:"-"` 603} 604 605func (m *Request) Reset() { *m = Request{} } 606func (m *Request) String() string { return proto.CompactTextString(m) } 607func (*Request) ProtoMessage() {} 608func (*Request) Descriptor() ([]byte, []int) { 609 return fileDescriptor_4fbc93a8dcc3881e, []int{0} 610} 611func (m *Request) XXX_Unmarshal(b []byte) error { 612 return m.Unmarshal(b) 613} 614func (m *Request) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 615 if deterministic { 616 return xxx_messageInfo_Request.Marshal(b, m, deterministic) 617 } else { 618 b = b[:cap(b)] 619 n, err := m.MarshalToSizedBuffer(b) 620 if err != nil { 621 return nil, err 622 } 623 return b[:n], nil 624 } 625} 626func (m *Request) XXX_Merge(src proto.Message) { 627 xxx_messageInfo_Request.Merge(m, src) 628} 629func (m *Request) XXX_Size() int { 630 return m.Size() 631} 632func (m *Request) XXX_DiscardUnknown() { 633 xxx_messageInfo_Request.DiscardUnknown(m) 634} 635 636var xxx_messageInfo_Request proto.InternalMessageInfo 637 638// SnapshotInfo contains SAVE_SNAPSHOT request results. 639type SnapshotInfo struct { 640 MemberName string `protobuf:"bytes,1,opt,name=MemberName,proto3" json:"MemberName,omitempty"` 641 MemberClientURLs []string `protobuf:"bytes,2,rep,name=MemberClientURLs,proto3" json:"MemberClientURLs,omitempty"` 642 SnapshotPath string `protobuf:"bytes,3,opt,name=SnapshotPath,proto3" json:"SnapshotPath,omitempty"` 643 SnapshotFileSize string `protobuf:"bytes,4,opt,name=SnapshotFileSize,proto3" json:"SnapshotFileSize,omitempty"` 644 SnapshotTotalSize string `protobuf:"bytes,5,opt,name=SnapshotTotalSize,proto3" json:"SnapshotTotalSize,omitempty"` 645 SnapshotTotalKey int64 `protobuf:"varint,6,opt,name=SnapshotTotalKey,proto3" json:"SnapshotTotalKey,omitempty"` 646 SnapshotHash int64 `protobuf:"varint,7,opt,name=SnapshotHash,proto3" json:"SnapshotHash,omitempty"` 647 SnapshotRevision int64 `protobuf:"varint,8,opt,name=SnapshotRevision,proto3" json:"SnapshotRevision,omitempty"` 648 Took string `protobuf:"bytes,9,opt,name=Took,proto3" json:"Took,omitempty"` 649 XXX_NoUnkeyedLiteral struct{} `json:"-"` 650 XXX_unrecognized []byte `json:"-"` 651 XXX_sizecache int32 `json:"-"` 652} 653 654func (m *SnapshotInfo) Reset() { *m = SnapshotInfo{} } 655func (m *SnapshotInfo) String() string { return proto.CompactTextString(m) } 656func (*SnapshotInfo) ProtoMessage() {} 657func (*SnapshotInfo) Descriptor() ([]byte, []int) { 658 return fileDescriptor_4fbc93a8dcc3881e, []int{1} 659} 660func (m *SnapshotInfo) XXX_Unmarshal(b []byte) error { 661 return m.Unmarshal(b) 662} 663func (m *SnapshotInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 664 if deterministic { 665 return xxx_messageInfo_SnapshotInfo.Marshal(b, m, deterministic) 666 } else { 667 b = b[:cap(b)] 668 n, err := m.MarshalToSizedBuffer(b) 669 if err != nil { 670 return nil, err 671 } 672 return b[:n], nil 673 } 674} 675func (m *SnapshotInfo) XXX_Merge(src proto.Message) { 676 xxx_messageInfo_SnapshotInfo.Merge(m, src) 677} 678func (m *SnapshotInfo) XXX_Size() int { 679 return m.Size() 680} 681func (m *SnapshotInfo) XXX_DiscardUnknown() { 682 xxx_messageInfo_SnapshotInfo.DiscardUnknown(m) 683} 684 685var xxx_messageInfo_SnapshotInfo proto.InternalMessageInfo 686 687type Response struct { 688 Success bool `protobuf:"varint,1,opt,name=Success,proto3" json:"Success,omitempty"` 689 Status string `protobuf:"bytes,2,opt,name=Status,proto3" json:"Status,omitempty"` 690 // Member contains the same Member object from tester request. 691 Member *Member `protobuf:"bytes,3,opt,name=Member,proto3" json:"Member,omitempty"` 692 // SnapshotInfo contains SAVE_SNAPSHOT request results. 693 SnapshotInfo *SnapshotInfo `protobuf:"bytes,4,opt,name=SnapshotInfo,proto3" json:"SnapshotInfo,omitempty"` 694 XXX_NoUnkeyedLiteral struct{} `json:"-"` 695 XXX_unrecognized []byte `json:"-"` 696 XXX_sizecache int32 `json:"-"` 697} 698 699func (m *Response) Reset() { *m = Response{} } 700func (m *Response) String() string { return proto.CompactTextString(m) } 701func (*Response) ProtoMessage() {} 702func (*Response) Descriptor() ([]byte, []int) { 703 return fileDescriptor_4fbc93a8dcc3881e, []int{2} 704} 705func (m *Response) XXX_Unmarshal(b []byte) error { 706 return m.Unmarshal(b) 707} 708func (m *Response) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 709 if deterministic { 710 return xxx_messageInfo_Response.Marshal(b, m, deterministic) 711 } else { 712 b = b[:cap(b)] 713 n, err := m.MarshalToSizedBuffer(b) 714 if err != nil { 715 return nil, err 716 } 717 return b[:n], nil 718 } 719} 720func (m *Response) XXX_Merge(src proto.Message) { 721 xxx_messageInfo_Response.Merge(m, src) 722} 723func (m *Response) XXX_Size() int { 724 return m.Size() 725} 726func (m *Response) XXX_DiscardUnknown() { 727 xxx_messageInfo_Response.DiscardUnknown(m) 728} 729 730var xxx_messageInfo_Response proto.InternalMessageInfo 731 732type Member struct { 733 // EtcdExec is the executable etcd binary path in agent server. 734 EtcdExec string `protobuf:"bytes,1,opt,name=EtcdExec,proto3" json:"EtcdExec,omitempty" yaml:"etcd-exec"` 735 // AgentAddr is the agent HTTP server address. 736 AgentAddr string `protobuf:"bytes,11,opt,name=AgentAddr,proto3" json:"AgentAddr,omitempty" yaml:"agent-addr"` 737 // FailpointHTTPAddr is the agent's failpoints HTTP server address. 738 FailpointHTTPAddr string `protobuf:"bytes,12,opt,name=FailpointHTTPAddr,proto3" json:"FailpointHTTPAddr,omitempty" yaml:"failpoint-http-addr"` 739 // BaseDir is the base directory where all logs and etcd data are stored. 740 BaseDir string `protobuf:"bytes,101,opt,name=BaseDir,proto3" json:"BaseDir,omitempty" yaml:"base-dir"` 741 // EtcdClientProxy is true when client traffic needs to be proxied. 742 // If true, listen client URL port must be different than advertise client URL port. 743 EtcdClientProxy bool `protobuf:"varint,201,opt,name=EtcdClientProxy,proto3" json:"EtcdClientProxy,omitempty" yaml:"etcd-client-proxy"` 744 // EtcdPeerProxy is true when peer traffic needs to be proxied. 745 // If true, listen peer URL port must be different than advertise peer URL port. 746 EtcdPeerProxy bool `protobuf:"varint,202,opt,name=EtcdPeerProxy,proto3" json:"EtcdPeerProxy,omitempty" yaml:"etcd-peer-proxy"` 747 // EtcdClientEndpoint is the etcd client endpoint. 748 EtcdClientEndpoint string `protobuf:"bytes,301,opt,name=EtcdClientEndpoint,proto3" json:"EtcdClientEndpoint,omitempty" yaml:"etcd-client-endpoint"` 749 // Etcd defines etcd binary configuration flags. 750 Etcd *Etcd `protobuf:"bytes,302,opt,name=Etcd,proto3" json:"Etcd,omitempty" yaml:"etcd"` 751 // EtcdOnSnapshotRestore defines one-time use configuration during etcd 752 // snapshot recovery process. 753 EtcdOnSnapshotRestore *Etcd `protobuf:"bytes,303,opt,name=EtcdOnSnapshotRestore,proto3" json:"EtcdOnSnapshotRestore,omitempty"` 754 // ClientCertData contains cert file contents from this member's etcd server. 755 ClientCertData string `protobuf:"bytes,401,opt,name=ClientCertData,proto3" json:"ClientCertData,omitempty" yaml:"client-cert-data"` 756 ClientCertPath string `protobuf:"bytes,402,opt,name=ClientCertPath,proto3" json:"ClientCertPath,omitempty" yaml:"client-cert-path"` 757 // ClientKeyData contains key file contents from this member's etcd server. 758 ClientKeyData string `protobuf:"bytes,403,opt,name=ClientKeyData,proto3" json:"ClientKeyData,omitempty" yaml:"client-key-data"` 759 ClientKeyPath string `protobuf:"bytes,404,opt,name=ClientKeyPath,proto3" json:"ClientKeyPath,omitempty" yaml:"client-key-path"` 760 // ClientTrustedCAData contains trusted CA file contents from this member's etcd server. 761 ClientTrustedCAData string `protobuf:"bytes,405,opt,name=ClientTrustedCAData,proto3" json:"ClientTrustedCAData,omitempty" yaml:"client-trusted-ca-data"` 762 ClientTrustedCAPath string `protobuf:"bytes,406,opt,name=ClientTrustedCAPath,proto3" json:"ClientTrustedCAPath,omitempty" yaml:"client-trusted-ca-path"` 763 // PeerCertData contains cert file contents from this member's etcd server. 764 PeerCertData string `protobuf:"bytes,501,opt,name=PeerCertData,proto3" json:"PeerCertData,omitempty" yaml:"peer-cert-data"` 765 PeerCertPath string `protobuf:"bytes,502,opt,name=PeerCertPath,proto3" json:"PeerCertPath,omitempty" yaml:"peer-cert-path"` 766 // PeerKeyData contains key file contents from this member's etcd server. 767 PeerKeyData string `protobuf:"bytes,503,opt,name=PeerKeyData,proto3" json:"PeerKeyData,omitempty" yaml:"peer-key-data"` 768 PeerKeyPath string `protobuf:"bytes,504,opt,name=PeerKeyPath,proto3" json:"PeerKeyPath,omitempty" yaml:"peer-key-path"` 769 // PeerTrustedCAData contains trusted CA file contents from this member's etcd server. 770 PeerTrustedCAData string `protobuf:"bytes,505,opt,name=PeerTrustedCAData,proto3" json:"PeerTrustedCAData,omitempty" yaml:"peer-trusted-ca-data"` 771 PeerTrustedCAPath string `protobuf:"bytes,506,opt,name=PeerTrustedCAPath,proto3" json:"PeerTrustedCAPath,omitempty" yaml:"peer-trusted-ca-path"` 772 // SnapshotPath is the snapshot file path to store or restore from. 773 SnapshotPath string `protobuf:"bytes,601,opt,name=SnapshotPath,proto3" json:"SnapshotPath,omitempty" yaml:"snapshot-path"` 774 // SnapshotInfo contains last SAVE_SNAPSHOT request results. 775 SnapshotInfo *SnapshotInfo `protobuf:"bytes,602,opt,name=SnapshotInfo,proto3" json:"SnapshotInfo,omitempty"` 776 XXX_NoUnkeyedLiteral struct{} `json:"-"` 777 XXX_unrecognized []byte `json:"-"` 778 XXX_sizecache int32 `json:"-"` 779} 780 781func (m *Member) Reset() { *m = Member{} } 782func (m *Member) String() string { return proto.CompactTextString(m) } 783func (*Member) ProtoMessage() {} 784func (*Member) Descriptor() ([]byte, []int) { 785 return fileDescriptor_4fbc93a8dcc3881e, []int{3} 786} 787func (m *Member) XXX_Unmarshal(b []byte) error { 788 return m.Unmarshal(b) 789} 790func (m *Member) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 791 if deterministic { 792 return xxx_messageInfo_Member.Marshal(b, m, deterministic) 793 } else { 794 b = b[:cap(b)] 795 n, err := m.MarshalToSizedBuffer(b) 796 if err != nil { 797 return nil, err 798 } 799 return b[:n], nil 800 } 801} 802func (m *Member) XXX_Merge(src proto.Message) { 803 xxx_messageInfo_Member.Merge(m, src) 804} 805func (m *Member) XXX_Size() int { 806 return m.Size() 807} 808func (m *Member) XXX_DiscardUnknown() { 809 xxx_messageInfo_Member.DiscardUnknown(m) 810} 811 812var xxx_messageInfo_Member proto.InternalMessageInfo 813 814type Tester struct { 815 DataDir string `protobuf:"bytes,1,opt,name=DataDir,proto3" json:"DataDir,omitempty" yaml:"data-dir"` 816 Network string `protobuf:"bytes,2,opt,name=Network,proto3" json:"Network,omitempty" yaml:"network"` 817 Addr string `protobuf:"bytes,3,opt,name=Addr,proto3" json:"Addr,omitempty" yaml:"addr"` 818 // DelayLatencyMsRv is the delay latency in milliseconds, 819 // to inject to simulated slow network. 820 DelayLatencyMs uint32 `protobuf:"varint,11,opt,name=DelayLatencyMs,proto3" json:"DelayLatencyMs,omitempty" yaml:"delay-latency-ms"` 821 // DelayLatencyMsRv is the delay latency random variable in milliseconds. 822 DelayLatencyMsRv uint32 `protobuf:"varint,12,opt,name=DelayLatencyMsRv,proto3" json:"DelayLatencyMsRv,omitempty" yaml:"delay-latency-ms-rv"` 823 // UpdatedDelayLatencyMs is the update delay latency in milliseconds, 824 // to inject to simulated slow network. It's the final latency to apply, 825 // in case the latency numbers are randomly generated from given delay latency field. 826 UpdatedDelayLatencyMs uint32 `protobuf:"varint,13,opt,name=UpdatedDelayLatencyMs,proto3" json:"UpdatedDelayLatencyMs,omitempty" yaml:"updated-delay-latency-ms"` 827 // RoundLimit is the limit of rounds to run failure set (-1 to run without limits). 828 RoundLimit int32 `protobuf:"varint,21,opt,name=RoundLimit,proto3" json:"RoundLimit,omitempty" yaml:"round-limit"` 829 // ExitOnCaseFail is true, then exit tester on first failure. 830 ExitOnCaseFail bool `protobuf:"varint,22,opt,name=ExitOnCaseFail,proto3" json:"ExitOnCaseFail,omitempty" yaml:"exit-on-failure"` 831 // EnablePprof is true to enable profiler. 832 EnablePprof bool `protobuf:"varint,23,opt,name=EnablePprof,proto3" json:"EnablePprof,omitempty" yaml:"enable-pprof"` 833 // CaseDelayMs is the delay duration after failure is injected. 834 // Useful when triggering snapshot or no-op failure cases. 835 CaseDelayMs uint32 `protobuf:"varint,31,opt,name=CaseDelayMs,proto3" json:"CaseDelayMs,omitempty" yaml:"case-delay-ms"` 836 // CaseShuffle is true to randomize failure injecting order. 837 CaseShuffle bool `protobuf:"varint,32,opt,name=CaseShuffle,proto3" json:"CaseShuffle,omitempty" yaml:"case-shuffle"` 838 // Cases is the selected test cases to schedule. 839 // If empty, run all failure cases. 840 Cases []string `protobuf:"bytes,33,rep,name=Cases,proto3" json:"Cases,omitempty" yaml:"cases"` 841 // FailpointCommands is the list of "gofail" commands 842 // (e.g. panic("etcd-tester"),1*sleep(1000). 843 FailpointCommands []string `protobuf:"bytes,34,rep,name=FailpointCommands,proto3" json:"FailpointCommands,omitempty" yaml:"failpoint-commands"` 844 // RunnerExecPath is a path of etcd-runner binary. 845 RunnerExecPath string `protobuf:"bytes,41,opt,name=RunnerExecPath,proto3" json:"RunnerExecPath,omitempty" yaml:"runner-exec-path"` 846 // ExternalExecPath is a path of script for enabling/disabling an external fault injector. 847 ExternalExecPath string `protobuf:"bytes,42,opt,name=ExternalExecPath,proto3" json:"ExternalExecPath,omitempty" yaml:"external-exec-path"` 848 // Stressers is the list of stresser types: 849 // KV, LEASE, ELECTION_RUNNER, WATCH_RUNNER, LOCK_RACER_RUNNER, LEASE_RUNNER. 850 Stressers []*Stresser `protobuf:"bytes,101,rep,name=Stressers,proto3" json:"Stressers,omitempty" yaml:"stressers"` 851 // Checkers is the list of consistency checker types: 852 // KV_HASH, LEASE_EXPIRE, NO_CHECK, RUNNER. 853 // Leave empty to skip consistency checks. 854 Checkers []string `protobuf:"bytes,102,rep,name=Checkers,proto3" json:"Checkers,omitempty" yaml:"checkers"` 855 // StressKeySize is the size of each small key written into etcd. 856 StressKeySize int32 `protobuf:"varint,201,opt,name=StressKeySize,proto3" json:"StressKeySize,omitempty" yaml:"stress-key-size"` 857 // StressKeySizeLarge is the size of each large key written into etcd. 858 StressKeySizeLarge int32 `protobuf:"varint,202,opt,name=StressKeySizeLarge,proto3" json:"StressKeySizeLarge,omitempty" yaml:"stress-key-size-large"` 859 // StressKeySuffixRange is the count of key range written into etcd. 860 // Stress keys are created with "fmt.Sprintf("foo%016x", rand.Intn(keySuffixRange)". 861 StressKeySuffixRange int32 `protobuf:"varint,203,opt,name=StressKeySuffixRange,proto3" json:"StressKeySuffixRange,omitempty" yaml:"stress-key-suffix-range"` 862 // StressKeySuffixRangeTxn is the count of key range written into etcd txn (max 100). 863 // Stress keys are created with "fmt.Sprintf("/k%03d", i)". 864 StressKeySuffixRangeTxn int32 `protobuf:"varint,204,opt,name=StressKeySuffixRangeTxn,proto3" json:"StressKeySuffixRangeTxn,omitempty" yaml:"stress-key-suffix-range-txn"` 865 // StressKeyTxnOps is the number of operations per a transaction (max 64). 866 StressKeyTxnOps int32 `protobuf:"varint,205,opt,name=StressKeyTxnOps,proto3" json:"StressKeyTxnOps,omitempty" yaml:"stress-key-txn-ops"` 867 // StressClients is the number of concurrent stressing clients 868 // with "one" shared TCP connection. 869 StressClients int32 `protobuf:"varint,301,opt,name=StressClients,proto3" json:"StressClients,omitempty" yaml:"stress-clients"` 870 // StressQPS is the maximum number of stresser requests per second. 871 StressQPS int32 `protobuf:"varint,302,opt,name=StressQPS,proto3" json:"StressQPS,omitempty" yaml:"stress-qps"` 872 XXX_NoUnkeyedLiteral struct{} `json:"-"` 873 XXX_unrecognized []byte `json:"-"` 874 XXX_sizecache int32 `json:"-"` 875} 876 877func (m *Tester) Reset() { *m = Tester{} } 878func (m *Tester) String() string { return proto.CompactTextString(m) } 879func (*Tester) ProtoMessage() {} 880func (*Tester) Descriptor() ([]byte, []int) { 881 return fileDescriptor_4fbc93a8dcc3881e, []int{4} 882} 883func (m *Tester) XXX_Unmarshal(b []byte) error { 884 return m.Unmarshal(b) 885} 886func (m *Tester) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 887 if deterministic { 888 return xxx_messageInfo_Tester.Marshal(b, m, deterministic) 889 } else { 890 b = b[:cap(b)] 891 n, err := m.MarshalToSizedBuffer(b) 892 if err != nil { 893 return nil, err 894 } 895 return b[:n], nil 896 } 897} 898func (m *Tester) XXX_Merge(src proto.Message) { 899 xxx_messageInfo_Tester.Merge(m, src) 900} 901func (m *Tester) XXX_Size() int { 902 return m.Size() 903} 904func (m *Tester) XXX_DiscardUnknown() { 905 xxx_messageInfo_Tester.DiscardUnknown(m) 906} 907 908var xxx_messageInfo_Tester proto.InternalMessageInfo 909 910type Stresser struct { 911 Type string `protobuf:"bytes,1,opt,name=Type,proto3" json:"Type,omitempty" yaml:"type"` 912 Weight float64 `protobuf:"fixed64,2,opt,name=Weight,proto3" json:"Weight,omitempty" yaml:"weight"` 913 XXX_NoUnkeyedLiteral struct{} `json:"-"` 914 XXX_unrecognized []byte `json:"-"` 915 XXX_sizecache int32 `json:"-"` 916} 917 918func (m *Stresser) Reset() { *m = Stresser{} } 919func (m *Stresser) String() string { return proto.CompactTextString(m) } 920func (*Stresser) ProtoMessage() {} 921func (*Stresser) Descriptor() ([]byte, []int) { 922 return fileDescriptor_4fbc93a8dcc3881e, []int{5} 923} 924func (m *Stresser) XXX_Unmarshal(b []byte) error { 925 return m.Unmarshal(b) 926} 927func (m *Stresser) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 928 if deterministic { 929 return xxx_messageInfo_Stresser.Marshal(b, m, deterministic) 930 } else { 931 b = b[:cap(b)] 932 n, err := m.MarshalToSizedBuffer(b) 933 if err != nil { 934 return nil, err 935 } 936 return b[:n], nil 937 } 938} 939func (m *Stresser) XXX_Merge(src proto.Message) { 940 xxx_messageInfo_Stresser.Merge(m, src) 941} 942func (m *Stresser) XXX_Size() int { 943 return m.Size() 944} 945func (m *Stresser) XXX_DiscardUnknown() { 946 xxx_messageInfo_Stresser.DiscardUnknown(m) 947} 948 949var xxx_messageInfo_Stresser proto.InternalMessageInfo 950 951type Etcd struct { 952 Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty" yaml:"name"` 953 DataDir string `protobuf:"bytes,2,opt,name=DataDir,proto3" json:"DataDir,omitempty" yaml:"data-dir"` 954 WALDir string `protobuf:"bytes,3,opt,name=WALDir,proto3" json:"WALDir,omitempty" yaml:"wal-dir"` 955 // HeartbeatIntervalMs is the time (in milliseconds) of a heartbeat interval. 956 // Default value is 100, which is 100ms. 957 HeartbeatIntervalMs int64 `protobuf:"varint,11,opt,name=HeartbeatIntervalMs,proto3" json:"HeartbeatIntervalMs,omitempty" yaml:"heartbeat-interval"` 958 // ElectionTimeoutMs is the time (in milliseconds) for an election to timeout. 959 // Default value is 1000, which is 1s. 960 ElectionTimeoutMs int64 `protobuf:"varint,12,opt,name=ElectionTimeoutMs,proto3" json:"ElectionTimeoutMs,omitempty" yaml:"election-timeout"` 961 ListenClientURLs []string `protobuf:"bytes,21,rep,name=ListenClientURLs,proto3" json:"ListenClientURLs,omitempty" yaml:"listen-client-urls"` 962 AdvertiseClientURLs []string `protobuf:"bytes,22,rep,name=AdvertiseClientURLs,proto3" json:"AdvertiseClientURLs,omitempty" yaml:"advertise-client-urls"` 963 ClientAutoTLS bool `protobuf:"varint,23,opt,name=ClientAutoTLS,proto3" json:"ClientAutoTLS,omitempty" yaml:"auto-tls"` 964 ClientCertAuth bool `protobuf:"varint,24,opt,name=ClientCertAuth,proto3" json:"ClientCertAuth,omitempty" yaml:"client-cert-auth"` 965 ClientCertFile string `protobuf:"bytes,25,opt,name=ClientCertFile,proto3" json:"ClientCertFile,omitempty" yaml:"cert-file"` 966 ClientKeyFile string `protobuf:"bytes,26,opt,name=ClientKeyFile,proto3" json:"ClientKeyFile,omitempty" yaml:"key-file"` 967 ClientTrustedCAFile string `protobuf:"bytes,27,opt,name=ClientTrustedCAFile,proto3" json:"ClientTrustedCAFile,omitempty" yaml:"trusted-ca-file"` 968 ListenPeerURLs []string `protobuf:"bytes,31,rep,name=ListenPeerURLs,proto3" json:"ListenPeerURLs,omitempty" yaml:"listen-peer-urls"` 969 AdvertisePeerURLs []string `protobuf:"bytes,32,rep,name=AdvertisePeerURLs,proto3" json:"AdvertisePeerURLs,omitempty" yaml:"initial-advertise-peer-urls"` 970 PeerAutoTLS bool `protobuf:"varint,33,opt,name=PeerAutoTLS,proto3" json:"PeerAutoTLS,omitempty" yaml:"peer-auto-tls"` 971 PeerClientCertAuth bool `protobuf:"varint,34,opt,name=PeerClientCertAuth,proto3" json:"PeerClientCertAuth,omitempty" yaml:"peer-client-cert-auth"` 972 PeerCertFile string `protobuf:"bytes,35,opt,name=PeerCertFile,proto3" json:"PeerCertFile,omitempty" yaml:"peer-cert-file"` 973 PeerKeyFile string `protobuf:"bytes,36,opt,name=PeerKeyFile,proto3" json:"PeerKeyFile,omitempty" yaml:"peer-key-file"` 974 PeerTrustedCAFile string `protobuf:"bytes,37,opt,name=PeerTrustedCAFile,proto3" json:"PeerTrustedCAFile,omitempty" yaml:"peer-trusted-ca-file"` 975 InitialCluster string `protobuf:"bytes,41,opt,name=InitialCluster,proto3" json:"InitialCluster,omitempty" yaml:"initial-cluster"` 976 InitialClusterState string `protobuf:"bytes,42,opt,name=InitialClusterState,proto3" json:"InitialClusterState,omitempty" yaml:"initial-cluster-state"` 977 InitialClusterToken string `protobuf:"bytes,43,opt,name=InitialClusterToken,proto3" json:"InitialClusterToken,omitempty" yaml:"initial-cluster-token"` 978 SnapshotCount int64 `protobuf:"varint,51,opt,name=SnapshotCount,proto3" json:"SnapshotCount,omitempty" yaml:"snapshot-count"` 979 QuotaBackendBytes int64 `protobuf:"varint,52,opt,name=QuotaBackendBytes,proto3" json:"QuotaBackendBytes,omitempty" yaml:"quota-backend-bytes"` 980 PreVote bool `protobuf:"varint,63,opt,name=PreVote,proto3" json:"PreVote,omitempty" yaml:"pre-vote"` 981 InitialCorruptCheck bool `protobuf:"varint,64,opt,name=InitialCorruptCheck,proto3" json:"InitialCorruptCheck,omitempty" yaml:"initial-corrupt-check"` 982 Logger string `protobuf:"bytes,71,opt,name=Logger,proto3" json:"Logger,omitempty" yaml:"logger"` 983 // LogOutputs is the log file to store current etcd server logs. 984 LogOutputs []string `protobuf:"bytes,72,rep,name=LogOutputs,proto3" json:"LogOutputs,omitempty" yaml:"log-outputs"` 985 LogLevel string `protobuf:"bytes,73,opt,name=LogLevel,proto3" json:"LogLevel,omitempty" yaml:"log-level"` 986 XXX_NoUnkeyedLiteral struct{} `json:"-"` 987 XXX_unrecognized []byte `json:"-"` 988 XXX_sizecache int32 `json:"-"` 989} 990 991func (m *Etcd) Reset() { *m = Etcd{} } 992func (m *Etcd) String() string { return proto.CompactTextString(m) } 993func (*Etcd) ProtoMessage() {} 994func (*Etcd) Descriptor() ([]byte, []int) { 995 return fileDescriptor_4fbc93a8dcc3881e, []int{6} 996} 997func (m *Etcd) XXX_Unmarshal(b []byte) error { 998 return m.Unmarshal(b) 999} 1000func (m *Etcd) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1001 if deterministic { 1002 return xxx_messageInfo_Etcd.Marshal(b, m, deterministic) 1003 } else { 1004 b = b[:cap(b)] 1005 n, err := m.MarshalToSizedBuffer(b) 1006 if err != nil { 1007 return nil, err 1008 } 1009 return b[:n], nil 1010 } 1011} 1012func (m *Etcd) XXX_Merge(src proto.Message) { 1013 xxx_messageInfo_Etcd.Merge(m, src) 1014} 1015func (m *Etcd) XXX_Size() int { 1016 return m.Size() 1017} 1018func (m *Etcd) XXX_DiscardUnknown() { 1019 xxx_messageInfo_Etcd.DiscardUnknown(m) 1020} 1021 1022var xxx_messageInfo_Etcd proto.InternalMessageInfo 1023 1024func init() { 1025 proto.RegisterEnum("rpcpb.StresserType", StresserType_name, StresserType_value) 1026 proto.RegisterEnum("rpcpb.Checker", Checker_name, Checker_value) 1027 proto.RegisterEnum("rpcpb.Operation", Operation_name, Operation_value) 1028 proto.RegisterEnum("rpcpb.Case", Case_name, Case_value) 1029 proto.RegisterType((*Request)(nil), "rpcpb.Request") 1030 proto.RegisterType((*SnapshotInfo)(nil), "rpcpb.SnapshotInfo") 1031 proto.RegisterType((*Response)(nil), "rpcpb.Response") 1032 proto.RegisterType((*Member)(nil), "rpcpb.Member") 1033 proto.RegisterType((*Tester)(nil), "rpcpb.Tester") 1034 proto.RegisterType((*Stresser)(nil), "rpcpb.Stresser") 1035 proto.RegisterType((*Etcd)(nil), "rpcpb.Etcd") 1036} 1037 1038func init() { proto.RegisterFile("rpcpb/rpc.proto", fileDescriptor_4fbc93a8dcc3881e) } 1039 1040var fileDescriptor_4fbc93a8dcc3881e = []byte{ 1041 // 2985 bytes of a gzipped FileDescriptorProto 1042 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x59, 0x5b, 0x73, 0xdb, 0xc6, 1043 0xf5, 0x37, 0x44, 0x49, 0x96, 0x56, 0x37, 0x68, 0x65, 0xd9, 0xf0, 0x4d, 0x90, 0xe1, 0x38, 0x7f, 1044 0x59, 0x09, 0x6c, 0xff, 0xed, 0x4c, 0x2e, 0x4e, 0x13, 0x07, 0xa4, 0x20, 0x89, 0x25, 0x44, 0xd2, 1045 0x4b, 0x48, 0x76, 0xfa, 0x82, 0x81, 0xc8, 0x95, 0xc4, 0x31, 0x05, 0x30, 0xc0, 0xd2, 0x91, 0xf2, 1046 0x05, 0xfa, 0xd6, 0x69, 0xd3, 0xcb, 0xb4, 0x33, 0xfd, 0x08, 0x4d, 0xfb, 0xd0, 0x2f, 0xe1, 0xdc, 1047 0xda, 0xb4, 0x7d, 0x6a, 0x1f, 0x38, 0x6d, 0xfa, 0xd2, 0xa7, 0x3e, 0x70, 0x7a, 0x7f, 0xe8, 0x74, 1048 0x76, 0x17, 0x10, 0x17, 0x00, 0x29, 0xfb, 0xc9, 0xc2, 0x39, 0xbf, 0xdf, 0x6f, 0xcf, 0xee, 0xd9, 1049 0xdd, 0x73, 0xd6, 0x04, 0x73, 0x41, 0xbb, 0xde, 0xde, 0xbd, 0x1d, 0xb4, 0xeb, 0xb7, 0xda, 0x81, 1050 0x4f, 0x7c, 0x38, 0xc6, 0x0c, 0x97, 0xf4, 0xfd, 0x26, 0x39, 0xe8, 0xec, 0xde, 0xaa, 0xfb, 0x87, 1051 0xb7, 0xf7, 0xfd, 0x7d, 0xff, 0x36, 0xf3, 0xee, 0x76, 0xf6, 0xd8, 0x17, 0xfb, 0x60, 0x7f, 0x71, 1052 0x96, 0xf6, 0x6d, 0x09, 0x9c, 0x45, 0xf8, 0x83, 0x0e, 0x0e, 0x09, 0xbc, 0x05, 0x26, 0x2b, 0x6d, 1053 0x1c, 0xb8, 0xa4, 0xe9, 0x7b, 0x8a, 0xb4, 0x2c, 0xad, 0xcc, 0xde, 0x95, 0x6f, 0x31, 0xd5, 0x5b, 1054 0x27, 0x76, 0xd4, 0x87, 0xc0, 0x1b, 0x60, 0x7c, 0x0b, 0x1f, 0xee, 0xe2, 0x40, 0x19, 0x59, 0x96, 1055 0x56, 0xa6, 0xee, 0xce, 0x44, 0x60, 0x6e, 0x44, 0x91, 0x93, 0xc2, 0x6c, 0x1c, 0x12, 0x1c, 0x28, 1056 0xb9, 0x04, 0x8c, 0x1b, 0x51, 0xe4, 0xd4, 0xfe, 0x32, 0x02, 0xa6, 0x6b, 0x9e, 0xdb, 0x0e, 0x0f, 1057 0x7c, 0x52, 0xf4, 0xf6, 0x7c, 0xb8, 0x04, 0x00, 0x57, 0x28, 0xbb, 0x87, 0x98, 0xc5, 0x33, 0x89, 1058 0x04, 0x0b, 0x5c, 0x05, 0x32, 0xff, 0x2a, 0xb4, 0x9a, 0xd8, 0x23, 0xdb, 0xc8, 0x0a, 0x95, 0x91, 1059 0xe5, 0xdc, 0xca, 0x24, 0xca, 0xd8, 0xa1, 0xd6, 0xd7, 0xae, 0xba, 0xe4, 0x80, 0x45, 0x32, 0x89, 1060 0x12, 0x36, 0xaa, 0x17, 0x7f, 0xaf, 0x37, 0x5b, 0xb8, 0xd6, 0xfc, 0x08, 0x2b, 0xa3, 0x0c, 0x97, 1061 0xb1, 0xc3, 0x57, 0xc1, 0x7c, 0x6c, 0xb3, 0x7d, 0xe2, 0xb6, 0x18, 0x78, 0x8c, 0x81, 0xb3, 0x0e, 1062 0x51, 0x99, 0x19, 0x4b, 0xf8, 0x58, 0x19, 0x5f, 0x96, 0x56, 0x72, 0x28, 0x63, 0x17, 0x23, 0xdd, 1063 0x74, 0xc3, 0x03, 0xe5, 0x2c, 0xc3, 0x25, 0x6c, 0xa2, 0x1e, 0xc2, 0x4f, 0x9b, 0x21, 0xcd, 0xd7, 1064 0x44, 0x52, 0x2f, 0xb6, 0x43, 0x08, 0x46, 0x6d, 0xdf, 0x7f, 0xa2, 0x4c, 0xb2, 0xe0, 0xd8, 0xdf, 1065 0xda, 0x4f, 0x25, 0x30, 0x81, 0x70, 0xd8, 0xf6, 0xbd, 0x10, 0x43, 0x05, 0x9c, 0xad, 0x75, 0xea, 1066 0x75, 0x1c, 0x86, 0x6c, 0x8d, 0x27, 0x50, 0xfc, 0x09, 0xcf, 0x83, 0xf1, 0x1a, 0x71, 0x49, 0x27, 1067 0x64, 0xf9, 0x9d, 0x44, 0xd1, 0x97, 0x90, 0xf7, 0xdc, 0x69, 0x79, 0x7f, 0x23, 0x99, 0x4f, 0xb6, 1068 0x96, 0x53, 0x77, 0x17, 0x22, 0xb0, 0xe8, 0x42, 0x09, 0xa0, 0xf6, 0xf1, 0x74, 0x3c, 0x00, 0xbc, 1069 0x03, 0x26, 0x4c, 0x52, 0x6f, 0x98, 0x47, 0xb8, 0xce, 0x77, 0x40, 0xfe, 0x5c, 0xaf, 0xab, 0xca, 1070 0xc7, 0xee, 0x61, 0xeb, 0xbe, 0x86, 0x49, 0xbd, 0xa1, 0xe3, 0x23, 0x5c, 0xd7, 0xd0, 0x09, 0x0a, 1071 0xde, 0x03, 0x93, 0xc6, 0x3e, 0xf6, 0x88, 0xd1, 0x68, 0x04, 0xca, 0x14, 0xa3, 0x2c, 0xf6, 0xba, 1072 0xea, 0x3c, 0xa7, 0xb8, 0xd4, 0xa5, 0xbb, 0x8d, 0x46, 0xa0, 0xa1, 0x3e, 0x0e, 0x5a, 0x60, 0x7e, 1073 0xdd, 0x6d, 0xb6, 0xda, 0x7e, 0xd3, 0x23, 0x9b, 0xb6, 0x5d, 0x65, 0xe4, 0x69, 0x46, 0x5e, 0xea, 1074 0x75, 0xd5, 0x4b, 0x9c, 0xbc, 0x17, 0x43, 0xf4, 0x03, 0x42, 0xda, 0x91, 0x4a, 0x96, 0x08, 0x75, 1075 0x70, 0x36, 0xef, 0x86, 0x78, 0xad, 0x19, 0x28, 0x98, 0x69, 0x2c, 0xf4, 0xba, 0xea, 0x1c, 0xd7, 1076 0xd8, 0x75, 0x43, 0xac, 0x37, 0x9a, 0x81, 0x86, 0x62, 0x0c, 0xdc, 0x00, 0x73, 0x34, 0x7a, 0xbe, 1077 0x5b, 0xab, 0x81, 0x7f, 0x74, 0xac, 0x7c, 0xca, 0x32, 0x91, 0xbf, 0xd2, 0xeb, 0xaa, 0x8a, 0x30, 1078 0xd7, 0x3a, 0x83, 0xe8, 0x6d, 0x8a, 0xd1, 0x50, 0x9a, 0x05, 0x0d, 0x30, 0x43, 0x4d, 0x55, 0x8c, 1079 0x03, 0x2e, 0xf3, 0x19, 0x97, 0xb9, 0xd4, 0xeb, 0xaa, 0xe7, 0x05, 0x99, 0x36, 0xc6, 0x41, 0x2c, 1080 0x92, 0x64, 0xc0, 0x2a, 0x80, 0x7d, 0x55, 0xd3, 0x6b, 0xb0, 0x89, 0x29, 0x9f, 0xb0, 0xfc, 0xe7, 1081 0xd5, 0x5e, 0x57, 0xbd, 0x9c, 0x0d, 0x07, 0x47, 0x30, 0x0d, 0x0d, 0xe0, 0xc2, 0xff, 0x07, 0xa3, 1082 0xd4, 0xaa, 0xfc, 0x9c, 0xdf, 0x11, 0x53, 0x51, 0xfa, 0xa9, 0x2d, 0x3f, 0xd7, 0xeb, 0xaa, 0x53, 1083 0x7d, 0x41, 0x0d, 0x31, 0x28, 0xcc, 0x83, 0x45, 0xfa, 0x6f, 0xc5, 0xeb, 0x6f, 0xe6, 0x90, 0xf8, 1084 0x01, 0x56, 0x7e, 0x91, 0xd5, 0x40, 0x83, 0xa1, 0x70, 0x0d, 0xcc, 0xf2, 0x40, 0x0a, 0x38, 0x20, 1085 0x6b, 0x2e, 0x71, 0x95, 0xef, 0xb1, 0x33, 0x9f, 0xbf, 0xdc, 0xeb, 0xaa, 0x17, 0xf8, 0x98, 0x51, 1086 0xfc, 0x75, 0x1c, 0x10, 0xbd, 0xe1, 0x12, 0x57, 0x43, 0x29, 0x4e, 0x52, 0x85, 0x5d, 0x1c, 0x1f, 1087 0x9f, 0xaa, 0xd2, 0x76, 0xc9, 0x41, 0x42, 0x85, 0x5d, 0x2c, 0x06, 0x98, 0xe1, 0x96, 0x12, 0x3e, 1088 0x66, 0xa1, 0x7c, 0x9f, 0x8b, 0x08, 0x79, 0x89, 0x44, 0x9e, 0xe0, 0xe3, 0x28, 0x92, 0x24, 0x23, 1089 0x21, 0xc1, 0xe2, 0xf8, 0xc1, 0x69, 0x12, 0x3c, 0x8c, 0x24, 0x03, 0xda, 0x60, 0x81, 0x1b, 0xec, 1090 0xa0, 0x13, 0x12, 0xdc, 0x28, 0x18, 0x2c, 0x96, 0x1f, 0x72, 0xa1, 0x6b, 0xbd, 0xae, 0x7a, 0x35, 1091 0x21, 0x44, 0x38, 0x4c, 0xaf, 0xbb, 0x51, 0x48, 0x83, 0xe8, 0x03, 0x54, 0x59, 0x78, 0x3f, 0x7a, 1092 0x01, 0x55, 0x1e, 0xe5, 0x20, 0x3a, 0x7c, 0x17, 0x4c, 0xd3, 0x3d, 0x79, 0x92, 0xbb, 0xbf, 0x73, 1093 0xb9, 0x8b, 0xbd, 0xae, 0xba, 0xc8, 0xe5, 0xd8, 0x1e, 0x16, 0x32, 0x97, 0xc0, 0x8b, 0x7c, 0x16, 1094 0xce, 0x3f, 0x4e, 0xe1, 0xf3, 0x30, 0x12, 0x78, 0xf8, 0x36, 0x98, 0xa2, 0xdf, 0x71, 0xbe, 0xfe, 1095 0xc9, 0xe9, 0x4a, 0xaf, 0xab, 0x9e, 0x13, 0xe8, 0xfd, 0x6c, 0x89, 0x68, 0x81, 0xcc, 0xc6, 0xfe, 1096 0xd7, 0x70, 0x32, 0x1f, 0x5a, 0x44, 0xc3, 0x32, 0x98, 0xa7, 0x9f, 0xc9, 0x1c, 0xfd, 0x3b, 0x97, 1097 0x3e, 0x7f, 0x4c, 0x22, 0x93, 0xa1, 0x2c, 0x35, 0xa3, 0xc7, 0x42, 0xfa, 0xcf, 0x73, 0xf5, 0x78, 1098 0x64, 0x59, 0x2a, 0x7c, 0x27, 0x55, 0x48, 0x7f, 0x3f, 0x9a, 0x9e, 0x5d, 0x18, 0xb9, 0xe3, 0x85, 1099 0x4d, 0xd4, 0xd8, 0x37, 0x53, 0x35, 0xe1, 0x0f, 0x2f, 0x5c, 0x14, 0x7e, 0x39, 0x1d, 0xb7, 0x11, 1100 0xf4, 0x7e, 0xa5, 0x73, 0xa3, 0xf7, 0xab, 0x94, 0xbe, 0x5f, 0xe9, 0x42, 0x44, 0xf7, 0x6b, 0x84, 1101 0x81, 0xaf, 0x82, 0xb3, 0x65, 0x4c, 0x3e, 0xf4, 0x83, 0x27, 0xbc, 0x8e, 0xe5, 0x61, 0xaf, 0xab, 1102 0xce, 0x72, 0xb8, 0xc7, 0x1d, 0x1a, 0x8a, 0x21, 0xf0, 0x3a, 0x18, 0x65, 0xb7, 0x3f, 0x5f, 0x22, 1103 0xe1, 0x86, 0xe2, 0xd7, 0x3d, 0x73, 0xc2, 0x02, 0x98, 0x5d, 0xc3, 0x2d, 0xf7, 0xd8, 0x72, 0x09, 1104 0xf6, 0xea, 0xc7, 0x5b, 0x21, 0xab, 0x34, 0x33, 0xe2, 0xb5, 0xd0, 0xa0, 0x7e, 0xbd, 0xc5, 0x01, 1105 0xfa, 0x61, 0xa8, 0xa1, 0x14, 0x05, 0x7e, 0x13, 0xc8, 0x49, 0x0b, 0x7a, 0xca, 0x6a, 0xce, 0x8c, 1106 0x58, 0x73, 0xd2, 0x32, 0x7a, 0xf0, 0x54, 0x43, 0x19, 0x1e, 0x7c, 0x1f, 0x2c, 0x6e, 0xb7, 0x1b, 1107 0x2e, 0xc1, 0x8d, 0x54, 0x5c, 0x33, 0x4c, 0xf0, 0x7a, 0xaf, 0xab, 0xaa, 0x5c, 0xb0, 0xc3, 0x61, 1108 0x7a, 0x36, 0xbe, 0xc1, 0x0a, 0xf0, 0x75, 0x00, 0x90, 0xdf, 0xf1, 0x1a, 0x56, 0xf3, 0xb0, 0x49, 1109 0x94, 0xc5, 0x65, 0x69, 0x65, 0x2c, 0x7f, 0xbe, 0xd7, 0x55, 0x21, 0xd7, 0x0b, 0xa8, 0x4f, 0x6f, 1110 0x51, 0xa7, 0x86, 0x04, 0x24, 0xcc, 0x83, 0x59, 0xf3, 0xa8, 0x49, 0x2a, 0x5e, 0xc1, 0x0d, 0x31, 1111 0x2d, 0x92, 0xca, 0xf9, 0x4c, 0x35, 0x3a, 0x6a, 0x12, 0xdd, 0xf7, 0x74, 0x5a, 0x58, 0x3b, 0x01, 1112 0xd6, 0x50, 0x8a, 0x01, 0xdf, 0x02, 0x53, 0xa6, 0xe7, 0xee, 0xb6, 0x70, 0xb5, 0x1d, 0xf8, 0x7b, 1113 0xca, 0x05, 0x26, 0x70, 0xa1, 0xd7, 0x55, 0x17, 0x22, 0x01, 0xe6, 0xd4, 0xdb, 0xd4, 0xab, 0x21, 1114 0x11, 0x0b, 0xef, 0x83, 0x29, 0x2a, 0xc3, 0x26, 0xb3, 0x15, 0x2a, 0x2a, 0x5b, 0x07, 0x61, 0x9b, 1115 0xd6, 0x59, 0x21, 0x66, 0x8b, 0x40, 0x27, 0x2f, 0x82, 0xe9, 0xb0, 0xf4, 0xb3, 0x76, 0xd0, 0xd9, 1116 0xdb, 0x6b, 0x61, 0x65, 0x39, 0x3d, 0x2c, 0xe3, 0x86, 0xdc, 0x1b, 0x51, 0x23, 0x2c, 0x7c, 0x19, 1117 0x8c, 0xd1, 0xcf, 0x50, 0xb9, 0x46, 0x3b, 0xd1, 0xbc, 0xdc, 0xeb, 0xaa, 0xd3, 0x7d, 0x52, 0xa8, 1118 0x21, 0xee, 0x86, 0x25, 0xa1, 0xe3, 0x28, 0xf8, 0x87, 0x87, 0xae, 0xd7, 0x08, 0x15, 0x8d, 0x71, 1119 0xae, 0xf6, 0xba, 0xea, 0xc5, 0x74, 0xc7, 0x51, 0x8f, 0x30, 0x62, 0xc3, 0x11, 0xf3, 0xe8, 0x76, 1120 0x44, 0x1d, 0xcf, 0xc3, 0x01, 0xed, 0x80, 0xd8, 0xb1, 0xbc, 0x99, 0xae, 0x52, 0x01, 0xf3, 0xb3, 1121 0x6e, 0x29, 0xae, 0x52, 0x49, 0x0a, 0x2c, 0x02, 0xd9, 0x3c, 0x22, 0x38, 0xf0, 0xdc, 0xd6, 0x89, 1122 0xcc, 0x2a, 0x93, 0x11, 0x02, 0xc2, 0x11, 0x42, 0x14, 0xca, 0xd0, 0x60, 0x01, 0x4c, 0xd6, 0x48, 1123 0x80, 0xc3, 0x10, 0x07, 0xa1, 0x82, 0x97, 0x73, 0x2b, 0x53, 0x77, 0xe7, 0xe2, 0x13, 0x1e, 0xd9, 1124 0xc5, 0x3e, 0x2e, 0x8c, 0xb1, 0x1a, 0xea, 0xf3, 0xe0, 0x6d, 0x30, 0x51, 0x38, 0xc0, 0xf5, 0x27, 1125 0x54, 0x63, 0x8f, 0x2d, 0x8c, 0x70, 0xcc, 0xeb, 0x91, 0x47, 0x43, 0x27, 0x20, 0x5a, 0x23, 0x39, 1126 0xbb, 0x84, 0x8f, 0x59, 0x3f, 0xce, 0xba, 0xa8, 0x31, 0x71, 0xc3, 0xf1, 0x91, 0xd8, 0xdd, 0x1b, 1127 0x36, 0x3f, 0xc2, 0x1a, 0x4a, 0x32, 0xe0, 0x43, 0x00, 0x13, 0x06, 0xcb, 0x0d, 0xf6, 0x31, 0x6f, 1128 0xa3, 0xc6, 0xf2, 0xcb, 0xbd, 0xae, 0x7a, 0x65, 0xa0, 0x8e, 0xde, 0xa2, 0x38, 0x0d, 0x0d, 0x20, 1129 0xc3, 0x47, 0xe0, 0x5c, 0xdf, 0xda, 0xd9, 0xdb, 0x6b, 0x1e, 0x21, 0xd7, 0xdb, 0xc7, 0xca, 0xe7, 1130 0x5c, 0x54, 0xeb, 0x75, 0xd5, 0xa5, 0xac, 0x28, 0x03, 0xea, 0x01, 0x45, 0x6a, 0x68, 0xa0, 0x00, 1131 0x74, 0xc1, 0x85, 0x41, 0x76, 0xfb, 0xc8, 0x53, 0xbe, 0xe0, 0xda, 0x2f, 0xf7, 0xba, 0xaa, 0x76, 1132 0xaa, 0xb6, 0x4e, 0x8e, 0x3c, 0x0d, 0x0d, 0xd3, 0x81, 0x9b, 0x60, 0xee, 0xc4, 0x65, 0x1f, 0x79, 1133 0x95, 0x76, 0xa8, 0x7c, 0xc9, 0xa5, 0x85, 0x2d, 0x21, 0x48, 0x93, 0x23, 0x4f, 0xf7, 0xdb, 0xa1, 1134 0x86, 0xd2, 0x34, 0xf8, 0x5e, 0x9c, 0x1b, 0x5e, 0xed, 0x43, 0xde, 0x52, 0x8e, 0x89, 0x15, 0x39, 1135 0xd2, 0xe1, 0x7d, 0x42, 0x78, 0x92, 0x9a, 0x88, 0x00, 0x5f, 0x8b, 0xf7, 0xd4, 0xc3, 0x6a, 0x8d, 1136 0x37, 0x93, 0x63, 0x62, 0x63, 0x1f, 0xb1, 0x3f, 0x68, 0xf7, 0x37, 0xd1, 0xc3, 0x6a, 0x4d, 0xfb, 1137 0x16, 0x98, 0x88, 0x77, 0x14, 0xbd, 0xd9, 0xed, 0xe3, 0x76, 0xf4, 0x92, 0x14, 0x6f, 0x76, 0x72, 1138 0xdc, 0xc6, 0x1a, 0x62, 0x4e, 0x78, 0x13, 0x8c, 0x3f, 0xc2, 0xcd, 0xfd, 0x03, 0xc2, 0x6a, 0x85, 1139 0x94, 0x9f, 0xef, 0x75, 0xd5, 0x19, 0x0e, 0xfb, 0x90, 0xd9, 0x35, 0x14, 0x01, 0xb4, 0xef, 0xcc, 1140 0xf1, 0xd6, 0x96, 0x0a, 0xf7, 0x9f, 0xa8, 0xa2, 0xb0, 0xe7, 0x1e, 0x52, 0x61, 0xf6, 0x5a, 0x15, 1141 0x8a, 0xd6, 0xc8, 0x0b, 0x14, 0xad, 0x55, 0x30, 0xfe, 0xc8, 0xb0, 0x28, 0x3a, 0x97, 0xae, 0x59, 1142 0x1f, 0xba, 0x2d, 0x0e, 0x8e, 0x10, 0xb0, 0x02, 0x16, 0x36, 0xb1, 0x1b, 0x90, 0x5d, 0xec, 0x92, 1143 0xa2, 0x47, 0x70, 0xf0, 0xd4, 0x6d, 0x45, 0x25, 0x29, 0x27, 0x66, 0xea, 0x20, 0x06, 0xe9, 0xcd, 1144 0x08, 0xa5, 0xa1, 0x41, 0x4c, 0x58, 0x04, 0xf3, 0x66, 0x0b, 0xd7, 0xe9, 0x23, 0xdf, 0x6e, 0x1e, 1145 0x62, 0xbf, 0x43, 0xb6, 0x42, 0x56, 0x9a, 0x72, 0xe2, 0x95, 0x82, 0x23, 0x88, 0x4e, 0x38, 0x46, 1146 0x43, 0x59, 0x16, 0xbd, 0x55, 0xac, 0x66, 0x48, 0xb0, 0x27, 0x3c, 0xd2, 0x17, 0xd3, 0xd7, 0x5c, 1147 0x8b, 0x21, 0xe2, 0xf7, 0x44, 0x27, 0x68, 0x85, 0x1a, 0xca, 0xd0, 0x20, 0x02, 0x0b, 0x46, 0xe3, 1148 0x29, 0x0e, 0x48, 0x33, 0xc4, 0x82, 0xda, 0x79, 0xa6, 0x26, 0x1c, 0x4e, 0x37, 0x06, 0x25, 0x05, 1149 0x07, 0x91, 0xe1, 0x5b, 0x71, 0x5f, 0x6d, 0x74, 0x88, 0x6f, 0x5b, 0xb5, 0xa8, 0xc4, 0x08, 0xb9, 1150 0x71, 0x3b, 0xc4, 0xd7, 0x09, 0x15, 0x48, 0x22, 0xe9, 0xa5, 0xdb, 0xef, 0xf3, 0x8d, 0x0e, 0x39, 1151 0x50, 0x14, 0xc6, 0x1d, 0xf2, 0x34, 0x70, 0x3b, 0xa9, 0xa7, 0x01, 0xa5, 0xc0, 0x6f, 0x88, 0x22, 1152 0xeb, 0xcd, 0x16, 0x56, 0x2e, 0xa6, 0x5f, 0xb9, 0x8c, 0xbd, 0xd7, 0xa4, 0x95, 0x26, 0x85, 0xed, 1153 0x47, 0x5f, 0xc2, 0xc7, 0x8c, 0x7c, 0x29, 0xbd, 0xb3, 0xe8, 0xa9, 0xe4, 0xdc, 0x24, 0x12, 0x5a, 1154 0x99, 0xbe, 0x9d, 0x09, 0x5c, 0x4e, 0xbf, 0x2a, 0x84, 0x9e, 0x90, 0xeb, 0x0c, 0xa2, 0xd1, 0xb5, 1155 0xe0, 0xe9, 0xa2, 0x0d, 0x23, 0xcb, 0x8a, 0xca, 0xb2, 0x22, 0xac, 0x45, 0x94, 0x63, 0xd6, 0x68, 1156 0xf2, 0x84, 0xa4, 0x28, 0xd0, 0x06, 0xf3, 0x27, 0x29, 0x3a, 0xd1, 0x59, 0x66, 0x3a, 0xc2, 0x4d, 1157 0xd6, 0xf4, 0x9a, 0xa4, 0xe9, 0xb6, 0xf4, 0x7e, 0x96, 0x05, 0xc9, 0xac, 0x00, 0xed, 0x03, 0xe8, 1158 0xdf, 0x71, 0x7e, 0xaf, 0xb1, 0x1c, 0xa5, 0x9b, 0xf1, 0x7e, 0x92, 0x45, 0x30, 0x7d, 0x0d, 0xb3, 1159 0x67, 0x41, 0x32, 0xcd, 0x1a, 0x93, 0x10, 0x36, 0x1c, 0x7f, 0x4b, 0x64, 0x72, 0x3d, 0x80, 0x4b, 1160 0xdb, 0xe7, 0xf8, 0xa1, 0xc1, 0xd6, 0xfb, 0xfa, 0xf0, 0x77, 0x09, 0x5f, 0xee, 0x04, 0x3c, 0x9e, 1161 0x4c, 0x9c, 0xee, 0x97, 0x86, 0xbe, 0x2c, 0x38, 0x59, 0x04, 0xc3, 0xad, 0xd4, 0x4b, 0x80, 0x29, 1162 0xdc, 0x78, 0xde, 0x43, 0x80, 0x0b, 0x65, 0x99, 0xb4, 0xbd, 0x2b, 0xf2, 0x54, 0x14, 0x5a, 0x1d, 1163 0xf6, 0xbf, 0x7b, 0x37, 0xd3, 0x7b, 0x27, 0x4e, 0x55, 0x9d, 0x03, 0x34, 0x94, 0x62, 0xd0, 0x13, 1164 0x9d, 0xb4, 0xd4, 0x88, 0x4b, 0x70, 0xd4, 0x75, 0x08, 0x0b, 0x9c, 0x12, 0xd2, 0x43, 0x0a, 0xd3, 1165 0xd0, 0x20, 0x72, 0x56, 0xd3, 0xf6, 0x9f, 0x60, 0x4f, 0x79, 0xe5, 0x79, 0x9a, 0x84, 0xc2, 0x32, 1166 0x9a, 0x8c, 0x0c, 0x1f, 0x80, 0x99, 0xf8, 0x2d, 0x52, 0xf0, 0x3b, 0x1e, 0x51, 0xee, 0xb1, 0xbb, 1167 0x50, 0x2c, 0x5e, 0xf1, 0xa3, 0xa7, 0x4e, 0xfd, 0xb4, 0x78, 0x89, 0x78, 0x68, 0x81, 0xf9, 0x87, 1168 0x1d, 0x9f, 0xb8, 0x79, 0xb7, 0xfe, 0x04, 0x7b, 0x8d, 0xfc, 0x31, 0xc1, 0xa1, 0xf2, 0x1a, 0x13, 1169 0x11, 0x7a, 0xfd, 0x0f, 0x28, 0x44, 0xdf, 0xe5, 0x18, 0x7d, 0x97, 0x82, 0x34, 0x94, 0x25, 0xd2, 1170 0x52, 0x52, 0x0d, 0xf0, 0x8e, 0x4f, 0xb0, 0xf2, 0x20, 0x7d, 0x5d, 0xb5, 0x03, 0xac, 0x3f, 0xf5, 1171 0xe9, 0xea, 0xc4, 0x18, 0x71, 0x45, 0xfc, 0x20, 0xe8, 0xb4, 0x09, 0xeb, 0x98, 0x94, 0xf7, 0xd2, 1172 0xdb, 0xf8, 0x64, 0x45, 0x38, 0x4a, 0x67, 0x3d, 0x96, 0xb0, 0x22, 0x02, 0x99, 0x96, 0x49, 0xcb, 1173 0xdf, 0xdf, 0xc7, 0x81, 0xb2, 0xc1, 0x16, 0x56, 0x28, 0x93, 0x2d, 0x66, 0xd7, 0x50, 0x04, 0xa0, 1174 0xef, 0x07, 0xcb, 0xdf, 0xaf, 0x74, 0x48, 0xbb, 0x43, 0x42, 0x65, 0x93, 0x9d, 0x67, 0xe1, 0xfd, 1175 0xd0, 0xf2, 0xf7, 0x75, 0x9f, 0x3b, 0x35, 0x24, 0x20, 0xe1, 0x1d, 0x30, 0x61, 0xf9, 0xfb, 0x16, 1176 0x7e, 0x8a, 0x5b, 0x4a, 0x31, 0x7d, 0x29, 0x52, 0x56, 0x8b, 0xba, 0x34, 0x74, 0x82, 0x5a, 0xfd, 1177 0xaf, 0x04, 0xa6, 0xe3, 0x6a, 0xcf, 0x8a, 0x39, 0x04, 0xb3, 0xa5, 0x1d, 0xe7, 0x11, 0x2a, 0xda, 1178 0xa6, 0x53, 0xdb, 0x32, 0x2c, 0x4b, 0x3e, 0x93, 0xb0, 0x59, 0x06, 0xda, 0x30, 0x65, 0x09, 0x2e, 1179 0x80, 0xb9, 0xd2, 0x8e, 0x83, 0x4c, 0x63, 0xcd, 0xa9, 0x94, 0x4d, 0xa7, 0x64, 0xbe, 0x2f, 0x8f, 1180 0xc0, 0x79, 0x30, 0x13, 0x1b, 0x91, 0x51, 0xde, 0x30, 0xe5, 0x1c, 0x5c, 0x04, 0xf3, 0xa5, 0x1d, 1181 0x67, 0xcd, 0xb4, 0x4c, 0xdb, 0x3c, 0x41, 0x8e, 0x46, 0xf4, 0xc8, 0xcc, 0xb1, 0x63, 0xf0, 0x02, 1182 0x58, 0x28, 0xed, 0x38, 0xf6, 0xe3, 0x72, 0x34, 0x16, 0x77, 0xcb, 0xe3, 0x70, 0x12, 0x8c, 0x59, 1183 0xa6, 0x51, 0x33, 0x65, 0x40, 0x89, 0xa6, 0x65, 0x16, 0xec, 0x62, 0xa5, 0xec, 0xa0, 0xed, 0x72, 1184 0xd9, 0x44, 0xf2, 0x39, 0x28, 0x83, 0xe9, 0x47, 0x86, 0x5d, 0xd8, 0x8c, 0x2d, 0x2a, 0x1d, 0xd6, 1185 0xaa, 0x14, 0x4a, 0x0e, 0x32, 0x0a, 0x26, 0x8a, 0xcd, 0x37, 0x29, 0x90, 0x09, 0xc5, 0x96, 0x7b, 1186 0xab, 0x79, 0x70, 0x36, 0xea, 0x86, 0xe1, 0x14, 0x38, 0x5b, 0xda, 0x71, 0x36, 0x8d, 0xda, 0xa6, 1187 0x7c, 0xa6, 0x8f, 0x34, 0x1f, 0x57, 0x8b, 0x88, 0xce, 0x18, 0x80, 0xf1, 0x88, 0x35, 0x02, 0xa7, 1188 0xc1, 0x44, 0xb9, 0xe2, 0x14, 0x36, 0xcd, 0x42, 0x49, 0xce, 0xad, 0xfe, 0x24, 0x27, 0xfc, 0x0a, 1189 0x00, 0xe7, 0xc0, 0x54, 0xb9, 0x62, 0x3b, 0x35, 0xdb, 0x40, 0xb6, 0xb9, 0x26, 0x9f, 0x81, 0xe7, 1190 0x01, 0x2c, 0x96, 0x8b, 0x76, 0xd1, 0xb0, 0xb8, 0xd1, 0x31, 0xed, 0xc2, 0x9a, 0x0c, 0xe8, 0x10, 1191 0xc8, 0x14, 0x2c, 0x53, 0xd4, 0x52, 0x2b, 0x6e, 0xd8, 0x26, 0xda, 0xe2, 0x96, 0x73, 0x70, 0x19, 1192 0x5c, 0xa9, 0x15, 0x37, 0x1e, 0x6e, 0x17, 0x39, 0xc6, 0x31, 0xca, 0x6b, 0x0e, 0x32, 0xb7, 0x2a, 1193 0x3b, 0xa6, 0xb3, 0x66, 0xd8, 0x86, 0xbc, 0x48, 0xd7, 0xbc, 0x66, 0xec, 0x98, 0x4e, 0xad, 0x6c, 1194 0x54, 0x6b, 0x9b, 0x15, 0x5b, 0x5e, 0x82, 0xd7, 0xc0, 0x55, 0x2a, 0x5c, 0x41, 0xa6, 0x13, 0x0f, 1195 0xb0, 0x8e, 0x2a, 0x5b, 0x7d, 0x88, 0x0a, 0x2f, 0x82, 0xc5, 0xc1, 0xae, 0x65, 0xca, 0xce, 0x0c, 1196 0x69, 0xa0, 0xc2, 0x66, 0x31, 0x1e, 0x73, 0x05, 0xde, 0x06, 0xaf, 0x9c, 0x16, 0x15, 0xfb, 0xae, 1197 0xd9, 0x95, 0xaa, 0x63, 0x6c, 0x98, 0x65, 0x5b, 0xbe, 0x09, 0xaf, 0x82, 0x8b, 0x79, 0xcb, 0x28, 1198 0x94, 0x36, 0x2b, 0x96, 0xe9, 0x54, 0x4d, 0x13, 0x39, 0xd5, 0x0a, 0xb2, 0x1d, 0xfb, 0xb1, 0x83, 1199 0x1e, 0xcb, 0x0d, 0xa8, 0x82, 0xcb, 0xdb, 0xe5, 0xe1, 0x00, 0x0c, 0x2f, 0x81, 0xc5, 0x35, 0xd3, 1200 0x32, 0xde, 0xcf, 0xb8, 0x9e, 0x49, 0xf0, 0x0a, 0xb8, 0xb0, 0x5d, 0x1e, 0xec, 0xfd, 0x54, 0x5a, 1201 0xfd, 0x2b, 0x00, 0xa3, 0xf4, 0xf9, 0x08, 0x15, 0x70, 0x2e, 0x5e, 0x5b, 0xba, 0x0d, 0xd7, 0x2b, 1202 0x96, 0x55, 0x79, 0x64, 0x22, 0xf9, 0x4c, 0x34, 0x9b, 0x8c, 0xc7, 0xd9, 0x2e, 0xdb, 0x45, 0xcb, 1203 0xb1, 0x51, 0x71, 0x63, 0xc3, 0x44, 0xfd, 0x15, 0x92, 0xe8, 0x79, 0x88, 0x09, 0x96, 0x69, 0xac, 1204 0xb1, 0x1d, 0x71, 0x13, 0xdc, 0x48, 0xda, 0x86, 0xd1, 0x73, 0x22, 0xfd, 0xe1, 0x76, 0x05, 0x6d, 1205 0x6f, 0xc9, 0xa3, 0x74, 0xd3, 0xc4, 0x36, 0x7a, 0xe6, 0xc6, 0xe0, 0x75, 0xa0, 0xc6, 0x4b, 0x2c, 1206 0xac, 0x6e, 0x22, 0x72, 0x00, 0xef, 0x83, 0xd7, 0x9f, 0x03, 0x1a, 0x16, 0xc5, 0x14, 0x4d, 0xc9, 1207 0x00, 0x6e, 0x34, 0x9f, 0x69, 0xf8, 0x1a, 0xb8, 0x33, 0xd4, 0x3d, 0x4c, 0x74, 0x06, 0xae, 0x83, 1208 0xfc, 0x00, 0x16, 0x9f, 0x65, 0x64, 0xe1, 0xfb, 0x32, 0x12, 0x8a, 0xa9, 0xd1, 0x26, 0x2c, 0x20, 1209 0x7a, 0x8a, 0xe5, 0x59, 0xb8, 0x0a, 0x5e, 0x1e, 0xba, 0x1d, 0x92, 0x8b, 0xd0, 0x80, 0x06, 0x78, 1210 0xe7, 0xc5, 0xb0, 0xc3, 0xc2, 0xc6, 0xf0, 0x25, 0xb0, 0x3c, 0x5c, 0x22, 0x5a, 0x92, 0x3d, 0xf8, 1211 0x36, 0x78, 0xe3, 0x79, 0xa8, 0x61, 0x43, 0xec, 0x9f, 0x3e, 0x44, 0xb4, 0x0d, 0x0e, 0xe8, 0xd9, 1212 0x1b, 0x8e, 0xa2, 0x1b, 0xa3, 0x09, 0xff, 0x0f, 0x68, 0x03, 0x37, 0x7b, 0x72, 0x59, 0x9e, 0x49, 1213 0xf0, 0x16, 0xb8, 0x89, 0x8c, 0xf2, 0x5a, 0x65, 0xcb, 0x79, 0x01, 0xfc, 0xa7, 0x12, 0x7c, 0x17, 1214 0xbc, 0xf5, 0x7c, 0xe0, 0xb0, 0x09, 0x7e, 0x26, 0x41, 0x13, 0xbc, 0xf7, 0xc2, 0xe3, 0x0d, 0x93, 1215 0xf9, 0x5c, 0x82, 0xd7, 0xc0, 0x95, 0xc1, 0xfc, 0x28, 0x0f, 0x5f, 0x48, 0x70, 0x05, 0x5c, 0x3f, 1216 0x75, 0xa4, 0x08, 0xf9, 0xa5, 0x04, 0xdf, 0x04, 0xf7, 0x4e, 0x83, 0x0c, 0x0b, 0xe3, 0x57, 0x12, 1217 0x7c, 0x00, 0xee, 0xbf, 0xc0, 0x18, 0xc3, 0x04, 0x7e, 0x7d, 0xca, 0x3c, 0xa2, 0x64, 0x7f, 0xf5, 1218 0xfc, 0x79, 0x44, 0xc8, 0xdf, 0x48, 0x70, 0x09, 0x5c, 0x1c, 0x0c, 0xa1, 0x7b, 0xe2, 0xb7, 0x12, 1219 0xbc, 0x01, 0x96, 0x4f, 0x55, 0xa2, 0xb0, 0xdf, 0x49, 0x50, 0x01, 0x0b, 0xe5, 0x8a, 0xb3, 0x6e, 1220 0x14, 0x2d, 0xe7, 0x51, 0xd1, 0xde, 0x74, 0x6a, 0x36, 0x32, 0x6b, 0x35, 0xf9, 0x67, 0x23, 0x34, 1221 0x94, 0x84, 0xa7, 0x5c, 0x89, 0x9c, 0xce, 0x7a, 0x05, 0x39, 0x56, 0x71, 0xc7, 0x2c, 0x53, 0xe4, 1222 0x27, 0x23, 0x70, 0x0e, 0x00, 0x0a, 0xab, 0x56, 0x8a, 0x65, 0xbb, 0x26, 0x7f, 0x37, 0x07, 0x67, 1223 0xc0, 0x84, 0xf9, 0xd8, 0x36, 0x51, 0xd9, 0xb0, 0xe4, 0xbf, 0xe5, 0xee, 0x3e, 0x00, 0x93, 0x76, 1224 0xe0, 0x7a, 0x61, 0xdb, 0x0f, 0x08, 0xbc, 0x2b, 0x7e, 0xcc, 0x46, 0xff, 0x9f, 0x15, 0xfd, 0x76, 1225 0x7e, 0x69, 0xee, 0xe4, 0x9b, 0xff, 0xac, 0xaa, 0x9d, 0x59, 0x91, 0xee, 0x48, 0xf9, 0x73, 0xcf, 1226 0xfe, 0xb4, 0x74, 0xe6, 0xd9, 0xd7, 0x4b, 0xd2, 0x57, 0x5f, 0x2f, 0x49, 0x7f, 0xfc, 0x7a, 0x49, 1227 0xfa, 0xf1, 0x9f, 0x97, 0xce, 0xec, 0x8e, 0xb3, 0xdf, 0xde, 0xef, 0xfd, 0x2f, 0x00, 0x00, 0xff, 1228 0xff, 0xda, 0x3b, 0x5a, 0x70, 0xc4, 0x1f, 0x00, 0x00, 1229} 1230 1231// Reference imports to suppress errors if they are not otherwise used. 1232var _ context.Context 1233var _ grpc.ClientConn 1234 1235// This is a compile-time assertion to ensure that this generated file 1236// is compatible with the grpc package it is being compiled against. 1237const _ = grpc.SupportPackageIsVersion4 1238 1239// TransportClient is the client API for Transport service. 1240// 1241// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 1242type TransportClient interface { 1243 Transport(ctx context.Context, opts ...grpc.CallOption) (Transport_TransportClient, error) 1244} 1245 1246type transportClient struct { 1247 cc *grpc.ClientConn 1248} 1249 1250func NewTransportClient(cc *grpc.ClientConn) TransportClient { 1251 return &transportClient{cc} 1252} 1253 1254func (c *transportClient) Transport(ctx context.Context, opts ...grpc.CallOption) (Transport_TransportClient, error) { 1255 stream, err := c.cc.NewStream(ctx, &_Transport_serviceDesc.Streams[0], "/rpcpb.Transport/Transport", opts...) 1256 if err != nil { 1257 return nil, err 1258 } 1259 x := &transportTransportClient{stream} 1260 return x, nil 1261} 1262 1263type Transport_TransportClient interface { 1264 Send(*Request) error 1265 Recv() (*Response, error) 1266 grpc.ClientStream 1267} 1268 1269type transportTransportClient struct { 1270 grpc.ClientStream 1271} 1272 1273func (x *transportTransportClient) Send(m *Request) error { 1274 return x.ClientStream.SendMsg(m) 1275} 1276 1277func (x *transportTransportClient) Recv() (*Response, error) { 1278 m := new(Response) 1279 if err := x.ClientStream.RecvMsg(m); err != nil { 1280 return nil, err 1281 } 1282 return m, nil 1283} 1284 1285// TransportServer is the server API for Transport service. 1286type TransportServer interface { 1287 Transport(Transport_TransportServer) error 1288} 1289 1290// UnimplementedTransportServer can be embedded to have forward compatible implementations. 1291type UnimplementedTransportServer struct { 1292} 1293 1294func (*UnimplementedTransportServer) Transport(srv Transport_TransportServer) error { 1295 return status.Errorf(codes.Unimplemented, "method Transport not implemented") 1296} 1297 1298func RegisterTransportServer(s *grpc.Server, srv TransportServer) { 1299 s.RegisterService(&_Transport_serviceDesc, srv) 1300} 1301 1302func _Transport_Transport_Handler(srv interface{}, stream grpc.ServerStream) error { 1303 return srv.(TransportServer).Transport(&transportTransportServer{stream}) 1304} 1305 1306type Transport_TransportServer interface { 1307 Send(*Response) error 1308 Recv() (*Request, error) 1309 grpc.ServerStream 1310} 1311 1312type transportTransportServer struct { 1313 grpc.ServerStream 1314} 1315 1316func (x *transportTransportServer) Send(m *Response) error { 1317 return x.ServerStream.SendMsg(m) 1318} 1319 1320func (x *transportTransportServer) Recv() (*Request, error) { 1321 m := new(Request) 1322 if err := x.ServerStream.RecvMsg(m); err != nil { 1323 return nil, err 1324 } 1325 return m, nil 1326} 1327 1328var _Transport_serviceDesc = grpc.ServiceDesc{ 1329 ServiceName: "rpcpb.Transport", 1330 HandlerType: (*TransportServer)(nil), 1331 Methods: []grpc.MethodDesc{}, 1332 Streams: []grpc.StreamDesc{ 1333 { 1334 StreamName: "Transport", 1335 Handler: _Transport_Transport_Handler, 1336 ServerStreams: true, 1337 ClientStreams: true, 1338 }, 1339 }, 1340 Metadata: "rpcpb/rpc.proto", 1341} 1342 1343func (m *Request) Marshal() (dAtA []byte, err error) { 1344 size := m.Size() 1345 dAtA = make([]byte, size) 1346 n, err := m.MarshalToSizedBuffer(dAtA[:size]) 1347 if err != nil { 1348 return nil, err 1349 } 1350 return dAtA[:n], nil 1351} 1352 1353func (m *Request) MarshalTo(dAtA []byte) (int, error) { 1354 size := m.Size() 1355 return m.MarshalToSizedBuffer(dAtA[:size]) 1356} 1357 1358func (m *Request) MarshalToSizedBuffer(dAtA []byte) (int, error) { 1359 i := len(dAtA) 1360 _ = i 1361 var l int 1362 _ = l 1363 if m.XXX_unrecognized != nil { 1364 i -= len(m.XXX_unrecognized) 1365 copy(dAtA[i:], m.XXX_unrecognized) 1366 } 1367 if m.Tester != nil { 1368 { 1369 size, err := m.Tester.MarshalToSizedBuffer(dAtA[:i]) 1370 if err != nil { 1371 return 0, err 1372 } 1373 i -= size 1374 i = encodeVarintRpc(dAtA, i, uint64(size)) 1375 } 1376 i-- 1377 dAtA[i] = 0x1a 1378 } 1379 if m.Member != nil { 1380 { 1381 size, err := m.Member.MarshalToSizedBuffer(dAtA[:i]) 1382 if err != nil { 1383 return 0, err 1384 } 1385 i -= size 1386 i = encodeVarintRpc(dAtA, i, uint64(size)) 1387 } 1388 i-- 1389 dAtA[i] = 0x12 1390 } 1391 if m.Operation != 0 { 1392 i = encodeVarintRpc(dAtA, i, uint64(m.Operation)) 1393 i-- 1394 dAtA[i] = 0x8 1395 } 1396 return len(dAtA) - i, nil 1397} 1398 1399func (m *SnapshotInfo) Marshal() (dAtA []byte, err error) { 1400 size := m.Size() 1401 dAtA = make([]byte, size) 1402 n, err := m.MarshalToSizedBuffer(dAtA[:size]) 1403 if err != nil { 1404 return nil, err 1405 } 1406 return dAtA[:n], nil 1407} 1408 1409func (m *SnapshotInfo) MarshalTo(dAtA []byte) (int, error) { 1410 size := m.Size() 1411 return m.MarshalToSizedBuffer(dAtA[:size]) 1412} 1413 1414func (m *SnapshotInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { 1415 i := len(dAtA) 1416 _ = i 1417 var l int 1418 _ = l 1419 if m.XXX_unrecognized != nil { 1420 i -= len(m.XXX_unrecognized) 1421 copy(dAtA[i:], m.XXX_unrecognized) 1422 } 1423 if len(m.Took) > 0 { 1424 i -= len(m.Took) 1425 copy(dAtA[i:], m.Took) 1426 i = encodeVarintRpc(dAtA, i, uint64(len(m.Took))) 1427 i-- 1428 dAtA[i] = 0x4a 1429 } 1430 if m.SnapshotRevision != 0 { 1431 i = encodeVarintRpc(dAtA, i, uint64(m.SnapshotRevision)) 1432 i-- 1433 dAtA[i] = 0x40 1434 } 1435 if m.SnapshotHash != 0 { 1436 i = encodeVarintRpc(dAtA, i, uint64(m.SnapshotHash)) 1437 i-- 1438 dAtA[i] = 0x38 1439 } 1440 if m.SnapshotTotalKey != 0 { 1441 i = encodeVarintRpc(dAtA, i, uint64(m.SnapshotTotalKey)) 1442 i-- 1443 dAtA[i] = 0x30 1444 } 1445 if len(m.SnapshotTotalSize) > 0 { 1446 i -= len(m.SnapshotTotalSize) 1447 copy(dAtA[i:], m.SnapshotTotalSize) 1448 i = encodeVarintRpc(dAtA, i, uint64(len(m.SnapshotTotalSize))) 1449 i-- 1450 dAtA[i] = 0x2a 1451 } 1452 if len(m.SnapshotFileSize) > 0 { 1453 i -= len(m.SnapshotFileSize) 1454 copy(dAtA[i:], m.SnapshotFileSize) 1455 i = encodeVarintRpc(dAtA, i, uint64(len(m.SnapshotFileSize))) 1456 i-- 1457 dAtA[i] = 0x22 1458 } 1459 if len(m.SnapshotPath) > 0 { 1460 i -= len(m.SnapshotPath) 1461 copy(dAtA[i:], m.SnapshotPath) 1462 i = encodeVarintRpc(dAtA, i, uint64(len(m.SnapshotPath))) 1463 i-- 1464 dAtA[i] = 0x1a 1465 } 1466 if len(m.MemberClientURLs) > 0 { 1467 for iNdEx := len(m.MemberClientURLs) - 1; iNdEx >= 0; iNdEx-- { 1468 i -= len(m.MemberClientURLs[iNdEx]) 1469 copy(dAtA[i:], m.MemberClientURLs[iNdEx]) 1470 i = encodeVarintRpc(dAtA, i, uint64(len(m.MemberClientURLs[iNdEx]))) 1471 i-- 1472 dAtA[i] = 0x12 1473 } 1474 } 1475 if len(m.MemberName) > 0 { 1476 i -= len(m.MemberName) 1477 copy(dAtA[i:], m.MemberName) 1478 i = encodeVarintRpc(dAtA, i, uint64(len(m.MemberName))) 1479 i-- 1480 dAtA[i] = 0xa 1481 } 1482 return len(dAtA) - i, nil 1483} 1484 1485func (m *Response) Marshal() (dAtA []byte, err error) { 1486 size := m.Size() 1487 dAtA = make([]byte, size) 1488 n, err := m.MarshalToSizedBuffer(dAtA[:size]) 1489 if err != nil { 1490 return nil, err 1491 } 1492 return dAtA[:n], nil 1493} 1494 1495func (m *Response) MarshalTo(dAtA []byte) (int, error) { 1496 size := m.Size() 1497 return m.MarshalToSizedBuffer(dAtA[:size]) 1498} 1499 1500func (m *Response) MarshalToSizedBuffer(dAtA []byte) (int, error) { 1501 i := len(dAtA) 1502 _ = i 1503 var l int 1504 _ = l 1505 if m.XXX_unrecognized != nil { 1506 i -= len(m.XXX_unrecognized) 1507 copy(dAtA[i:], m.XXX_unrecognized) 1508 } 1509 if m.SnapshotInfo != nil { 1510 { 1511 size, err := m.SnapshotInfo.MarshalToSizedBuffer(dAtA[:i]) 1512 if err != nil { 1513 return 0, err 1514 } 1515 i -= size 1516 i = encodeVarintRpc(dAtA, i, uint64(size)) 1517 } 1518 i-- 1519 dAtA[i] = 0x22 1520 } 1521 if m.Member != nil { 1522 { 1523 size, err := m.Member.MarshalToSizedBuffer(dAtA[:i]) 1524 if err != nil { 1525 return 0, err 1526 } 1527 i -= size 1528 i = encodeVarintRpc(dAtA, i, uint64(size)) 1529 } 1530 i-- 1531 dAtA[i] = 0x1a 1532 } 1533 if len(m.Status) > 0 { 1534 i -= len(m.Status) 1535 copy(dAtA[i:], m.Status) 1536 i = encodeVarintRpc(dAtA, i, uint64(len(m.Status))) 1537 i-- 1538 dAtA[i] = 0x12 1539 } 1540 if m.Success { 1541 i-- 1542 if m.Success { 1543 dAtA[i] = 1 1544 } else { 1545 dAtA[i] = 0 1546 } 1547 i-- 1548 dAtA[i] = 0x8 1549 } 1550 return len(dAtA) - i, nil 1551} 1552 1553func (m *Member) Marshal() (dAtA []byte, err error) { 1554 size := m.Size() 1555 dAtA = make([]byte, size) 1556 n, err := m.MarshalToSizedBuffer(dAtA[:size]) 1557 if err != nil { 1558 return nil, err 1559 } 1560 return dAtA[:n], nil 1561} 1562 1563func (m *Member) MarshalTo(dAtA []byte) (int, error) { 1564 size := m.Size() 1565 return m.MarshalToSizedBuffer(dAtA[:size]) 1566} 1567 1568func (m *Member) MarshalToSizedBuffer(dAtA []byte) (int, error) { 1569 i := len(dAtA) 1570 _ = i 1571 var l int 1572 _ = l 1573 if m.XXX_unrecognized != nil { 1574 i -= len(m.XXX_unrecognized) 1575 copy(dAtA[i:], m.XXX_unrecognized) 1576 } 1577 if m.SnapshotInfo != nil { 1578 { 1579 size, err := m.SnapshotInfo.MarshalToSizedBuffer(dAtA[:i]) 1580 if err != nil { 1581 return 0, err 1582 } 1583 i -= size 1584 i = encodeVarintRpc(dAtA, i, uint64(size)) 1585 } 1586 i-- 1587 dAtA[i] = 0x25 1588 i-- 1589 dAtA[i] = 0xd2 1590 } 1591 if len(m.SnapshotPath) > 0 { 1592 i -= len(m.SnapshotPath) 1593 copy(dAtA[i:], m.SnapshotPath) 1594 i = encodeVarintRpc(dAtA, i, uint64(len(m.SnapshotPath))) 1595 i-- 1596 dAtA[i] = 0x25 1597 i-- 1598 dAtA[i] = 0xca 1599 } 1600 if len(m.PeerTrustedCAPath) > 0 { 1601 i -= len(m.PeerTrustedCAPath) 1602 copy(dAtA[i:], m.PeerTrustedCAPath) 1603 i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerTrustedCAPath))) 1604 i-- 1605 dAtA[i] = 0x1f 1606 i-- 1607 dAtA[i] = 0xd2 1608 } 1609 if len(m.PeerTrustedCAData) > 0 { 1610 i -= len(m.PeerTrustedCAData) 1611 copy(dAtA[i:], m.PeerTrustedCAData) 1612 i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerTrustedCAData))) 1613 i-- 1614 dAtA[i] = 0x1f 1615 i-- 1616 dAtA[i] = 0xca 1617 } 1618 if len(m.PeerKeyPath) > 0 { 1619 i -= len(m.PeerKeyPath) 1620 copy(dAtA[i:], m.PeerKeyPath) 1621 i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerKeyPath))) 1622 i-- 1623 dAtA[i] = 0x1f 1624 i-- 1625 dAtA[i] = 0xc2 1626 } 1627 if len(m.PeerKeyData) > 0 { 1628 i -= len(m.PeerKeyData) 1629 copy(dAtA[i:], m.PeerKeyData) 1630 i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerKeyData))) 1631 i-- 1632 dAtA[i] = 0x1f 1633 i-- 1634 dAtA[i] = 0xba 1635 } 1636 if len(m.PeerCertPath) > 0 { 1637 i -= len(m.PeerCertPath) 1638 copy(dAtA[i:], m.PeerCertPath) 1639 i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerCertPath))) 1640 i-- 1641 dAtA[i] = 0x1f 1642 i-- 1643 dAtA[i] = 0xb2 1644 } 1645 if len(m.PeerCertData) > 0 { 1646 i -= len(m.PeerCertData) 1647 copy(dAtA[i:], m.PeerCertData) 1648 i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerCertData))) 1649 i-- 1650 dAtA[i] = 0x1f 1651 i-- 1652 dAtA[i] = 0xaa 1653 } 1654 if len(m.ClientTrustedCAPath) > 0 { 1655 i -= len(m.ClientTrustedCAPath) 1656 copy(dAtA[i:], m.ClientTrustedCAPath) 1657 i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientTrustedCAPath))) 1658 i-- 1659 dAtA[i] = 0x19 1660 i-- 1661 dAtA[i] = 0xb2 1662 } 1663 if len(m.ClientTrustedCAData) > 0 { 1664 i -= len(m.ClientTrustedCAData) 1665 copy(dAtA[i:], m.ClientTrustedCAData) 1666 i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientTrustedCAData))) 1667 i-- 1668 dAtA[i] = 0x19 1669 i-- 1670 dAtA[i] = 0xaa 1671 } 1672 if len(m.ClientKeyPath) > 0 { 1673 i -= len(m.ClientKeyPath) 1674 copy(dAtA[i:], m.ClientKeyPath) 1675 i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientKeyPath))) 1676 i-- 1677 dAtA[i] = 0x19 1678 i-- 1679 dAtA[i] = 0xa2 1680 } 1681 if len(m.ClientKeyData) > 0 { 1682 i -= len(m.ClientKeyData) 1683 copy(dAtA[i:], m.ClientKeyData) 1684 i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientKeyData))) 1685 i-- 1686 dAtA[i] = 0x19 1687 i-- 1688 dAtA[i] = 0x9a 1689 } 1690 if len(m.ClientCertPath) > 0 { 1691 i -= len(m.ClientCertPath) 1692 copy(dAtA[i:], m.ClientCertPath) 1693 i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientCertPath))) 1694 i-- 1695 dAtA[i] = 0x19 1696 i-- 1697 dAtA[i] = 0x92 1698 } 1699 if len(m.ClientCertData) > 0 { 1700 i -= len(m.ClientCertData) 1701 copy(dAtA[i:], m.ClientCertData) 1702 i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientCertData))) 1703 i-- 1704 dAtA[i] = 0x19 1705 i-- 1706 dAtA[i] = 0x8a 1707 } 1708 if m.EtcdOnSnapshotRestore != nil { 1709 { 1710 size, err := m.EtcdOnSnapshotRestore.MarshalToSizedBuffer(dAtA[:i]) 1711 if err != nil { 1712 return 0, err 1713 } 1714 i -= size 1715 i = encodeVarintRpc(dAtA, i, uint64(size)) 1716 } 1717 i-- 1718 dAtA[i] = 0x12 1719 i-- 1720 dAtA[i] = 0xfa 1721 } 1722 if m.Etcd != nil { 1723 { 1724 size, err := m.Etcd.MarshalToSizedBuffer(dAtA[:i]) 1725 if err != nil { 1726 return 0, err 1727 } 1728 i -= size 1729 i = encodeVarintRpc(dAtA, i, uint64(size)) 1730 } 1731 i-- 1732 dAtA[i] = 0x12 1733 i-- 1734 dAtA[i] = 0xf2 1735 } 1736 if len(m.EtcdClientEndpoint) > 0 { 1737 i -= len(m.EtcdClientEndpoint) 1738 copy(dAtA[i:], m.EtcdClientEndpoint) 1739 i = encodeVarintRpc(dAtA, i, uint64(len(m.EtcdClientEndpoint))) 1740 i-- 1741 dAtA[i] = 0x12 1742 i-- 1743 dAtA[i] = 0xea 1744 } 1745 if m.EtcdPeerProxy { 1746 i-- 1747 if m.EtcdPeerProxy { 1748 dAtA[i] = 1 1749 } else { 1750 dAtA[i] = 0 1751 } 1752 i-- 1753 dAtA[i] = 0xc 1754 i-- 1755 dAtA[i] = 0xd0 1756 } 1757 if m.EtcdClientProxy { 1758 i-- 1759 if m.EtcdClientProxy { 1760 dAtA[i] = 1 1761 } else { 1762 dAtA[i] = 0 1763 } 1764 i-- 1765 dAtA[i] = 0xc 1766 i-- 1767 dAtA[i] = 0xc8 1768 } 1769 if len(m.BaseDir) > 0 { 1770 i -= len(m.BaseDir) 1771 copy(dAtA[i:], m.BaseDir) 1772 i = encodeVarintRpc(dAtA, i, uint64(len(m.BaseDir))) 1773 i-- 1774 dAtA[i] = 0x6 1775 i-- 1776 dAtA[i] = 0xaa 1777 } 1778 if len(m.FailpointHTTPAddr) > 0 { 1779 i -= len(m.FailpointHTTPAddr) 1780 copy(dAtA[i:], m.FailpointHTTPAddr) 1781 i = encodeVarintRpc(dAtA, i, uint64(len(m.FailpointHTTPAddr))) 1782 i-- 1783 dAtA[i] = 0x62 1784 } 1785 if len(m.AgentAddr) > 0 { 1786 i -= len(m.AgentAddr) 1787 copy(dAtA[i:], m.AgentAddr) 1788 i = encodeVarintRpc(dAtA, i, uint64(len(m.AgentAddr))) 1789 i-- 1790 dAtA[i] = 0x5a 1791 } 1792 if len(m.EtcdExec) > 0 { 1793 i -= len(m.EtcdExec) 1794 copy(dAtA[i:], m.EtcdExec) 1795 i = encodeVarintRpc(dAtA, i, uint64(len(m.EtcdExec))) 1796 i-- 1797 dAtA[i] = 0xa 1798 } 1799 return len(dAtA) - i, nil 1800} 1801 1802func (m *Tester) Marshal() (dAtA []byte, err error) { 1803 size := m.Size() 1804 dAtA = make([]byte, size) 1805 n, err := m.MarshalToSizedBuffer(dAtA[:size]) 1806 if err != nil { 1807 return nil, err 1808 } 1809 return dAtA[:n], nil 1810} 1811 1812func (m *Tester) MarshalTo(dAtA []byte) (int, error) { 1813 size := m.Size() 1814 return m.MarshalToSizedBuffer(dAtA[:size]) 1815} 1816 1817func (m *Tester) MarshalToSizedBuffer(dAtA []byte) (int, error) { 1818 i := len(dAtA) 1819 _ = i 1820 var l int 1821 _ = l 1822 if m.XXX_unrecognized != nil { 1823 i -= len(m.XXX_unrecognized) 1824 copy(dAtA[i:], m.XXX_unrecognized) 1825 } 1826 if m.StressQPS != 0 { 1827 i = encodeVarintRpc(dAtA, i, uint64(m.StressQPS)) 1828 i-- 1829 dAtA[i] = 0x12 1830 i-- 1831 dAtA[i] = 0xf0 1832 } 1833 if m.StressClients != 0 { 1834 i = encodeVarintRpc(dAtA, i, uint64(m.StressClients)) 1835 i-- 1836 dAtA[i] = 0x12 1837 i-- 1838 dAtA[i] = 0xe8 1839 } 1840 if m.StressKeyTxnOps != 0 { 1841 i = encodeVarintRpc(dAtA, i, uint64(m.StressKeyTxnOps)) 1842 i-- 1843 dAtA[i] = 0xc 1844 i-- 1845 dAtA[i] = 0xe8 1846 } 1847 if m.StressKeySuffixRangeTxn != 0 { 1848 i = encodeVarintRpc(dAtA, i, uint64(m.StressKeySuffixRangeTxn)) 1849 i-- 1850 dAtA[i] = 0xc 1851 i-- 1852 dAtA[i] = 0xe0 1853 } 1854 if m.StressKeySuffixRange != 0 { 1855 i = encodeVarintRpc(dAtA, i, uint64(m.StressKeySuffixRange)) 1856 i-- 1857 dAtA[i] = 0xc 1858 i-- 1859 dAtA[i] = 0xd8 1860 } 1861 if m.StressKeySizeLarge != 0 { 1862 i = encodeVarintRpc(dAtA, i, uint64(m.StressKeySizeLarge)) 1863 i-- 1864 dAtA[i] = 0xc 1865 i-- 1866 dAtA[i] = 0xd0 1867 } 1868 if m.StressKeySize != 0 { 1869 i = encodeVarintRpc(dAtA, i, uint64(m.StressKeySize)) 1870 i-- 1871 dAtA[i] = 0xc 1872 i-- 1873 dAtA[i] = 0xc8 1874 } 1875 if len(m.Checkers) > 0 { 1876 for iNdEx := len(m.Checkers) - 1; iNdEx >= 0; iNdEx-- { 1877 i -= len(m.Checkers[iNdEx]) 1878 copy(dAtA[i:], m.Checkers[iNdEx]) 1879 i = encodeVarintRpc(dAtA, i, uint64(len(m.Checkers[iNdEx]))) 1880 i-- 1881 dAtA[i] = 0x6 1882 i-- 1883 dAtA[i] = 0xb2 1884 } 1885 } 1886 if len(m.Stressers) > 0 { 1887 for iNdEx := len(m.Stressers) - 1; iNdEx >= 0; iNdEx-- { 1888 { 1889 size, err := m.Stressers[iNdEx].MarshalToSizedBuffer(dAtA[:i]) 1890 if err != nil { 1891 return 0, err 1892 } 1893 i -= size 1894 i = encodeVarintRpc(dAtA, i, uint64(size)) 1895 } 1896 i-- 1897 dAtA[i] = 0x6 1898 i-- 1899 dAtA[i] = 0xaa 1900 } 1901 } 1902 if len(m.ExternalExecPath) > 0 { 1903 i -= len(m.ExternalExecPath) 1904 copy(dAtA[i:], m.ExternalExecPath) 1905 i = encodeVarintRpc(dAtA, i, uint64(len(m.ExternalExecPath))) 1906 i-- 1907 dAtA[i] = 0x2 1908 i-- 1909 dAtA[i] = 0xd2 1910 } 1911 if len(m.RunnerExecPath) > 0 { 1912 i -= len(m.RunnerExecPath) 1913 copy(dAtA[i:], m.RunnerExecPath) 1914 i = encodeVarintRpc(dAtA, i, uint64(len(m.RunnerExecPath))) 1915 i-- 1916 dAtA[i] = 0x2 1917 i-- 1918 dAtA[i] = 0xca 1919 } 1920 if len(m.FailpointCommands) > 0 { 1921 for iNdEx := len(m.FailpointCommands) - 1; iNdEx >= 0; iNdEx-- { 1922 i -= len(m.FailpointCommands[iNdEx]) 1923 copy(dAtA[i:], m.FailpointCommands[iNdEx]) 1924 i = encodeVarintRpc(dAtA, i, uint64(len(m.FailpointCommands[iNdEx]))) 1925 i-- 1926 dAtA[i] = 0x2 1927 i-- 1928 dAtA[i] = 0x92 1929 } 1930 } 1931 if len(m.Cases) > 0 { 1932 for iNdEx := len(m.Cases) - 1; iNdEx >= 0; iNdEx-- { 1933 i -= len(m.Cases[iNdEx]) 1934 copy(dAtA[i:], m.Cases[iNdEx]) 1935 i = encodeVarintRpc(dAtA, i, uint64(len(m.Cases[iNdEx]))) 1936 i-- 1937 dAtA[i] = 0x2 1938 i-- 1939 dAtA[i] = 0x8a 1940 } 1941 } 1942 if m.CaseShuffle { 1943 i-- 1944 if m.CaseShuffle { 1945 dAtA[i] = 1 1946 } else { 1947 dAtA[i] = 0 1948 } 1949 i-- 1950 dAtA[i] = 0x2 1951 i-- 1952 dAtA[i] = 0x80 1953 } 1954 if m.CaseDelayMs != 0 { 1955 i = encodeVarintRpc(dAtA, i, uint64(m.CaseDelayMs)) 1956 i-- 1957 dAtA[i] = 0x1 1958 i-- 1959 dAtA[i] = 0xf8 1960 } 1961 if m.EnablePprof { 1962 i-- 1963 if m.EnablePprof { 1964 dAtA[i] = 1 1965 } else { 1966 dAtA[i] = 0 1967 } 1968 i-- 1969 dAtA[i] = 0x1 1970 i-- 1971 dAtA[i] = 0xb8 1972 } 1973 if m.ExitOnCaseFail { 1974 i-- 1975 if m.ExitOnCaseFail { 1976 dAtA[i] = 1 1977 } else { 1978 dAtA[i] = 0 1979 } 1980 i-- 1981 dAtA[i] = 0x1 1982 i-- 1983 dAtA[i] = 0xb0 1984 } 1985 if m.RoundLimit != 0 { 1986 i = encodeVarintRpc(dAtA, i, uint64(m.RoundLimit)) 1987 i-- 1988 dAtA[i] = 0x1 1989 i-- 1990 dAtA[i] = 0xa8 1991 } 1992 if m.UpdatedDelayLatencyMs != 0 { 1993 i = encodeVarintRpc(dAtA, i, uint64(m.UpdatedDelayLatencyMs)) 1994 i-- 1995 dAtA[i] = 0x68 1996 } 1997 if m.DelayLatencyMsRv != 0 { 1998 i = encodeVarintRpc(dAtA, i, uint64(m.DelayLatencyMsRv)) 1999 i-- 2000 dAtA[i] = 0x60 2001 } 2002 if m.DelayLatencyMs != 0 { 2003 i = encodeVarintRpc(dAtA, i, uint64(m.DelayLatencyMs)) 2004 i-- 2005 dAtA[i] = 0x58 2006 } 2007 if len(m.Addr) > 0 { 2008 i -= len(m.Addr) 2009 copy(dAtA[i:], m.Addr) 2010 i = encodeVarintRpc(dAtA, i, uint64(len(m.Addr))) 2011 i-- 2012 dAtA[i] = 0x1a 2013 } 2014 if len(m.Network) > 0 { 2015 i -= len(m.Network) 2016 copy(dAtA[i:], m.Network) 2017 i = encodeVarintRpc(dAtA, i, uint64(len(m.Network))) 2018 i-- 2019 dAtA[i] = 0x12 2020 } 2021 if len(m.DataDir) > 0 { 2022 i -= len(m.DataDir) 2023 copy(dAtA[i:], m.DataDir) 2024 i = encodeVarintRpc(dAtA, i, uint64(len(m.DataDir))) 2025 i-- 2026 dAtA[i] = 0xa 2027 } 2028 return len(dAtA) - i, nil 2029} 2030 2031func (m *Stresser) Marshal() (dAtA []byte, err error) { 2032 size := m.Size() 2033 dAtA = make([]byte, size) 2034 n, err := m.MarshalToSizedBuffer(dAtA[:size]) 2035 if err != nil { 2036 return nil, err 2037 } 2038 return dAtA[:n], nil 2039} 2040 2041func (m *Stresser) MarshalTo(dAtA []byte) (int, error) { 2042 size := m.Size() 2043 return m.MarshalToSizedBuffer(dAtA[:size]) 2044} 2045 2046func (m *Stresser) MarshalToSizedBuffer(dAtA []byte) (int, error) { 2047 i := len(dAtA) 2048 _ = i 2049 var l int 2050 _ = l 2051 if m.XXX_unrecognized != nil { 2052 i -= len(m.XXX_unrecognized) 2053 copy(dAtA[i:], m.XXX_unrecognized) 2054 } 2055 if m.Weight != 0 { 2056 i -= 8 2057 encoding_binary.LittleEndian.PutUint64(dAtA[i:], uint64(math.Float64bits(float64(m.Weight)))) 2058 i-- 2059 dAtA[i] = 0x11 2060 } 2061 if len(m.Type) > 0 { 2062 i -= len(m.Type) 2063 copy(dAtA[i:], m.Type) 2064 i = encodeVarintRpc(dAtA, i, uint64(len(m.Type))) 2065 i-- 2066 dAtA[i] = 0xa 2067 } 2068 return len(dAtA) - i, nil 2069} 2070 2071func (m *Etcd) Marshal() (dAtA []byte, err error) { 2072 size := m.Size() 2073 dAtA = make([]byte, size) 2074 n, err := m.MarshalToSizedBuffer(dAtA[:size]) 2075 if err != nil { 2076 return nil, err 2077 } 2078 return dAtA[:n], nil 2079} 2080 2081func (m *Etcd) MarshalTo(dAtA []byte) (int, error) { 2082 size := m.Size() 2083 return m.MarshalToSizedBuffer(dAtA[:size]) 2084} 2085 2086func (m *Etcd) MarshalToSizedBuffer(dAtA []byte) (int, error) { 2087 i := len(dAtA) 2088 _ = i 2089 var l int 2090 _ = l 2091 if m.XXX_unrecognized != nil { 2092 i -= len(m.XXX_unrecognized) 2093 copy(dAtA[i:], m.XXX_unrecognized) 2094 } 2095 if len(m.LogLevel) > 0 { 2096 i -= len(m.LogLevel) 2097 copy(dAtA[i:], m.LogLevel) 2098 i = encodeVarintRpc(dAtA, i, uint64(len(m.LogLevel))) 2099 i-- 2100 dAtA[i] = 0x4 2101 i-- 2102 dAtA[i] = 0xca 2103 } 2104 if len(m.LogOutputs) > 0 { 2105 for iNdEx := len(m.LogOutputs) - 1; iNdEx >= 0; iNdEx-- { 2106 i -= len(m.LogOutputs[iNdEx]) 2107 copy(dAtA[i:], m.LogOutputs[iNdEx]) 2108 i = encodeVarintRpc(dAtA, i, uint64(len(m.LogOutputs[iNdEx]))) 2109 i-- 2110 dAtA[i] = 0x4 2111 i-- 2112 dAtA[i] = 0xc2 2113 } 2114 } 2115 if len(m.Logger) > 0 { 2116 i -= len(m.Logger) 2117 copy(dAtA[i:], m.Logger) 2118 i = encodeVarintRpc(dAtA, i, uint64(len(m.Logger))) 2119 i-- 2120 dAtA[i] = 0x4 2121 i-- 2122 dAtA[i] = 0xba 2123 } 2124 if m.InitialCorruptCheck { 2125 i-- 2126 if m.InitialCorruptCheck { 2127 dAtA[i] = 1 2128 } else { 2129 dAtA[i] = 0 2130 } 2131 i-- 2132 dAtA[i] = 0x4 2133 i-- 2134 dAtA[i] = 0x80 2135 } 2136 if m.PreVote { 2137 i-- 2138 if m.PreVote { 2139 dAtA[i] = 1 2140 } else { 2141 dAtA[i] = 0 2142 } 2143 i-- 2144 dAtA[i] = 0x3 2145 i-- 2146 dAtA[i] = 0xf8 2147 } 2148 if m.QuotaBackendBytes != 0 { 2149 i = encodeVarintRpc(dAtA, i, uint64(m.QuotaBackendBytes)) 2150 i-- 2151 dAtA[i] = 0x3 2152 i-- 2153 dAtA[i] = 0xa0 2154 } 2155 if m.SnapshotCount != 0 { 2156 i = encodeVarintRpc(dAtA, i, uint64(m.SnapshotCount)) 2157 i-- 2158 dAtA[i] = 0x3 2159 i-- 2160 dAtA[i] = 0x98 2161 } 2162 if len(m.InitialClusterToken) > 0 { 2163 i -= len(m.InitialClusterToken) 2164 copy(dAtA[i:], m.InitialClusterToken) 2165 i = encodeVarintRpc(dAtA, i, uint64(len(m.InitialClusterToken))) 2166 i-- 2167 dAtA[i] = 0x2 2168 i-- 2169 dAtA[i] = 0xda 2170 } 2171 if len(m.InitialClusterState) > 0 { 2172 i -= len(m.InitialClusterState) 2173 copy(dAtA[i:], m.InitialClusterState) 2174 i = encodeVarintRpc(dAtA, i, uint64(len(m.InitialClusterState))) 2175 i-- 2176 dAtA[i] = 0x2 2177 i-- 2178 dAtA[i] = 0xd2 2179 } 2180 if len(m.InitialCluster) > 0 { 2181 i -= len(m.InitialCluster) 2182 copy(dAtA[i:], m.InitialCluster) 2183 i = encodeVarintRpc(dAtA, i, uint64(len(m.InitialCluster))) 2184 i-- 2185 dAtA[i] = 0x2 2186 i-- 2187 dAtA[i] = 0xca 2188 } 2189 if len(m.PeerTrustedCAFile) > 0 { 2190 i -= len(m.PeerTrustedCAFile) 2191 copy(dAtA[i:], m.PeerTrustedCAFile) 2192 i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerTrustedCAFile))) 2193 i-- 2194 dAtA[i] = 0x2 2195 i-- 2196 dAtA[i] = 0xaa 2197 } 2198 if len(m.PeerKeyFile) > 0 { 2199 i -= len(m.PeerKeyFile) 2200 copy(dAtA[i:], m.PeerKeyFile) 2201 i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerKeyFile))) 2202 i-- 2203 dAtA[i] = 0x2 2204 i-- 2205 dAtA[i] = 0xa2 2206 } 2207 if len(m.PeerCertFile) > 0 { 2208 i -= len(m.PeerCertFile) 2209 copy(dAtA[i:], m.PeerCertFile) 2210 i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerCertFile))) 2211 i-- 2212 dAtA[i] = 0x2 2213 i-- 2214 dAtA[i] = 0x9a 2215 } 2216 if m.PeerClientCertAuth { 2217 i-- 2218 if m.PeerClientCertAuth { 2219 dAtA[i] = 1 2220 } else { 2221 dAtA[i] = 0 2222 } 2223 i-- 2224 dAtA[i] = 0x2 2225 i-- 2226 dAtA[i] = 0x90 2227 } 2228 if m.PeerAutoTLS { 2229 i-- 2230 if m.PeerAutoTLS { 2231 dAtA[i] = 1 2232 } else { 2233 dAtA[i] = 0 2234 } 2235 i-- 2236 dAtA[i] = 0x2 2237 i-- 2238 dAtA[i] = 0x88 2239 } 2240 if len(m.AdvertisePeerURLs) > 0 { 2241 for iNdEx := len(m.AdvertisePeerURLs) - 1; iNdEx >= 0; iNdEx-- { 2242 i -= len(m.AdvertisePeerURLs[iNdEx]) 2243 copy(dAtA[i:], m.AdvertisePeerURLs[iNdEx]) 2244 i = encodeVarintRpc(dAtA, i, uint64(len(m.AdvertisePeerURLs[iNdEx]))) 2245 i-- 2246 dAtA[i] = 0x2 2247 i-- 2248 dAtA[i] = 0x82 2249 } 2250 } 2251 if len(m.ListenPeerURLs) > 0 { 2252 for iNdEx := len(m.ListenPeerURLs) - 1; iNdEx >= 0; iNdEx-- { 2253 i -= len(m.ListenPeerURLs[iNdEx]) 2254 copy(dAtA[i:], m.ListenPeerURLs[iNdEx]) 2255 i = encodeVarintRpc(dAtA, i, uint64(len(m.ListenPeerURLs[iNdEx]))) 2256 i-- 2257 dAtA[i] = 0x1 2258 i-- 2259 dAtA[i] = 0xfa 2260 } 2261 } 2262 if len(m.ClientTrustedCAFile) > 0 { 2263 i -= len(m.ClientTrustedCAFile) 2264 copy(dAtA[i:], m.ClientTrustedCAFile) 2265 i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientTrustedCAFile))) 2266 i-- 2267 dAtA[i] = 0x1 2268 i-- 2269 dAtA[i] = 0xda 2270 } 2271 if len(m.ClientKeyFile) > 0 { 2272 i -= len(m.ClientKeyFile) 2273 copy(dAtA[i:], m.ClientKeyFile) 2274 i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientKeyFile))) 2275 i-- 2276 dAtA[i] = 0x1 2277 i-- 2278 dAtA[i] = 0xd2 2279 } 2280 if len(m.ClientCertFile) > 0 { 2281 i -= len(m.ClientCertFile) 2282 copy(dAtA[i:], m.ClientCertFile) 2283 i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientCertFile))) 2284 i-- 2285 dAtA[i] = 0x1 2286 i-- 2287 dAtA[i] = 0xca 2288 } 2289 if m.ClientCertAuth { 2290 i-- 2291 if m.ClientCertAuth { 2292 dAtA[i] = 1 2293 } else { 2294 dAtA[i] = 0 2295 } 2296 i-- 2297 dAtA[i] = 0x1 2298 i-- 2299 dAtA[i] = 0xc0 2300 } 2301 if m.ClientAutoTLS { 2302 i-- 2303 if m.ClientAutoTLS { 2304 dAtA[i] = 1 2305 } else { 2306 dAtA[i] = 0 2307 } 2308 i-- 2309 dAtA[i] = 0x1 2310 i-- 2311 dAtA[i] = 0xb8 2312 } 2313 if len(m.AdvertiseClientURLs) > 0 { 2314 for iNdEx := len(m.AdvertiseClientURLs) - 1; iNdEx >= 0; iNdEx-- { 2315 i -= len(m.AdvertiseClientURLs[iNdEx]) 2316 copy(dAtA[i:], m.AdvertiseClientURLs[iNdEx]) 2317 i = encodeVarintRpc(dAtA, i, uint64(len(m.AdvertiseClientURLs[iNdEx]))) 2318 i-- 2319 dAtA[i] = 0x1 2320 i-- 2321 dAtA[i] = 0xb2 2322 } 2323 } 2324 if len(m.ListenClientURLs) > 0 { 2325 for iNdEx := len(m.ListenClientURLs) - 1; iNdEx >= 0; iNdEx-- { 2326 i -= len(m.ListenClientURLs[iNdEx]) 2327 copy(dAtA[i:], m.ListenClientURLs[iNdEx]) 2328 i = encodeVarintRpc(dAtA, i, uint64(len(m.ListenClientURLs[iNdEx]))) 2329 i-- 2330 dAtA[i] = 0x1 2331 i-- 2332 dAtA[i] = 0xaa 2333 } 2334 } 2335 if m.ElectionTimeoutMs != 0 { 2336 i = encodeVarintRpc(dAtA, i, uint64(m.ElectionTimeoutMs)) 2337 i-- 2338 dAtA[i] = 0x60 2339 } 2340 if m.HeartbeatIntervalMs != 0 { 2341 i = encodeVarintRpc(dAtA, i, uint64(m.HeartbeatIntervalMs)) 2342 i-- 2343 dAtA[i] = 0x58 2344 } 2345 if len(m.WALDir) > 0 { 2346 i -= len(m.WALDir) 2347 copy(dAtA[i:], m.WALDir) 2348 i = encodeVarintRpc(dAtA, i, uint64(len(m.WALDir))) 2349 i-- 2350 dAtA[i] = 0x1a 2351 } 2352 if len(m.DataDir) > 0 { 2353 i -= len(m.DataDir) 2354 copy(dAtA[i:], m.DataDir) 2355 i = encodeVarintRpc(dAtA, i, uint64(len(m.DataDir))) 2356 i-- 2357 dAtA[i] = 0x12 2358 } 2359 if len(m.Name) > 0 { 2360 i -= len(m.Name) 2361 copy(dAtA[i:], m.Name) 2362 i = encodeVarintRpc(dAtA, i, uint64(len(m.Name))) 2363 i-- 2364 dAtA[i] = 0xa 2365 } 2366 return len(dAtA) - i, nil 2367} 2368 2369func encodeVarintRpc(dAtA []byte, offset int, v uint64) int { 2370 offset -= sovRpc(v) 2371 base := offset 2372 for v >= 1<<7 { 2373 dAtA[offset] = uint8(v&0x7f | 0x80) 2374 v >>= 7 2375 offset++ 2376 } 2377 dAtA[offset] = uint8(v) 2378 return base 2379} 2380func (m *Request) Size() (n int) { 2381 if m == nil { 2382 return 0 2383 } 2384 var l int 2385 _ = l 2386 if m.Operation != 0 { 2387 n += 1 + sovRpc(uint64(m.Operation)) 2388 } 2389 if m.Member != nil { 2390 l = m.Member.Size() 2391 n += 1 + l + sovRpc(uint64(l)) 2392 } 2393 if m.Tester != nil { 2394 l = m.Tester.Size() 2395 n += 1 + l + sovRpc(uint64(l)) 2396 } 2397 if m.XXX_unrecognized != nil { 2398 n += len(m.XXX_unrecognized) 2399 } 2400 return n 2401} 2402 2403func (m *SnapshotInfo) Size() (n int) { 2404 if m == nil { 2405 return 0 2406 } 2407 var l int 2408 _ = l 2409 l = len(m.MemberName) 2410 if l > 0 { 2411 n += 1 + l + sovRpc(uint64(l)) 2412 } 2413 if len(m.MemberClientURLs) > 0 { 2414 for _, s := range m.MemberClientURLs { 2415 l = len(s) 2416 n += 1 + l + sovRpc(uint64(l)) 2417 } 2418 } 2419 l = len(m.SnapshotPath) 2420 if l > 0 { 2421 n += 1 + l + sovRpc(uint64(l)) 2422 } 2423 l = len(m.SnapshotFileSize) 2424 if l > 0 { 2425 n += 1 + l + sovRpc(uint64(l)) 2426 } 2427 l = len(m.SnapshotTotalSize) 2428 if l > 0 { 2429 n += 1 + l + sovRpc(uint64(l)) 2430 } 2431 if m.SnapshotTotalKey != 0 { 2432 n += 1 + sovRpc(uint64(m.SnapshotTotalKey)) 2433 } 2434 if m.SnapshotHash != 0 { 2435 n += 1 + sovRpc(uint64(m.SnapshotHash)) 2436 } 2437 if m.SnapshotRevision != 0 { 2438 n += 1 + sovRpc(uint64(m.SnapshotRevision)) 2439 } 2440 l = len(m.Took) 2441 if l > 0 { 2442 n += 1 + l + sovRpc(uint64(l)) 2443 } 2444 if m.XXX_unrecognized != nil { 2445 n += len(m.XXX_unrecognized) 2446 } 2447 return n 2448} 2449 2450func (m *Response) Size() (n int) { 2451 if m == nil { 2452 return 0 2453 } 2454 var l int 2455 _ = l 2456 if m.Success { 2457 n += 2 2458 } 2459 l = len(m.Status) 2460 if l > 0 { 2461 n += 1 + l + sovRpc(uint64(l)) 2462 } 2463 if m.Member != nil { 2464 l = m.Member.Size() 2465 n += 1 + l + sovRpc(uint64(l)) 2466 } 2467 if m.SnapshotInfo != nil { 2468 l = m.SnapshotInfo.Size() 2469 n += 1 + l + sovRpc(uint64(l)) 2470 } 2471 if m.XXX_unrecognized != nil { 2472 n += len(m.XXX_unrecognized) 2473 } 2474 return n 2475} 2476 2477func (m *Member) Size() (n int) { 2478 if m == nil { 2479 return 0 2480 } 2481 var l int 2482 _ = l 2483 l = len(m.EtcdExec) 2484 if l > 0 { 2485 n += 1 + l + sovRpc(uint64(l)) 2486 } 2487 l = len(m.AgentAddr) 2488 if l > 0 { 2489 n += 1 + l + sovRpc(uint64(l)) 2490 } 2491 l = len(m.FailpointHTTPAddr) 2492 if l > 0 { 2493 n += 1 + l + sovRpc(uint64(l)) 2494 } 2495 l = len(m.BaseDir) 2496 if l > 0 { 2497 n += 2 + l + sovRpc(uint64(l)) 2498 } 2499 if m.EtcdClientProxy { 2500 n += 3 2501 } 2502 if m.EtcdPeerProxy { 2503 n += 3 2504 } 2505 l = len(m.EtcdClientEndpoint) 2506 if l > 0 { 2507 n += 2 + l + sovRpc(uint64(l)) 2508 } 2509 if m.Etcd != nil { 2510 l = m.Etcd.Size() 2511 n += 2 + l + sovRpc(uint64(l)) 2512 } 2513 if m.EtcdOnSnapshotRestore != nil { 2514 l = m.EtcdOnSnapshotRestore.Size() 2515 n += 2 + l + sovRpc(uint64(l)) 2516 } 2517 l = len(m.ClientCertData) 2518 if l > 0 { 2519 n += 2 + l + sovRpc(uint64(l)) 2520 } 2521 l = len(m.ClientCertPath) 2522 if l > 0 { 2523 n += 2 + l + sovRpc(uint64(l)) 2524 } 2525 l = len(m.ClientKeyData) 2526 if l > 0 { 2527 n += 2 + l + sovRpc(uint64(l)) 2528 } 2529 l = len(m.ClientKeyPath) 2530 if l > 0 { 2531 n += 2 + l + sovRpc(uint64(l)) 2532 } 2533 l = len(m.ClientTrustedCAData) 2534 if l > 0 { 2535 n += 2 + l + sovRpc(uint64(l)) 2536 } 2537 l = len(m.ClientTrustedCAPath) 2538 if l > 0 { 2539 n += 2 + l + sovRpc(uint64(l)) 2540 } 2541 l = len(m.PeerCertData) 2542 if l > 0 { 2543 n += 2 + l + sovRpc(uint64(l)) 2544 } 2545 l = len(m.PeerCertPath) 2546 if l > 0 { 2547 n += 2 + l + sovRpc(uint64(l)) 2548 } 2549 l = len(m.PeerKeyData) 2550 if l > 0 { 2551 n += 2 + l + sovRpc(uint64(l)) 2552 } 2553 l = len(m.PeerKeyPath) 2554 if l > 0 { 2555 n += 2 + l + sovRpc(uint64(l)) 2556 } 2557 l = len(m.PeerTrustedCAData) 2558 if l > 0 { 2559 n += 2 + l + sovRpc(uint64(l)) 2560 } 2561 l = len(m.PeerTrustedCAPath) 2562 if l > 0 { 2563 n += 2 + l + sovRpc(uint64(l)) 2564 } 2565 l = len(m.SnapshotPath) 2566 if l > 0 { 2567 n += 2 + l + sovRpc(uint64(l)) 2568 } 2569 if m.SnapshotInfo != nil { 2570 l = m.SnapshotInfo.Size() 2571 n += 2 + l + sovRpc(uint64(l)) 2572 } 2573 if m.XXX_unrecognized != nil { 2574 n += len(m.XXX_unrecognized) 2575 } 2576 return n 2577} 2578 2579func (m *Tester) Size() (n int) { 2580 if m == nil { 2581 return 0 2582 } 2583 var l int 2584 _ = l 2585 l = len(m.DataDir) 2586 if l > 0 { 2587 n += 1 + l + sovRpc(uint64(l)) 2588 } 2589 l = len(m.Network) 2590 if l > 0 { 2591 n += 1 + l + sovRpc(uint64(l)) 2592 } 2593 l = len(m.Addr) 2594 if l > 0 { 2595 n += 1 + l + sovRpc(uint64(l)) 2596 } 2597 if m.DelayLatencyMs != 0 { 2598 n += 1 + sovRpc(uint64(m.DelayLatencyMs)) 2599 } 2600 if m.DelayLatencyMsRv != 0 { 2601 n += 1 + sovRpc(uint64(m.DelayLatencyMsRv)) 2602 } 2603 if m.UpdatedDelayLatencyMs != 0 { 2604 n += 1 + sovRpc(uint64(m.UpdatedDelayLatencyMs)) 2605 } 2606 if m.RoundLimit != 0 { 2607 n += 2 + sovRpc(uint64(m.RoundLimit)) 2608 } 2609 if m.ExitOnCaseFail { 2610 n += 3 2611 } 2612 if m.EnablePprof { 2613 n += 3 2614 } 2615 if m.CaseDelayMs != 0 { 2616 n += 2 + sovRpc(uint64(m.CaseDelayMs)) 2617 } 2618 if m.CaseShuffle { 2619 n += 3 2620 } 2621 if len(m.Cases) > 0 { 2622 for _, s := range m.Cases { 2623 l = len(s) 2624 n += 2 + l + sovRpc(uint64(l)) 2625 } 2626 } 2627 if len(m.FailpointCommands) > 0 { 2628 for _, s := range m.FailpointCommands { 2629 l = len(s) 2630 n += 2 + l + sovRpc(uint64(l)) 2631 } 2632 } 2633 l = len(m.RunnerExecPath) 2634 if l > 0 { 2635 n += 2 + l + sovRpc(uint64(l)) 2636 } 2637 l = len(m.ExternalExecPath) 2638 if l > 0 { 2639 n += 2 + l + sovRpc(uint64(l)) 2640 } 2641 if len(m.Stressers) > 0 { 2642 for _, e := range m.Stressers { 2643 l = e.Size() 2644 n += 2 + l + sovRpc(uint64(l)) 2645 } 2646 } 2647 if len(m.Checkers) > 0 { 2648 for _, s := range m.Checkers { 2649 l = len(s) 2650 n += 2 + l + sovRpc(uint64(l)) 2651 } 2652 } 2653 if m.StressKeySize != 0 { 2654 n += 2 + sovRpc(uint64(m.StressKeySize)) 2655 } 2656 if m.StressKeySizeLarge != 0 { 2657 n += 2 + sovRpc(uint64(m.StressKeySizeLarge)) 2658 } 2659 if m.StressKeySuffixRange != 0 { 2660 n += 2 + sovRpc(uint64(m.StressKeySuffixRange)) 2661 } 2662 if m.StressKeySuffixRangeTxn != 0 { 2663 n += 2 + sovRpc(uint64(m.StressKeySuffixRangeTxn)) 2664 } 2665 if m.StressKeyTxnOps != 0 { 2666 n += 2 + sovRpc(uint64(m.StressKeyTxnOps)) 2667 } 2668 if m.StressClients != 0 { 2669 n += 2 + sovRpc(uint64(m.StressClients)) 2670 } 2671 if m.StressQPS != 0 { 2672 n += 2 + sovRpc(uint64(m.StressQPS)) 2673 } 2674 if m.XXX_unrecognized != nil { 2675 n += len(m.XXX_unrecognized) 2676 } 2677 return n 2678} 2679 2680func (m *Stresser) Size() (n int) { 2681 if m == nil { 2682 return 0 2683 } 2684 var l int 2685 _ = l 2686 l = len(m.Type) 2687 if l > 0 { 2688 n += 1 + l + sovRpc(uint64(l)) 2689 } 2690 if m.Weight != 0 { 2691 n += 9 2692 } 2693 if m.XXX_unrecognized != nil { 2694 n += len(m.XXX_unrecognized) 2695 } 2696 return n 2697} 2698 2699func (m *Etcd) Size() (n int) { 2700 if m == nil { 2701 return 0 2702 } 2703 var l int 2704 _ = l 2705 l = len(m.Name) 2706 if l > 0 { 2707 n += 1 + l + sovRpc(uint64(l)) 2708 } 2709 l = len(m.DataDir) 2710 if l > 0 { 2711 n += 1 + l + sovRpc(uint64(l)) 2712 } 2713 l = len(m.WALDir) 2714 if l > 0 { 2715 n += 1 + l + sovRpc(uint64(l)) 2716 } 2717 if m.HeartbeatIntervalMs != 0 { 2718 n += 1 + sovRpc(uint64(m.HeartbeatIntervalMs)) 2719 } 2720 if m.ElectionTimeoutMs != 0 { 2721 n += 1 + sovRpc(uint64(m.ElectionTimeoutMs)) 2722 } 2723 if len(m.ListenClientURLs) > 0 { 2724 for _, s := range m.ListenClientURLs { 2725 l = len(s) 2726 n += 2 + l + sovRpc(uint64(l)) 2727 } 2728 } 2729 if len(m.AdvertiseClientURLs) > 0 { 2730 for _, s := range m.AdvertiseClientURLs { 2731 l = len(s) 2732 n += 2 + l + sovRpc(uint64(l)) 2733 } 2734 } 2735 if m.ClientAutoTLS { 2736 n += 3 2737 } 2738 if m.ClientCertAuth { 2739 n += 3 2740 } 2741 l = len(m.ClientCertFile) 2742 if l > 0 { 2743 n += 2 + l + sovRpc(uint64(l)) 2744 } 2745 l = len(m.ClientKeyFile) 2746 if l > 0 { 2747 n += 2 + l + sovRpc(uint64(l)) 2748 } 2749 l = len(m.ClientTrustedCAFile) 2750 if l > 0 { 2751 n += 2 + l + sovRpc(uint64(l)) 2752 } 2753 if len(m.ListenPeerURLs) > 0 { 2754 for _, s := range m.ListenPeerURLs { 2755 l = len(s) 2756 n += 2 + l + sovRpc(uint64(l)) 2757 } 2758 } 2759 if len(m.AdvertisePeerURLs) > 0 { 2760 for _, s := range m.AdvertisePeerURLs { 2761 l = len(s) 2762 n += 2 + l + sovRpc(uint64(l)) 2763 } 2764 } 2765 if m.PeerAutoTLS { 2766 n += 3 2767 } 2768 if m.PeerClientCertAuth { 2769 n += 3 2770 } 2771 l = len(m.PeerCertFile) 2772 if l > 0 { 2773 n += 2 + l + sovRpc(uint64(l)) 2774 } 2775 l = len(m.PeerKeyFile) 2776 if l > 0 { 2777 n += 2 + l + sovRpc(uint64(l)) 2778 } 2779 l = len(m.PeerTrustedCAFile) 2780 if l > 0 { 2781 n += 2 + l + sovRpc(uint64(l)) 2782 } 2783 l = len(m.InitialCluster) 2784 if l > 0 { 2785 n += 2 + l + sovRpc(uint64(l)) 2786 } 2787 l = len(m.InitialClusterState) 2788 if l > 0 { 2789 n += 2 + l + sovRpc(uint64(l)) 2790 } 2791 l = len(m.InitialClusterToken) 2792 if l > 0 { 2793 n += 2 + l + sovRpc(uint64(l)) 2794 } 2795 if m.SnapshotCount != 0 { 2796 n += 2 + sovRpc(uint64(m.SnapshotCount)) 2797 } 2798 if m.QuotaBackendBytes != 0 { 2799 n += 2 + sovRpc(uint64(m.QuotaBackendBytes)) 2800 } 2801 if m.PreVote { 2802 n += 3 2803 } 2804 if m.InitialCorruptCheck { 2805 n += 3 2806 } 2807 l = len(m.Logger) 2808 if l > 0 { 2809 n += 2 + l + sovRpc(uint64(l)) 2810 } 2811 if len(m.LogOutputs) > 0 { 2812 for _, s := range m.LogOutputs { 2813 l = len(s) 2814 n += 2 + l + sovRpc(uint64(l)) 2815 } 2816 } 2817 l = len(m.LogLevel) 2818 if l > 0 { 2819 n += 2 + l + sovRpc(uint64(l)) 2820 } 2821 if m.XXX_unrecognized != nil { 2822 n += len(m.XXX_unrecognized) 2823 } 2824 return n 2825} 2826 2827func sovRpc(x uint64) (n int) { 2828 return (math_bits.Len64(x|1) + 6) / 7 2829} 2830func sozRpc(x uint64) (n int) { 2831 return sovRpc(uint64((x << 1) ^ uint64((int64(x) >> 63)))) 2832} 2833func (m *Request) Unmarshal(dAtA []byte) error { 2834 l := len(dAtA) 2835 iNdEx := 0 2836 for iNdEx < l { 2837 preIndex := iNdEx 2838 var wire uint64 2839 for shift := uint(0); ; shift += 7 { 2840 if shift >= 64 { 2841 return ErrIntOverflowRpc 2842 } 2843 if iNdEx >= l { 2844 return io.ErrUnexpectedEOF 2845 } 2846 b := dAtA[iNdEx] 2847 iNdEx++ 2848 wire |= uint64(b&0x7F) << shift 2849 if b < 0x80 { 2850 break 2851 } 2852 } 2853 fieldNum := int32(wire >> 3) 2854 wireType := int(wire & 0x7) 2855 if wireType == 4 { 2856 return fmt.Errorf("proto: Request: wiretype end group for non-group") 2857 } 2858 if fieldNum <= 0 { 2859 return fmt.Errorf("proto: Request: illegal tag %d (wire type %d)", fieldNum, wire) 2860 } 2861 switch fieldNum { 2862 case 1: 2863 if wireType != 0 { 2864 return fmt.Errorf("proto: wrong wireType = %d for field Operation", wireType) 2865 } 2866 m.Operation = 0 2867 for shift := uint(0); ; shift += 7 { 2868 if shift >= 64 { 2869 return ErrIntOverflowRpc 2870 } 2871 if iNdEx >= l { 2872 return io.ErrUnexpectedEOF 2873 } 2874 b := dAtA[iNdEx] 2875 iNdEx++ 2876 m.Operation |= Operation(b&0x7F) << shift 2877 if b < 0x80 { 2878 break 2879 } 2880 } 2881 case 2: 2882 if wireType != 2 { 2883 return fmt.Errorf("proto: wrong wireType = %d for field Member", wireType) 2884 } 2885 var msglen int 2886 for shift := uint(0); ; shift += 7 { 2887 if shift >= 64 { 2888 return ErrIntOverflowRpc 2889 } 2890 if iNdEx >= l { 2891 return io.ErrUnexpectedEOF 2892 } 2893 b := dAtA[iNdEx] 2894 iNdEx++ 2895 msglen |= int(b&0x7F) << shift 2896 if b < 0x80 { 2897 break 2898 } 2899 } 2900 if msglen < 0 { 2901 return ErrInvalidLengthRpc 2902 } 2903 postIndex := iNdEx + msglen 2904 if postIndex < 0 { 2905 return ErrInvalidLengthRpc 2906 } 2907 if postIndex > l { 2908 return io.ErrUnexpectedEOF 2909 } 2910 if m.Member == nil { 2911 m.Member = &Member{} 2912 } 2913 if err := m.Member.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { 2914 return err 2915 } 2916 iNdEx = postIndex 2917 case 3: 2918 if wireType != 2 { 2919 return fmt.Errorf("proto: wrong wireType = %d for field Tester", wireType) 2920 } 2921 var msglen int 2922 for shift := uint(0); ; shift += 7 { 2923 if shift >= 64 { 2924 return ErrIntOverflowRpc 2925 } 2926 if iNdEx >= l { 2927 return io.ErrUnexpectedEOF 2928 } 2929 b := dAtA[iNdEx] 2930 iNdEx++ 2931 msglen |= int(b&0x7F) << shift 2932 if b < 0x80 { 2933 break 2934 } 2935 } 2936 if msglen < 0 { 2937 return ErrInvalidLengthRpc 2938 } 2939 postIndex := iNdEx + msglen 2940 if postIndex < 0 { 2941 return ErrInvalidLengthRpc 2942 } 2943 if postIndex > l { 2944 return io.ErrUnexpectedEOF 2945 } 2946 if m.Tester == nil { 2947 m.Tester = &Tester{} 2948 } 2949 if err := m.Tester.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { 2950 return err 2951 } 2952 iNdEx = postIndex 2953 default: 2954 iNdEx = preIndex 2955 skippy, err := skipRpc(dAtA[iNdEx:]) 2956 if err != nil { 2957 return err 2958 } 2959 if skippy < 0 { 2960 return ErrInvalidLengthRpc 2961 } 2962 if (iNdEx + skippy) < 0 { 2963 return ErrInvalidLengthRpc 2964 } 2965 if (iNdEx + skippy) > l { 2966 return io.ErrUnexpectedEOF 2967 } 2968 m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) 2969 iNdEx += skippy 2970 } 2971 } 2972 2973 if iNdEx > l { 2974 return io.ErrUnexpectedEOF 2975 } 2976 return nil 2977} 2978func (m *SnapshotInfo) Unmarshal(dAtA []byte) error { 2979 l := len(dAtA) 2980 iNdEx := 0 2981 for iNdEx < l { 2982 preIndex := iNdEx 2983 var wire uint64 2984 for shift := uint(0); ; shift += 7 { 2985 if shift >= 64 { 2986 return ErrIntOverflowRpc 2987 } 2988 if iNdEx >= l { 2989 return io.ErrUnexpectedEOF 2990 } 2991 b := dAtA[iNdEx] 2992 iNdEx++ 2993 wire |= uint64(b&0x7F) << shift 2994 if b < 0x80 { 2995 break 2996 } 2997 } 2998 fieldNum := int32(wire >> 3) 2999 wireType := int(wire & 0x7) 3000 if wireType == 4 { 3001 return fmt.Errorf("proto: SnapshotInfo: wiretype end group for non-group") 3002 } 3003 if fieldNum <= 0 { 3004 return fmt.Errorf("proto: SnapshotInfo: illegal tag %d (wire type %d)", fieldNum, wire) 3005 } 3006 switch fieldNum { 3007 case 1: 3008 if wireType != 2 { 3009 return fmt.Errorf("proto: wrong wireType = %d for field MemberName", wireType) 3010 } 3011 var stringLen uint64 3012 for shift := uint(0); ; shift += 7 { 3013 if shift >= 64 { 3014 return ErrIntOverflowRpc 3015 } 3016 if iNdEx >= l { 3017 return io.ErrUnexpectedEOF 3018 } 3019 b := dAtA[iNdEx] 3020 iNdEx++ 3021 stringLen |= uint64(b&0x7F) << shift 3022 if b < 0x80 { 3023 break 3024 } 3025 } 3026 intStringLen := int(stringLen) 3027 if intStringLen < 0 { 3028 return ErrInvalidLengthRpc 3029 } 3030 postIndex := iNdEx + intStringLen 3031 if postIndex < 0 { 3032 return ErrInvalidLengthRpc 3033 } 3034 if postIndex > l { 3035 return io.ErrUnexpectedEOF 3036 } 3037 m.MemberName = string(dAtA[iNdEx:postIndex]) 3038 iNdEx = postIndex 3039 case 2: 3040 if wireType != 2 { 3041 return fmt.Errorf("proto: wrong wireType = %d for field MemberClientURLs", wireType) 3042 } 3043 var stringLen uint64 3044 for shift := uint(0); ; shift += 7 { 3045 if shift >= 64 { 3046 return ErrIntOverflowRpc 3047 } 3048 if iNdEx >= l { 3049 return io.ErrUnexpectedEOF 3050 } 3051 b := dAtA[iNdEx] 3052 iNdEx++ 3053 stringLen |= uint64(b&0x7F) << shift 3054 if b < 0x80 { 3055 break 3056 } 3057 } 3058 intStringLen := int(stringLen) 3059 if intStringLen < 0 { 3060 return ErrInvalidLengthRpc 3061 } 3062 postIndex := iNdEx + intStringLen 3063 if postIndex < 0 { 3064 return ErrInvalidLengthRpc 3065 } 3066 if postIndex > l { 3067 return io.ErrUnexpectedEOF 3068 } 3069 m.MemberClientURLs = append(m.MemberClientURLs, string(dAtA[iNdEx:postIndex])) 3070 iNdEx = postIndex 3071 case 3: 3072 if wireType != 2 { 3073 return fmt.Errorf("proto: wrong wireType = %d for field SnapshotPath", wireType) 3074 } 3075 var stringLen uint64 3076 for shift := uint(0); ; shift += 7 { 3077 if shift >= 64 { 3078 return ErrIntOverflowRpc 3079 } 3080 if iNdEx >= l { 3081 return io.ErrUnexpectedEOF 3082 } 3083 b := dAtA[iNdEx] 3084 iNdEx++ 3085 stringLen |= uint64(b&0x7F) << shift 3086 if b < 0x80 { 3087 break 3088 } 3089 } 3090 intStringLen := int(stringLen) 3091 if intStringLen < 0 { 3092 return ErrInvalidLengthRpc 3093 } 3094 postIndex := iNdEx + intStringLen 3095 if postIndex < 0 { 3096 return ErrInvalidLengthRpc 3097 } 3098 if postIndex > l { 3099 return io.ErrUnexpectedEOF 3100 } 3101 m.SnapshotPath = string(dAtA[iNdEx:postIndex]) 3102 iNdEx = postIndex 3103 case 4: 3104 if wireType != 2 { 3105 return fmt.Errorf("proto: wrong wireType = %d for field SnapshotFileSize", wireType) 3106 } 3107 var stringLen uint64 3108 for shift := uint(0); ; shift += 7 { 3109 if shift >= 64 { 3110 return ErrIntOverflowRpc 3111 } 3112 if iNdEx >= l { 3113 return io.ErrUnexpectedEOF 3114 } 3115 b := dAtA[iNdEx] 3116 iNdEx++ 3117 stringLen |= uint64(b&0x7F) << shift 3118 if b < 0x80 { 3119 break 3120 } 3121 } 3122 intStringLen := int(stringLen) 3123 if intStringLen < 0 { 3124 return ErrInvalidLengthRpc 3125 } 3126 postIndex := iNdEx + intStringLen 3127 if postIndex < 0 { 3128 return ErrInvalidLengthRpc 3129 } 3130 if postIndex > l { 3131 return io.ErrUnexpectedEOF 3132 } 3133 m.SnapshotFileSize = string(dAtA[iNdEx:postIndex]) 3134 iNdEx = postIndex 3135 case 5: 3136 if wireType != 2 { 3137 return fmt.Errorf("proto: wrong wireType = %d for field SnapshotTotalSize", wireType) 3138 } 3139 var stringLen uint64 3140 for shift := uint(0); ; shift += 7 { 3141 if shift >= 64 { 3142 return ErrIntOverflowRpc 3143 } 3144 if iNdEx >= l { 3145 return io.ErrUnexpectedEOF 3146 } 3147 b := dAtA[iNdEx] 3148 iNdEx++ 3149 stringLen |= uint64(b&0x7F) << shift 3150 if b < 0x80 { 3151 break 3152 } 3153 } 3154 intStringLen := int(stringLen) 3155 if intStringLen < 0 { 3156 return ErrInvalidLengthRpc 3157 } 3158 postIndex := iNdEx + intStringLen 3159 if postIndex < 0 { 3160 return ErrInvalidLengthRpc 3161 } 3162 if postIndex > l { 3163 return io.ErrUnexpectedEOF 3164 } 3165 m.SnapshotTotalSize = string(dAtA[iNdEx:postIndex]) 3166 iNdEx = postIndex 3167 case 6: 3168 if wireType != 0 { 3169 return fmt.Errorf("proto: wrong wireType = %d for field SnapshotTotalKey", wireType) 3170 } 3171 m.SnapshotTotalKey = 0 3172 for shift := uint(0); ; shift += 7 { 3173 if shift >= 64 { 3174 return ErrIntOverflowRpc 3175 } 3176 if iNdEx >= l { 3177 return io.ErrUnexpectedEOF 3178 } 3179 b := dAtA[iNdEx] 3180 iNdEx++ 3181 m.SnapshotTotalKey |= int64(b&0x7F) << shift 3182 if b < 0x80 { 3183 break 3184 } 3185 } 3186 case 7: 3187 if wireType != 0 { 3188 return fmt.Errorf("proto: wrong wireType = %d for field SnapshotHash", wireType) 3189 } 3190 m.SnapshotHash = 0 3191 for shift := uint(0); ; shift += 7 { 3192 if shift >= 64 { 3193 return ErrIntOverflowRpc 3194 } 3195 if iNdEx >= l { 3196 return io.ErrUnexpectedEOF 3197 } 3198 b := dAtA[iNdEx] 3199 iNdEx++ 3200 m.SnapshotHash |= int64(b&0x7F) << shift 3201 if b < 0x80 { 3202 break 3203 } 3204 } 3205 case 8: 3206 if wireType != 0 { 3207 return fmt.Errorf("proto: wrong wireType = %d for field SnapshotRevision", wireType) 3208 } 3209 m.SnapshotRevision = 0 3210 for shift := uint(0); ; shift += 7 { 3211 if shift >= 64 { 3212 return ErrIntOverflowRpc 3213 } 3214 if iNdEx >= l { 3215 return io.ErrUnexpectedEOF 3216 } 3217 b := dAtA[iNdEx] 3218 iNdEx++ 3219 m.SnapshotRevision |= int64(b&0x7F) << shift 3220 if b < 0x80 { 3221 break 3222 } 3223 } 3224 case 9: 3225 if wireType != 2 { 3226 return fmt.Errorf("proto: wrong wireType = %d for field Took", wireType) 3227 } 3228 var stringLen uint64 3229 for shift := uint(0); ; shift += 7 { 3230 if shift >= 64 { 3231 return ErrIntOverflowRpc 3232 } 3233 if iNdEx >= l { 3234 return io.ErrUnexpectedEOF 3235 } 3236 b := dAtA[iNdEx] 3237 iNdEx++ 3238 stringLen |= uint64(b&0x7F) << shift 3239 if b < 0x80 { 3240 break 3241 } 3242 } 3243 intStringLen := int(stringLen) 3244 if intStringLen < 0 { 3245 return ErrInvalidLengthRpc 3246 } 3247 postIndex := iNdEx + intStringLen 3248 if postIndex < 0 { 3249 return ErrInvalidLengthRpc 3250 } 3251 if postIndex > l { 3252 return io.ErrUnexpectedEOF 3253 } 3254 m.Took = string(dAtA[iNdEx:postIndex]) 3255 iNdEx = postIndex 3256 default: 3257 iNdEx = preIndex 3258 skippy, err := skipRpc(dAtA[iNdEx:]) 3259 if err != nil { 3260 return err 3261 } 3262 if skippy < 0 { 3263 return ErrInvalidLengthRpc 3264 } 3265 if (iNdEx + skippy) < 0 { 3266 return ErrInvalidLengthRpc 3267 } 3268 if (iNdEx + skippy) > l { 3269 return io.ErrUnexpectedEOF 3270 } 3271 m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) 3272 iNdEx += skippy 3273 } 3274 } 3275 3276 if iNdEx > l { 3277 return io.ErrUnexpectedEOF 3278 } 3279 return nil 3280} 3281func (m *Response) Unmarshal(dAtA []byte) error { 3282 l := len(dAtA) 3283 iNdEx := 0 3284 for iNdEx < l { 3285 preIndex := iNdEx 3286 var wire uint64 3287 for shift := uint(0); ; shift += 7 { 3288 if shift >= 64 { 3289 return ErrIntOverflowRpc 3290 } 3291 if iNdEx >= l { 3292 return io.ErrUnexpectedEOF 3293 } 3294 b := dAtA[iNdEx] 3295 iNdEx++ 3296 wire |= uint64(b&0x7F) << shift 3297 if b < 0x80 { 3298 break 3299 } 3300 } 3301 fieldNum := int32(wire >> 3) 3302 wireType := int(wire & 0x7) 3303 if wireType == 4 { 3304 return fmt.Errorf("proto: Response: wiretype end group for non-group") 3305 } 3306 if fieldNum <= 0 { 3307 return fmt.Errorf("proto: Response: illegal tag %d (wire type %d)", fieldNum, wire) 3308 } 3309 switch fieldNum { 3310 case 1: 3311 if wireType != 0 { 3312 return fmt.Errorf("proto: wrong wireType = %d for field Success", wireType) 3313 } 3314 var v int 3315 for shift := uint(0); ; shift += 7 { 3316 if shift >= 64 { 3317 return ErrIntOverflowRpc 3318 } 3319 if iNdEx >= l { 3320 return io.ErrUnexpectedEOF 3321 } 3322 b := dAtA[iNdEx] 3323 iNdEx++ 3324 v |= int(b&0x7F) << shift 3325 if b < 0x80 { 3326 break 3327 } 3328 } 3329 m.Success = bool(v != 0) 3330 case 2: 3331 if wireType != 2 { 3332 return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) 3333 } 3334 var stringLen uint64 3335 for shift := uint(0); ; shift += 7 { 3336 if shift >= 64 { 3337 return ErrIntOverflowRpc 3338 } 3339 if iNdEx >= l { 3340 return io.ErrUnexpectedEOF 3341 } 3342 b := dAtA[iNdEx] 3343 iNdEx++ 3344 stringLen |= uint64(b&0x7F) << shift 3345 if b < 0x80 { 3346 break 3347 } 3348 } 3349 intStringLen := int(stringLen) 3350 if intStringLen < 0 { 3351 return ErrInvalidLengthRpc 3352 } 3353 postIndex := iNdEx + intStringLen 3354 if postIndex < 0 { 3355 return ErrInvalidLengthRpc 3356 } 3357 if postIndex > l { 3358 return io.ErrUnexpectedEOF 3359 } 3360 m.Status = string(dAtA[iNdEx:postIndex]) 3361 iNdEx = postIndex 3362 case 3: 3363 if wireType != 2 { 3364 return fmt.Errorf("proto: wrong wireType = %d for field Member", wireType) 3365 } 3366 var msglen int 3367 for shift := uint(0); ; shift += 7 { 3368 if shift >= 64 { 3369 return ErrIntOverflowRpc 3370 } 3371 if iNdEx >= l { 3372 return io.ErrUnexpectedEOF 3373 } 3374 b := dAtA[iNdEx] 3375 iNdEx++ 3376 msglen |= int(b&0x7F) << shift 3377 if b < 0x80 { 3378 break 3379 } 3380 } 3381 if msglen < 0 { 3382 return ErrInvalidLengthRpc 3383 } 3384 postIndex := iNdEx + msglen 3385 if postIndex < 0 { 3386 return ErrInvalidLengthRpc 3387 } 3388 if postIndex > l { 3389 return io.ErrUnexpectedEOF 3390 } 3391 if m.Member == nil { 3392 m.Member = &Member{} 3393 } 3394 if err := m.Member.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { 3395 return err 3396 } 3397 iNdEx = postIndex 3398 case 4: 3399 if wireType != 2 { 3400 return fmt.Errorf("proto: wrong wireType = %d for field SnapshotInfo", wireType) 3401 } 3402 var msglen int 3403 for shift := uint(0); ; shift += 7 { 3404 if shift >= 64 { 3405 return ErrIntOverflowRpc 3406 } 3407 if iNdEx >= l { 3408 return io.ErrUnexpectedEOF 3409 } 3410 b := dAtA[iNdEx] 3411 iNdEx++ 3412 msglen |= int(b&0x7F) << shift 3413 if b < 0x80 { 3414 break 3415 } 3416 } 3417 if msglen < 0 { 3418 return ErrInvalidLengthRpc 3419 } 3420 postIndex := iNdEx + msglen 3421 if postIndex < 0 { 3422 return ErrInvalidLengthRpc 3423 } 3424 if postIndex > l { 3425 return io.ErrUnexpectedEOF 3426 } 3427 if m.SnapshotInfo == nil { 3428 m.SnapshotInfo = &SnapshotInfo{} 3429 } 3430 if err := m.SnapshotInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { 3431 return err 3432 } 3433 iNdEx = postIndex 3434 default: 3435 iNdEx = preIndex 3436 skippy, err := skipRpc(dAtA[iNdEx:]) 3437 if err != nil { 3438 return err 3439 } 3440 if skippy < 0 { 3441 return ErrInvalidLengthRpc 3442 } 3443 if (iNdEx + skippy) < 0 { 3444 return ErrInvalidLengthRpc 3445 } 3446 if (iNdEx + skippy) > l { 3447 return io.ErrUnexpectedEOF 3448 } 3449 m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) 3450 iNdEx += skippy 3451 } 3452 } 3453 3454 if iNdEx > l { 3455 return io.ErrUnexpectedEOF 3456 } 3457 return nil 3458} 3459func (m *Member) Unmarshal(dAtA []byte) error { 3460 l := len(dAtA) 3461 iNdEx := 0 3462 for iNdEx < l { 3463 preIndex := iNdEx 3464 var wire uint64 3465 for shift := uint(0); ; shift += 7 { 3466 if shift >= 64 { 3467 return ErrIntOverflowRpc 3468 } 3469 if iNdEx >= l { 3470 return io.ErrUnexpectedEOF 3471 } 3472 b := dAtA[iNdEx] 3473 iNdEx++ 3474 wire |= uint64(b&0x7F) << shift 3475 if b < 0x80 { 3476 break 3477 } 3478 } 3479 fieldNum := int32(wire >> 3) 3480 wireType := int(wire & 0x7) 3481 if wireType == 4 { 3482 return fmt.Errorf("proto: Member: wiretype end group for non-group") 3483 } 3484 if fieldNum <= 0 { 3485 return fmt.Errorf("proto: Member: illegal tag %d (wire type %d)", fieldNum, wire) 3486 } 3487 switch fieldNum { 3488 case 1: 3489 if wireType != 2 { 3490 return fmt.Errorf("proto: wrong wireType = %d for field EtcdExec", wireType) 3491 } 3492 var stringLen uint64 3493 for shift := uint(0); ; shift += 7 { 3494 if shift >= 64 { 3495 return ErrIntOverflowRpc 3496 } 3497 if iNdEx >= l { 3498 return io.ErrUnexpectedEOF 3499 } 3500 b := dAtA[iNdEx] 3501 iNdEx++ 3502 stringLen |= uint64(b&0x7F) << shift 3503 if b < 0x80 { 3504 break 3505 } 3506 } 3507 intStringLen := int(stringLen) 3508 if intStringLen < 0 { 3509 return ErrInvalidLengthRpc 3510 } 3511 postIndex := iNdEx + intStringLen 3512 if postIndex < 0 { 3513 return ErrInvalidLengthRpc 3514 } 3515 if postIndex > l { 3516 return io.ErrUnexpectedEOF 3517 } 3518 m.EtcdExec = string(dAtA[iNdEx:postIndex]) 3519 iNdEx = postIndex 3520 case 11: 3521 if wireType != 2 { 3522 return fmt.Errorf("proto: wrong wireType = %d for field AgentAddr", wireType) 3523 } 3524 var stringLen uint64 3525 for shift := uint(0); ; shift += 7 { 3526 if shift >= 64 { 3527 return ErrIntOverflowRpc 3528 } 3529 if iNdEx >= l { 3530 return io.ErrUnexpectedEOF 3531 } 3532 b := dAtA[iNdEx] 3533 iNdEx++ 3534 stringLen |= uint64(b&0x7F) << shift 3535 if b < 0x80 { 3536 break 3537 } 3538 } 3539 intStringLen := int(stringLen) 3540 if intStringLen < 0 { 3541 return ErrInvalidLengthRpc 3542 } 3543 postIndex := iNdEx + intStringLen 3544 if postIndex < 0 { 3545 return ErrInvalidLengthRpc 3546 } 3547 if postIndex > l { 3548 return io.ErrUnexpectedEOF 3549 } 3550 m.AgentAddr = string(dAtA[iNdEx:postIndex]) 3551 iNdEx = postIndex 3552 case 12: 3553 if wireType != 2 { 3554 return fmt.Errorf("proto: wrong wireType = %d for field FailpointHTTPAddr", wireType) 3555 } 3556 var stringLen uint64 3557 for shift := uint(0); ; shift += 7 { 3558 if shift >= 64 { 3559 return ErrIntOverflowRpc 3560 } 3561 if iNdEx >= l { 3562 return io.ErrUnexpectedEOF 3563 } 3564 b := dAtA[iNdEx] 3565 iNdEx++ 3566 stringLen |= uint64(b&0x7F) << shift 3567 if b < 0x80 { 3568 break 3569 } 3570 } 3571 intStringLen := int(stringLen) 3572 if intStringLen < 0 { 3573 return ErrInvalidLengthRpc 3574 } 3575 postIndex := iNdEx + intStringLen 3576 if postIndex < 0 { 3577 return ErrInvalidLengthRpc 3578 } 3579 if postIndex > l { 3580 return io.ErrUnexpectedEOF 3581 } 3582 m.FailpointHTTPAddr = string(dAtA[iNdEx:postIndex]) 3583 iNdEx = postIndex 3584 case 101: 3585 if wireType != 2 { 3586 return fmt.Errorf("proto: wrong wireType = %d for field BaseDir", wireType) 3587 } 3588 var stringLen uint64 3589 for shift := uint(0); ; shift += 7 { 3590 if shift >= 64 { 3591 return ErrIntOverflowRpc 3592 } 3593 if iNdEx >= l { 3594 return io.ErrUnexpectedEOF 3595 } 3596 b := dAtA[iNdEx] 3597 iNdEx++ 3598 stringLen |= uint64(b&0x7F) << shift 3599 if b < 0x80 { 3600 break 3601 } 3602 } 3603 intStringLen := int(stringLen) 3604 if intStringLen < 0 { 3605 return ErrInvalidLengthRpc 3606 } 3607 postIndex := iNdEx + intStringLen 3608 if postIndex < 0 { 3609 return ErrInvalidLengthRpc 3610 } 3611 if postIndex > l { 3612 return io.ErrUnexpectedEOF 3613 } 3614 m.BaseDir = string(dAtA[iNdEx:postIndex]) 3615 iNdEx = postIndex 3616 case 201: 3617 if wireType != 0 { 3618 return fmt.Errorf("proto: wrong wireType = %d for field EtcdClientProxy", wireType) 3619 } 3620 var v int 3621 for shift := uint(0); ; shift += 7 { 3622 if shift >= 64 { 3623 return ErrIntOverflowRpc 3624 } 3625 if iNdEx >= l { 3626 return io.ErrUnexpectedEOF 3627 } 3628 b := dAtA[iNdEx] 3629 iNdEx++ 3630 v |= int(b&0x7F) << shift 3631 if b < 0x80 { 3632 break 3633 } 3634 } 3635 m.EtcdClientProxy = bool(v != 0) 3636 case 202: 3637 if wireType != 0 { 3638 return fmt.Errorf("proto: wrong wireType = %d for field EtcdPeerProxy", wireType) 3639 } 3640 var v int 3641 for shift := uint(0); ; shift += 7 { 3642 if shift >= 64 { 3643 return ErrIntOverflowRpc 3644 } 3645 if iNdEx >= l { 3646 return io.ErrUnexpectedEOF 3647 } 3648 b := dAtA[iNdEx] 3649 iNdEx++ 3650 v |= int(b&0x7F) << shift 3651 if b < 0x80 { 3652 break 3653 } 3654 } 3655 m.EtcdPeerProxy = bool(v != 0) 3656 case 301: 3657 if wireType != 2 { 3658 return fmt.Errorf("proto: wrong wireType = %d for field EtcdClientEndpoint", wireType) 3659 } 3660 var stringLen uint64 3661 for shift := uint(0); ; shift += 7 { 3662 if shift >= 64 { 3663 return ErrIntOverflowRpc 3664 } 3665 if iNdEx >= l { 3666 return io.ErrUnexpectedEOF 3667 } 3668 b := dAtA[iNdEx] 3669 iNdEx++ 3670 stringLen |= uint64(b&0x7F) << shift 3671 if b < 0x80 { 3672 break 3673 } 3674 } 3675 intStringLen := int(stringLen) 3676 if intStringLen < 0 { 3677 return ErrInvalidLengthRpc 3678 } 3679 postIndex := iNdEx + intStringLen 3680 if postIndex < 0 { 3681 return ErrInvalidLengthRpc 3682 } 3683 if postIndex > l { 3684 return io.ErrUnexpectedEOF 3685 } 3686 m.EtcdClientEndpoint = string(dAtA[iNdEx:postIndex]) 3687 iNdEx = postIndex 3688 case 302: 3689 if wireType != 2 { 3690 return fmt.Errorf("proto: wrong wireType = %d for field Etcd", wireType) 3691 } 3692 var msglen int 3693 for shift := uint(0); ; shift += 7 { 3694 if shift >= 64 { 3695 return ErrIntOverflowRpc 3696 } 3697 if iNdEx >= l { 3698 return io.ErrUnexpectedEOF 3699 } 3700 b := dAtA[iNdEx] 3701 iNdEx++ 3702 msglen |= int(b&0x7F) << shift 3703 if b < 0x80 { 3704 break 3705 } 3706 } 3707 if msglen < 0 { 3708 return ErrInvalidLengthRpc 3709 } 3710 postIndex := iNdEx + msglen 3711 if postIndex < 0 { 3712 return ErrInvalidLengthRpc 3713 } 3714 if postIndex > l { 3715 return io.ErrUnexpectedEOF 3716 } 3717 if m.Etcd == nil { 3718 m.Etcd = &Etcd{} 3719 } 3720 if err := m.Etcd.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { 3721 return err 3722 } 3723 iNdEx = postIndex 3724 case 303: 3725 if wireType != 2 { 3726 return fmt.Errorf("proto: wrong wireType = %d for field EtcdOnSnapshotRestore", wireType) 3727 } 3728 var msglen int 3729 for shift := uint(0); ; shift += 7 { 3730 if shift >= 64 { 3731 return ErrIntOverflowRpc 3732 } 3733 if iNdEx >= l { 3734 return io.ErrUnexpectedEOF 3735 } 3736 b := dAtA[iNdEx] 3737 iNdEx++ 3738 msglen |= int(b&0x7F) << shift 3739 if b < 0x80 { 3740 break 3741 } 3742 } 3743 if msglen < 0 { 3744 return ErrInvalidLengthRpc 3745 } 3746 postIndex := iNdEx + msglen 3747 if postIndex < 0 { 3748 return ErrInvalidLengthRpc 3749 } 3750 if postIndex > l { 3751 return io.ErrUnexpectedEOF 3752 } 3753 if m.EtcdOnSnapshotRestore == nil { 3754 m.EtcdOnSnapshotRestore = &Etcd{} 3755 } 3756 if err := m.EtcdOnSnapshotRestore.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { 3757 return err 3758 } 3759 iNdEx = postIndex 3760 case 401: 3761 if wireType != 2 { 3762 return fmt.Errorf("proto: wrong wireType = %d for field ClientCertData", wireType) 3763 } 3764 var stringLen uint64 3765 for shift := uint(0); ; shift += 7 { 3766 if shift >= 64 { 3767 return ErrIntOverflowRpc 3768 } 3769 if iNdEx >= l { 3770 return io.ErrUnexpectedEOF 3771 } 3772 b := dAtA[iNdEx] 3773 iNdEx++ 3774 stringLen |= uint64(b&0x7F) << shift 3775 if b < 0x80 { 3776 break 3777 } 3778 } 3779 intStringLen := int(stringLen) 3780 if intStringLen < 0 { 3781 return ErrInvalidLengthRpc 3782 } 3783 postIndex := iNdEx + intStringLen 3784 if postIndex < 0 { 3785 return ErrInvalidLengthRpc 3786 } 3787 if postIndex > l { 3788 return io.ErrUnexpectedEOF 3789 } 3790 m.ClientCertData = string(dAtA[iNdEx:postIndex]) 3791 iNdEx = postIndex 3792 case 402: 3793 if wireType != 2 { 3794 return fmt.Errorf("proto: wrong wireType = %d for field ClientCertPath", wireType) 3795 } 3796 var stringLen uint64 3797 for shift := uint(0); ; shift += 7 { 3798 if shift >= 64 { 3799 return ErrIntOverflowRpc 3800 } 3801 if iNdEx >= l { 3802 return io.ErrUnexpectedEOF 3803 } 3804 b := dAtA[iNdEx] 3805 iNdEx++ 3806 stringLen |= uint64(b&0x7F) << shift 3807 if b < 0x80 { 3808 break 3809 } 3810 } 3811 intStringLen := int(stringLen) 3812 if intStringLen < 0 { 3813 return ErrInvalidLengthRpc 3814 } 3815 postIndex := iNdEx + intStringLen 3816 if postIndex < 0 { 3817 return ErrInvalidLengthRpc 3818 } 3819 if postIndex > l { 3820 return io.ErrUnexpectedEOF 3821 } 3822 m.ClientCertPath = string(dAtA[iNdEx:postIndex]) 3823 iNdEx = postIndex 3824 case 403: 3825 if wireType != 2 { 3826 return fmt.Errorf("proto: wrong wireType = %d for field ClientKeyData", wireType) 3827 } 3828 var stringLen uint64 3829 for shift := uint(0); ; shift += 7 { 3830 if shift >= 64 { 3831 return ErrIntOverflowRpc 3832 } 3833 if iNdEx >= l { 3834 return io.ErrUnexpectedEOF 3835 } 3836 b := dAtA[iNdEx] 3837 iNdEx++ 3838 stringLen |= uint64(b&0x7F) << shift 3839 if b < 0x80 { 3840 break 3841 } 3842 } 3843 intStringLen := int(stringLen) 3844 if intStringLen < 0 { 3845 return ErrInvalidLengthRpc 3846 } 3847 postIndex := iNdEx + intStringLen 3848 if postIndex < 0 { 3849 return ErrInvalidLengthRpc 3850 } 3851 if postIndex > l { 3852 return io.ErrUnexpectedEOF 3853 } 3854 m.ClientKeyData = string(dAtA[iNdEx:postIndex]) 3855 iNdEx = postIndex 3856 case 404: 3857 if wireType != 2 { 3858 return fmt.Errorf("proto: wrong wireType = %d for field ClientKeyPath", wireType) 3859 } 3860 var stringLen uint64 3861 for shift := uint(0); ; shift += 7 { 3862 if shift >= 64 { 3863 return ErrIntOverflowRpc 3864 } 3865 if iNdEx >= l { 3866 return io.ErrUnexpectedEOF 3867 } 3868 b := dAtA[iNdEx] 3869 iNdEx++ 3870 stringLen |= uint64(b&0x7F) << shift 3871 if b < 0x80 { 3872 break 3873 } 3874 } 3875 intStringLen := int(stringLen) 3876 if intStringLen < 0 { 3877 return ErrInvalidLengthRpc 3878 } 3879 postIndex := iNdEx + intStringLen 3880 if postIndex < 0 { 3881 return ErrInvalidLengthRpc 3882 } 3883 if postIndex > l { 3884 return io.ErrUnexpectedEOF 3885 } 3886 m.ClientKeyPath = string(dAtA[iNdEx:postIndex]) 3887 iNdEx = postIndex 3888 case 405: 3889 if wireType != 2 { 3890 return fmt.Errorf("proto: wrong wireType = %d for field ClientTrustedCAData", wireType) 3891 } 3892 var stringLen uint64 3893 for shift := uint(0); ; shift += 7 { 3894 if shift >= 64 { 3895 return ErrIntOverflowRpc 3896 } 3897 if iNdEx >= l { 3898 return io.ErrUnexpectedEOF 3899 } 3900 b := dAtA[iNdEx] 3901 iNdEx++ 3902 stringLen |= uint64(b&0x7F) << shift 3903 if b < 0x80 { 3904 break 3905 } 3906 } 3907 intStringLen := int(stringLen) 3908 if intStringLen < 0 { 3909 return ErrInvalidLengthRpc 3910 } 3911 postIndex := iNdEx + intStringLen 3912 if postIndex < 0 { 3913 return ErrInvalidLengthRpc 3914 } 3915 if postIndex > l { 3916 return io.ErrUnexpectedEOF 3917 } 3918 m.ClientTrustedCAData = string(dAtA[iNdEx:postIndex]) 3919 iNdEx = postIndex 3920 case 406: 3921 if wireType != 2 { 3922 return fmt.Errorf("proto: wrong wireType = %d for field ClientTrustedCAPath", wireType) 3923 } 3924 var stringLen uint64 3925 for shift := uint(0); ; shift += 7 { 3926 if shift >= 64 { 3927 return ErrIntOverflowRpc 3928 } 3929 if iNdEx >= l { 3930 return io.ErrUnexpectedEOF 3931 } 3932 b := dAtA[iNdEx] 3933 iNdEx++ 3934 stringLen |= uint64(b&0x7F) << shift 3935 if b < 0x80 { 3936 break 3937 } 3938 } 3939 intStringLen := int(stringLen) 3940 if intStringLen < 0 { 3941 return ErrInvalidLengthRpc 3942 } 3943 postIndex := iNdEx + intStringLen 3944 if postIndex < 0 { 3945 return ErrInvalidLengthRpc 3946 } 3947 if postIndex > l { 3948 return io.ErrUnexpectedEOF 3949 } 3950 m.ClientTrustedCAPath = string(dAtA[iNdEx:postIndex]) 3951 iNdEx = postIndex 3952 case 501: 3953 if wireType != 2 { 3954 return fmt.Errorf("proto: wrong wireType = %d for field PeerCertData", wireType) 3955 } 3956 var stringLen uint64 3957 for shift := uint(0); ; shift += 7 { 3958 if shift >= 64 { 3959 return ErrIntOverflowRpc 3960 } 3961 if iNdEx >= l { 3962 return io.ErrUnexpectedEOF 3963 } 3964 b := dAtA[iNdEx] 3965 iNdEx++ 3966 stringLen |= uint64(b&0x7F) << shift 3967 if b < 0x80 { 3968 break 3969 } 3970 } 3971 intStringLen := int(stringLen) 3972 if intStringLen < 0 { 3973 return ErrInvalidLengthRpc 3974 } 3975 postIndex := iNdEx + intStringLen 3976 if postIndex < 0 { 3977 return ErrInvalidLengthRpc 3978 } 3979 if postIndex > l { 3980 return io.ErrUnexpectedEOF 3981 } 3982 m.PeerCertData = string(dAtA[iNdEx:postIndex]) 3983 iNdEx = postIndex 3984 case 502: 3985 if wireType != 2 { 3986 return fmt.Errorf("proto: wrong wireType = %d for field PeerCertPath", wireType) 3987 } 3988 var stringLen uint64 3989 for shift := uint(0); ; shift += 7 { 3990 if shift >= 64 { 3991 return ErrIntOverflowRpc 3992 } 3993 if iNdEx >= l { 3994 return io.ErrUnexpectedEOF 3995 } 3996 b := dAtA[iNdEx] 3997 iNdEx++ 3998 stringLen |= uint64(b&0x7F) << shift 3999 if b < 0x80 { 4000 break 4001 } 4002 } 4003 intStringLen := int(stringLen) 4004 if intStringLen < 0 { 4005 return ErrInvalidLengthRpc 4006 } 4007 postIndex := iNdEx + intStringLen 4008 if postIndex < 0 { 4009 return ErrInvalidLengthRpc 4010 } 4011 if postIndex > l { 4012 return io.ErrUnexpectedEOF 4013 } 4014 m.PeerCertPath = string(dAtA[iNdEx:postIndex]) 4015 iNdEx = postIndex 4016 case 503: 4017 if wireType != 2 { 4018 return fmt.Errorf("proto: wrong wireType = %d for field PeerKeyData", wireType) 4019 } 4020 var stringLen uint64 4021 for shift := uint(0); ; shift += 7 { 4022 if shift >= 64 { 4023 return ErrIntOverflowRpc 4024 } 4025 if iNdEx >= l { 4026 return io.ErrUnexpectedEOF 4027 } 4028 b := dAtA[iNdEx] 4029 iNdEx++ 4030 stringLen |= uint64(b&0x7F) << shift 4031 if b < 0x80 { 4032 break 4033 } 4034 } 4035 intStringLen := int(stringLen) 4036 if intStringLen < 0 { 4037 return ErrInvalidLengthRpc 4038 } 4039 postIndex := iNdEx + intStringLen 4040 if postIndex < 0 { 4041 return ErrInvalidLengthRpc 4042 } 4043 if postIndex > l { 4044 return io.ErrUnexpectedEOF 4045 } 4046 m.PeerKeyData = string(dAtA[iNdEx:postIndex]) 4047 iNdEx = postIndex 4048 case 504: 4049 if wireType != 2 { 4050 return fmt.Errorf("proto: wrong wireType = %d for field PeerKeyPath", wireType) 4051 } 4052 var stringLen uint64 4053 for shift := uint(0); ; shift += 7 { 4054 if shift >= 64 { 4055 return ErrIntOverflowRpc 4056 } 4057 if iNdEx >= l { 4058 return io.ErrUnexpectedEOF 4059 } 4060 b := dAtA[iNdEx] 4061 iNdEx++ 4062 stringLen |= uint64(b&0x7F) << shift 4063 if b < 0x80 { 4064 break 4065 } 4066 } 4067 intStringLen := int(stringLen) 4068 if intStringLen < 0 { 4069 return ErrInvalidLengthRpc 4070 } 4071 postIndex := iNdEx + intStringLen 4072 if postIndex < 0 { 4073 return ErrInvalidLengthRpc 4074 } 4075 if postIndex > l { 4076 return io.ErrUnexpectedEOF 4077 } 4078 m.PeerKeyPath = string(dAtA[iNdEx:postIndex]) 4079 iNdEx = postIndex 4080 case 505: 4081 if wireType != 2 { 4082 return fmt.Errorf("proto: wrong wireType = %d for field PeerTrustedCAData", wireType) 4083 } 4084 var stringLen uint64 4085 for shift := uint(0); ; shift += 7 { 4086 if shift >= 64 { 4087 return ErrIntOverflowRpc 4088 } 4089 if iNdEx >= l { 4090 return io.ErrUnexpectedEOF 4091 } 4092 b := dAtA[iNdEx] 4093 iNdEx++ 4094 stringLen |= uint64(b&0x7F) << shift 4095 if b < 0x80 { 4096 break 4097 } 4098 } 4099 intStringLen := int(stringLen) 4100 if intStringLen < 0 { 4101 return ErrInvalidLengthRpc 4102 } 4103 postIndex := iNdEx + intStringLen 4104 if postIndex < 0 { 4105 return ErrInvalidLengthRpc 4106 } 4107 if postIndex > l { 4108 return io.ErrUnexpectedEOF 4109 } 4110 m.PeerTrustedCAData = string(dAtA[iNdEx:postIndex]) 4111 iNdEx = postIndex 4112 case 506: 4113 if wireType != 2 { 4114 return fmt.Errorf("proto: wrong wireType = %d for field PeerTrustedCAPath", wireType) 4115 } 4116 var stringLen uint64 4117 for shift := uint(0); ; shift += 7 { 4118 if shift >= 64 { 4119 return ErrIntOverflowRpc 4120 } 4121 if iNdEx >= l { 4122 return io.ErrUnexpectedEOF 4123 } 4124 b := dAtA[iNdEx] 4125 iNdEx++ 4126 stringLen |= uint64(b&0x7F) << shift 4127 if b < 0x80 { 4128 break 4129 } 4130 } 4131 intStringLen := int(stringLen) 4132 if intStringLen < 0 { 4133 return ErrInvalidLengthRpc 4134 } 4135 postIndex := iNdEx + intStringLen 4136 if postIndex < 0 { 4137 return ErrInvalidLengthRpc 4138 } 4139 if postIndex > l { 4140 return io.ErrUnexpectedEOF 4141 } 4142 m.PeerTrustedCAPath = string(dAtA[iNdEx:postIndex]) 4143 iNdEx = postIndex 4144 case 601: 4145 if wireType != 2 { 4146 return fmt.Errorf("proto: wrong wireType = %d for field SnapshotPath", wireType) 4147 } 4148 var stringLen uint64 4149 for shift := uint(0); ; shift += 7 { 4150 if shift >= 64 { 4151 return ErrIntOverflowRpc 4152 } 4153 if iNdEx >= l { 4154 return io.ErrUnexpectedEOF 4155 } 4156 b := dAtA[iNdEx] 4157 iNdEx++ 4158 stringLen |= uint64(b&0x7F) << shift 4159 if b < 0x80 { 4160 break 4161 } 4162 } 4163 intStringLen := int(stringLen) 4164 if intStringLen < 0 { 4165 return ErrInvalidLengthRpc 4166 } 4167 postIndex := iNdEx + intStringLen 4168 if postIndex < 0 { 4169 return ErrInvalidLengthRpc 4170 } 4171 if postIndex > l { 4172 return io.ErrUnexpectedEOF 4173 } 4174 m.SnapshotPath = string(dAtA[iNdEx:postIndex]) 4175 iNdEx = postIndex 4176 case 602: 4177 if wireType != 2 { 4178 return fmt.Errorf("proto: wrong wireType = %d for field SnapshotInfo", wireType) 4179 } 4180 var msglen int 4181 for shift := uint(0); ; shift += 7 { 4182 if shift >= 64 { 4183 return ErrIntOverflowRpc 4184 } 4185 if iNdEx >= l { 4186 return io.ErrUnexpectedEOF 4187 } 4188 b := dAtA[iNdEx] 4189 iNdEx++ 4190 msglen |= int(b&0x7F) << shift 4191 if b < 0x80 { 4192 break 4193 } 4194 } 4195 if msglen < 0 { 4196 return ErrInvalidLengthRpc 4197 } 4198 postIndex := iNdEx + msglen 4199 if postIndex < 0 { 4200 return ErrInvalidLengthRpc 4201 } 4202 if postIndex > l { 4203 return io.ErrUnexpectedEOF 4204 } 4205 if m.SnapshotInfo == nil { 4206 m.SnapshotInfo = &SnapshotInfo{} 4207 } 4208 if err := m.SnapshotInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { 4209 return err 4210 } 4211 iNdEx = postIndex 4212 default: 4213 iNdEx = preIndex 4214 skippy, err := skipRpc(dAtA[iNdEx:]) 4215 if err != nil { 4216 return err 4217 } 4218 if skippy < 0 { 4219 return ErrInvalidLengthRpc 4220 } 4221 if (iNdEx + skippy) < 0 { 4222 return ErrInvalidLengthRpc 4223 } 4224 if (iNdEx + skippy) > l { 4225 return io.ErrUnexpectedEOF 4226 } 4227 m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) 4228 iNdEx += skippy 4229 } 4230 } 4231 4232 if iNdEx > l { 4233 return io.ErrUnexpectedEOF 4234 } 4235 return nil 4236} 4237func (m *Tester) Unmarshal(dAtA []byte) error { 4238 l := len(dAtA) 4239 iNdEx := 0 4240 for iNdEx < l { 4241 preIndex := iNdEx 4242 var wire uint64 4243 for shift := uint(0); ; shift += 7 { 4244 if shift >= 64 { 4245 return ErrIntOverflowRpc 4246 } 4247 if iNdEx >= l { 4248 return io.ErrUnexpectedEOF 4249 } 4250 b := dAtA[iNdEx] 4251 iNdEx++ 4252 wire |= uint64(b&0x7F) << shift 4253 if b < 0x80 { 4254 break 4255 } 4256 } 4257 fieldNum := int32(wire >> 3) 4258 wireType := int(wire & 0x7) 4259 if wireType == 4 { 4260 return fmt.Errorf("proto: Tester: wiretype end group for non-group") 4261 } 4262 if fieldNum <= 0 { 4263 return fmt.Errorf("proto: Tester: illegal tag %d (wire type %d)", fieldNum, wire) 4264 } 4265 switch fieldNum { 4266 case 1: 4267 if wireType != 2 { 4268 return fmt.Errorf("proto: wrong wireType = %d for field DataDir", wireType) 4269 } 4270 var stringLen uint64 4271 for shift := uint(0); ; shift += 7 { 4272 if shift >= 64 { 4273 return ErrIntOverflowRpc 4274 } 4275 if iNdEx >= l { 4276 return io.ErrUnexpectedEOF 4277 } 4278 b := dAtA[iNdEx] 4279 iNdEx++ 4280 stringLen |= uint64(b&0x7F) << shift 4281 if b < 0x80 { 4282 break 4283 } 4284 } 4285 intStringLen := int(stringLen) 4286 if intStringLen < 0 { 4287 return ErrInvalidLengthRpc 4288 } 4289 postIndex := iNdEx + intStringLen 4290 if postIndex < 0 { 4291 return ErrInvalidLengthRpc 4292 } 4293 if postIndex > l { 4294 return io.ErrUnexpectedEOF 4295 } 4296 m.DataDir = string(dAtA[iNdEx:postIndex]) 4297 iNdEx = postIndex 4298 case 2: 4299 if wireType != 2 { 4300 return fmt.Errorf("proto: wrong wireType = %d for field Network", wireType) 4301 } 4302 var stringLen uint64 4303 for shift := uint(0); ; shift += 7 { 4304 if shift >= 64 { 4305 return ErrIntOverflowRpc 4306 } 4307 if iNdEx >= l { 4308 return io.ErrUnexpectedEOF 4309 } 4310 b := dAtA[iNdEx] 4311 iNdEx++ 4312 stringLen |= uint64(b&0x7F) << shift 4313 if b < 0x80 { 4314 break 4315 } 4316 } 4317 intStringLen := int(stringLen) 4318 if intStringLen < 0 { 4319 return ErrInvalidLengthRpc 4320 } 4321 postIndex := iNdEx + intStringLen 4322 if postIndex < 0 { 4323 return ErrInvalidLengthRpc 4324 } 4325 if postIndex > l { 4326 return io.ErrUnexpectedEOF 4327 } 4328 m.Network = string(dAtA[iNdEx:postIndex]) 4329 iNdEx = postIndex 4330 case 3: 4331 if wireType != 2 { 4332 return fmt.Errorf("proto: wrong wireType = %d for field Addr", wireType) 4333 } 4334 var stringLen uint64 4335 for shift := uint(0); ; shift += 7 { 4336 if shift >= 64 { 4337 return ErrIntOverflowRpc 4338 } 4339 if iNdEx >= l { 4340 return io.ErrUnexpectedEOF 4341 } 4342 b := dAtA[iNdEx] 4343 iNdEx++ 4344 stringLen |= uint64(b&0x7F) << shift 4345 if b < 0x80 { 4346 break 4347 } 4348 } 4349 intStringLen := int(stringLen) 4350 if intStringLen < 0 { 4351 return ErrInvalidLengthRpc 4352 } 4353 postIndex := iNdEx + intStringLen 4354 if postIndex < 0 { 4355 return ErrInvalidLengthRpc 4356 } 4357 if postIndex > l { 4358 return io.ErrUnexpectedEOF 4359 } 4360 m.Addr = string(dAtA[iNdEx:postIndex]) 4361 iNdEx = postIndex 4362 case 11: 4363 if wireType != 0 { 4364 return fmt.Errorf("proto: wrong wireType = %d for field DelayLatencyMs", wireType) 4365 } 4366 m.DelayLatencyMs = 0 4367 for shift := uint(0); ; shift += 7 { 4368 if shift >= 64 { 4369 return ErrIntOverflowRpc 4370 } 4371 if iNdEx >= l { 4372 return io.ErrUnexpectedEOF 4373 } 4374 b := dAtA[iNdEx] 4375 iNdEx++ 4376 m.DelayLatencyMs |= uint32(b&0x7F) << shift 4377 if b < 0x80 { 4378 break 4379 } 4380 } 4381 case 12: 4382 if wireType != 0 { 4383 return fmt.Errorf("proto: wrong wireType = %d for field DelayLatencyMsRv", wireType) 4384 } 4385 m.DelayLatencyMsRv = 0 4386 for shift := uint(0); ; shift += 7 { 4387 if shift >= 64 { 4388 return ErrIntOverflowRpc 4389 } 4390 if iNdEx >= l { 4391 return io.ErrUnexpectedEOF 4392 } 4393 b := dAtA[iNdEx] 4394 iNdEx++ 4395 m.DelayLatencyMsRv |= uint32(b&0x7F) << shift 4396 if b < 0x80 { 4397 break 4398 } 4399 } 4400 case 13: 4401 if wireType != 0 { 4402 return fmt.Errorf("proto: wrong wireType = %d for field UpdatedDelayLatencyMs", wireType) 4403 } 4404 m.UpdatedDelayLatencyMs = 0 4405 for shift := uint(0); ; shift += 7 { 4406 if shift >= 64 { 4407 return ErrIntOverflowRpc 4408 } 4409 if iNdEx >= l { 4410 return io.ErrUnexpectedEOF 4411 } 4412 b := dAtA[iNdEx] 4413 iNdEx++ 4414 m.UpdatedDelayLatencyMs |= uint32(b&0x7F) << shift 4415 if b < 0x80 { 4416 break 4417 } 4418 } 4419 case 21: 4420 if wireType != 0 { 4421 return fmt.Errorf("proto: wrong wireType = %d for field RoundLimit", wireType) 4422 } 4423 m.RoundLimit = 0 4424 for shift := uint(0); ; shift += 7 { 4425 if shift >= 64 { 4426 return ErrIntOverflowRpc 4427 } 4428 if iNdEx >= l { 4429 return io.ErrUnexpectedEOF 4430 } 4431 b := dAtA[iNdEx] 4432 iNdEx++ 4433 m.RoundLimit |= int32(b&0x7F) << shift 4434 if b < 0x80 { 4435 break 4436 } 4437 } 4438 case 22: 4439 if wireType != 0 { 4440 return fmt.Errorf("proto: wrong wireType = %d for field ExitOnCaseFail", wireType) 4441 } 4442 var v int 4443 for shift := uint(0); ; shift += 7 { 4444 if shift >= 64 { 4445 return ErrIntOverflowRpc 4446 } 4447 if iNdEx >= l { 4448 return io.ErrUnexpectedEOF 4449 } 4450 b := dAtA[iNdEx] 4451 iNdEx++ 4452 v |= int(b&0x7F) << shift 4453 if b < 0x80 { 4454 break 4455 } 4456 } 4457 m.ExitOnCaseFail = bool(v != 0) 4458 case 23: 4459 if wireType != 0 { 4460 return fmt.Errorf("proto: wrong wireType = %d for field EnablePprof", wireType) 4461 } 4462 var v int 4463 for shift := uint(0); ; shift += 7 { 4464 if shift >= 64 { 4465 return ErrIntOverflowRpc 4466 } 4467 if iNdEx >= l { 4468 return io.ErrUnexpectedEOF 4469 } 4470 b := dAtA[iNdEx] 4471 iNdEx++ 4472 v |= int(b&0x7F) << shift 4473 if b < 0x80 { 4474 break 4475 } 4476 } 4477 m.EnablePprof = bool(v != 0) 4478 case 31: 4479 if wireType != 0 { 4480 return fmt.Errorf("proto: wrong wireType = %d for field CaseDelayMs", wireType) 4481 } 4482 m.CaseDelayMs = 0 4483 for shift := uint(0); ; shift += 7 { 4484 if shift >= 64 { 4485 return ErrIntOverflowRpc 4486 } 4487 if iNdEx >= l { 4488 return io.ErrUnexpectedEOF 4489 } 4490 b := dAtA[iNdEx] 4491 iNdEx++ 4492 m.CaseDelayMs |= uint32(b&0x7F) << shift 4493 if b < 0x80 { 4494 break 4495 } 4496 } 4497 case 32: 4498 if wireType != 0 { 4499 return fmt.Errorf("proto: wrong wireType = %d for field CaseShuffle", wireType) 4500 } 4501 var v int 4502 for shift := uint(0); ; shift += 7 { 4503 if shift >= 64 { 4504 return ErrIntOverflowRpc 4505 } 4506 if iNdEx >= l { 4507 return io.ErrUnexpectedEOF 4508 } 4509 b := dAtA[iNdEx] 4510 iNdEx++ 4511 v |= int(b&0x7F) << shift 4512 if b < 0x80 { 4513 break 4514 } 4515 } 4516 m.CaseShuffle = bool(v != 0) 4517 case 33: 4518 if wireType != 2 { 4519 return fmt.Errorf("proto: wrong wireType = %d for field Cases", wireType) 4520 } 4521 var stringLen uint64 4522 for shift := uint(0); ; shift += 7 { 4523 if shift >= 64 { 4524 return ErrIntOverflowRpc 4525 } 4526 if iNdEx >= l { 4527 return io.ErrUnexpectedEOF 4528 } 4529 b := dAtA[iNdEx] 4530 iNdEx++ 4531 stringLen |= uint64(b&0x7F) << shift 4532 if b < 0x80 { 4533 break 4534 } 4535 } 4536 intStringLen := int(stringLen) 4537 if intStringLen < 0 { 4538 return ErrInvalidLengthRpc 4539 } 4540 postIndex := iNdEx + intStringLen 4541 if postIndex < 0 { 4542 return ErrInvalidLengthRpc 4543 } 4544 if postIndex > l { 4545 return io.ErrUnexpectedEOF 4546 } 4547 m.Cases = append(m.Cases, string(dAtA[iNdEx:postIndex])) 4548 iNdEx = postIndex 4549 case 34: 4550 if wireType != 2 { 4551 return fmt.Errorf("proto: wrong wireType = %d for field FailpointCommands", wireType) 4552 } 4553 var stringLen uint64 4554 for shift := uint(0); ; shift += 7 { 4555 if shift >= 64 { 4556 return ErrIntOverflowRpc 4557 } 4558 if iNdEx >= l { 4559 return io.ErrUnexpectedEOF 4560 } 4561 b := dAtA[iNdEx] 4562 iNdEx++ 4563 stringLen |= uint64(b&0x7F) << shift 4564 if b < 0x80 { 4565 break 4566 } 4567 } 4568 intStringLen := int(stringLen) 4569 if intStringLen < 0 { 4570 return ErrInvalidLengthRpc 4571 } 4572 postIndex := iNdEx + intStringLen 4573 if postIndex < 0 { 4574 return ErrInvalidLengthRpc 4575 } 4576 if postIndex > l { 4577 return io.ErrUnexpectedEOF 4578 } 4579 m.FailpointCommands = append(m.FailpointCommands, string(dAtA[iNdEx:postIndex])) 4580 iNdEx = postIndex 4581 case 41: 4582 if wireType != 2 { 4583 return fmt.Errorf("proto: wrong wireType = %d for field RunnerExecPath", wireType) 4584 } 4585 var stringLen uint64 4586 for shift := uint(0); ; shift += 7 { 4587 if shift >= 64 { 4588 return ErrIntOverflowRpc 4589 } 4590 if iNdEx >= l { 4591 return io.ErrUnexpectedEOF 4592 } 4593 b := dAtA[iNdEx] 4594 iNdEx++ 4595 stringLen |= uint64(b&0x7F) << shift 4596 if b < 0x80 { 4597 break 4598 } 4599 } 4600 intStringLen := int(stringLen) 4601 if intStringLen < 0 { 4602 return ErrInvalidLengthRpc 4603 } 4604 postIndex := iNdEx + intStringLen 4605 if postIndex < 0 { 4606 return ErrInvalidLengthRpc 4607 } 4608 if postIndex > l { 4609 return io.ErrUnexpectedEOF 4610 } 4611 m.RunnerExecPath = string(dAtA[iNdEx:postIndex]) 4612 iNdEx = postIndex 4613 case 42: 4614 if wireType != 2 { 4615 return fmt.Errorf("proto: wrong wireType = %d for field ExternalExecPath", wireType) 4616 } 4617 var stringLen uint64 4618 for shift := uint(0); ; shift += 7 { 4619 if shift >= 64 { 4620 return ErrIntOverflowRpc 4621 } 4622 if iNdEx >= l { 4623 return io.ErrUnexpectedEOF 4624 } 4625 b := dAtA[iNdEx] 4626 iNdEx++ 4627 stringLen |= uint64(b&0x7F) << shift 4628 if b < 0x80 { 4629 break 4630 } 4631 } 4632 intStringLen := int(stringLen) 4633 if intStringLen < 0 { 4634 return ErrInvalidLengthRpc 4635 } 4636 postIndex := iNdEx + intStringLen 4637 if postIndex < 0 { 4638 return ErrInvalidLengthRpc 4639 } 4640 if postIndex > l { 4641 return io.ErrUnexpectedEOF 4642 } 4643 m.ExternalExecPath = string(dAtA[iNdEx:postIndex]) 4644 iNdEx = postIndex 4645 case 101: 4646 if wireType != 2 { 4647 return fmt.Errorf("proto: wrong wireType = %d for field Stressers", wireType) 4648 } 4649 var msglen int 4650 for shift := uint(0); ; shift += 7 { 4651 if shift >= 64 { 4652 return ErrIntOverflowRpc 4653 } 4654 if iNdEx >= l { 4655 return io.ErrUnexpectedEOF 4656 } 4657 b := dAtA[iNdEx] 4658 iNdEx++ 4659 msglen |= int(b&0x7F) << shift 4660 if b < 0x80 { 4661 break 4662 } 4663 } 4664 if msglen < 0 { 4665 return ErrInvalidLengthRpc 4666 } 4667 postIndex := iNdEx + msglen 4668 if postIndex < 0 { 4669 return ErrInvalidLengthRpc 4670 } 4671 if postIndex > l { 4672 return io.ErrUnexpectedEOF 4673 } 4674 m.Stressers = append(m.Stressers, &Stresser{}) 4675 if err := m.Stressers[len(m.Stressers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { 4676 return err 4677 } 4678 iNdEx = postIndex 4679 case 102: 4680 if wireType != 2 { 4681 return fmt.Errorf("proto: wrong wireType = %d for field Checkers", wireType) 4682 } 4683 var stringLen uint64 4684 for shift := uint(0); ; shift += 7 { 4685 if shift >= 64 { 4686 return ErrIntOverflowRpc 4687 } 4688 if iNdEx >= l { 4689 return io.ErrUnexpectedEOF 4690 } 4691 b := dAtA[iNdEx] 4692 iNdEx++ 4693 stringLen |= uint64(b&0x7F) << shift 4694 if b < 0x80 { 4695 break 4696 } 4697 } 4698 intStringLen := int(stringLen) 4699 if intStringLen < 0 { 4700 return ErrInvalidLengthRpc 4701 } 4702 postIndex := iNdEx + intStringLen 4703 if postIndex < 0 { 4704 return ErrInvalidLengthRpc 4705 } 4706 if postIndex > l { 4707 return io.ErrUnexpectedEOF 4708 } 4709 m.Checkers = append(m.Checkers, string(dAtA[iNdEx:postIndex])) 4710 iNdEx = postIndex 4711 case 201: 4712 if wireType != 0 { 4713 return fmt.Errorf("proto: wrong wireType = %d for field StressKeySize", wireType) 4714 } 4715 m.StressKeySize = 0 4716 for shift := uint(0); ; shift += 7 { 4717 if shift >= 64 { 4718 return ErrIntOverflowRpc 4719 } 4720 if iNdEx >= l { 4721 return io.ErrUnexpectedEOF 4722 } 4723 b := dAtA[iNdEx] 4724 iNdEx++ 4725 m.StressKeySize |= int32(b&0x7F) << shift 4726 if b < 0x80 { 4727 break 4728 } 4729 } 4730 case 202: 4731 if wireType != 0 { 4732 return fmt.Errorf("proto: wrong wireType = %d for field StressKeySizeLarge", wireType) 4733 } 4734 m.StressKeySizeLarge = 0 4735 for shift := uint(0); ; shift += 7 { 4736 if shift >= 64 { 4737 return ErrIntOverflowRpc 4738 } 4739 if iNdEx >= l { 4740 return io.ErrUnexpectedEOF 4741 } 4742 b := dAtA[iNdEx] 4743 iNdEx++ 4744 m.StressKeySizeLarge |= int32(b&0x7F) << shift 4745 if b < 0x80 { 4746 break 4747 } 4748 } 4749 case 203: 4750 if wireType != 0 { 4751 return fmt.Errorf("proto: wrong wireType = %d for field StressKeySuffixRange", wireType) 4752 } 4753 m.StressKeySuffixRange = 0 4754 for shift := uint(0); ; shift += 7 { 4755 if shift >= 64 { 4756 return ErrIntOverflowRpc 4757 } 4758 if iNdEx >= l { 4759 return io.ErrUnexpectedEOF 4760 } 4761 b := dAtA[iNdEx] 4762 iNdEx++ 4763 m.StressKeySuffixRange |= int32(b&0x7F) << shift 4764 if b < 0x80 { 4765 break 4766 } 4767 } 4768 case 204: 4769 if wireType != 0 { 4770 return fmt.Errorf("proto: wrong wireType = %d for field StressKeySuffixRangeTxn", wireType) 4771 } 4772 m.StressKeySuffixRangeTxn = 0 4773 for shift := uint(0); ; shift += 7 { 4774 if shift >= 64 { 4775 return ErrIntOverflowRpc 4776 } 4777 if iNdEx >= l { 4778 return io.ErrUnexpectedEOF 4779 } 4780 b := dAtA[iNdEx] 4781 iNdEx++ 4782 m.StressKeySuffixRangeTxn |= int32(b&0x7F) << shift 4783 if b < 0x80 { 4784 break 4785 } 4786 } 4787 case 205: 4788 if wireType != 0 { 4789 return fmt.Errorf("proto: wrong wireType = %d for field StressKeyTxnOps", wireType) 4790 } 4791 m.StressKeyTxnOps = 0 4792 for shift := uint(0); ; shift += 7 { 4793 if shift >= 64 { 4794 return ErrIntOverflowRpc 4795 } 4796 if iNdEx >= l { 4797 return io.ErrUnexpectedEOF 4798 } 4799 b := dAtA[iNdEx] 4800 iNdEx++ 4801 m.StressKeyTxnOps |= int32(b&0x7F) << shift 4802 if b < 0x80 { 4803 break 4804 } 4805 } 4806 case 301: 4807 if wireType != 0 { 4808 return fmt.Errorf("proto: wrong wireType = %d for field StressClients", wireType) 4809 } 4810 m.StressClients = 0 4811 for shift := uint(0); ; shift += 7 { 4812 if shift >= 64 { 4813 return ErrIntOverflowRpc 4814 } 4815 if iNdEx >= l { 4816 return io.ErrUnexpectedEOF 4817 } 4818 b := dAtA[iNdEx] 4819 iNdEx++ 4820 m.StressClients |= int32(b&0x7F) << shift 4821 if b < 0x80 { 4822 break 4823 } 4824 } 4825 case 302: 4826 if wireType != 0 { 4827 return fmt.Errorf("proto: wrong wireType = %d for field StressQPS", wireType) 4828 } 4829 m.StressQPS = 0 4830 for shift := uint(0); ; shift += 7 { 4831 if shift >= 64 { 4832 return ErrIntOverflowRpc 4833 } 4834 if iNdEx >= l { 4835 return io.ErrUnexpectedEOF 4836 } 4837 b := dAtA[iNdEx] 4838 iNdEx++ 4839 m.StressQPS |= int32(b&0x7F) << shift 4840 if b < 0x80 { 4841 break 4842 } 4843 } 4844 default: 4845 iNdEx = preIndex 4846 skippy, err := skipRpc(dAtA[iNdEx:]) 4847 if err != nil { 4848 return err 4849 } 4850 if skippy < 0 { 4851 return ErrInvalidLengthRpc 4852 } 4853 if (iNdEx + skippy) < 0 { 4854 return ErrInvalidLengthRpc 4855 } 4856 if (iNdEx + skippy) > l { 4857 return io.ErrUnexpectedEOF 4858 } 4859 m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) 4860 iNdEx += skippy 4861 } 4862 } 4863 4864 if iNdEx > l { 4865 return io.ErrUnexpectedEOF 4866 } 4867 return nil 4868} 4869func (m *Stresser) Unmarshal(dAtA []byte) error { 4870 l := len(dAtA) 4871 iNdEx := 0 4872 for iNdEx < l { 4873 preIndex := iNdEx 4874 var wire uint64 4875 for shift := uint(0); ; shift += 7 { 4876 if shift >= 64 { 4877 return ErrIntOverflowRpc 4878 } 4879 if iNdEx >= l { 4880 return io.ErrUnexpectedEOF 4881 } 4882 b := dAtA[iNdEx] 4883 iNdEx++ 4884 wire |= uint64(b&0x7F) << shift 4885 if b < 0x80 { 4886 break 4887 } 4888 } 4889 fieldNum := int32(wire >> 3) 4890 wireType := int(wire & 0x7) 4891 if wireType == 4 { 4892 return fmt.Errorf("proto: Stresser: wiretype end group for non-group") 4893 } 4894 if fieldNum <= 0 { 4895 return fmt.Errorf("proto: Stresser: illegal tag %d (wire type %d)", fieldNum, wire) 4896 } 4897 switch fieldNum { 4898 case 1: 4899 if wireType != 2 { 4900 return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) 4901 } 4902 var stringLen uint64 4903 for shift := uint(0); ; shift += 7 { 4904 if shift >= 64 { 4905 return ErrIntOverflowRpc 4906 } 4907 if iNdEx >= l { 4908 return io.ErrUnexpectedEOF 4909 } 4910 b := dAtA[iNdEx] 4911 iNdEx++ 4912 stringLen |= uint64(b&0x7F) << shift 4913 if b < 0x80 { 4914 break 4915 } 4916 } 4917 intStringLen := int(stringLen) 4918 if intStringLen < 0 { 4919 return ErrInvalidLengthRpc 4920 } 4921 postIndex := iNdEx + intStringLen 4922 if postIndex < 0 { 4923 return ErrInvalidLengthRpc 4924 } 4925 if postIndex > l { 4926 return io.ErrUnexpectedEOF 4927 } 4928 m.Type = string(dAtA[iNdEx:postIndex]) 4929 iNdEx = postIndex 4930 case 2: 4931 if wireType != 1 { 4932 return fmt.Errorf("proto: wrong wireType = %d for field Weight", wireType) 4933 } 4934 var v uint64 4935 if (iNdEx + 8) > l { 4936 return io.ErrUnexpectedEOF 4937 } 4938 v = uint64(encoding_binary.LittleEndian.Uint64(dAtA[iNdEx:])) 4939 iNdEx += 8 4940 m.Weight = float64(math.Float64frombits(v)) 4941 default: 4942 iNdEx = preIndex 4943 skippy, err := skipRpc(dAtA[iNdEx:]) 4944 if err != nil { 4945 return err 4946 } 4947 if skippy < 0 { 4948 return ErrInvalidLengthRpc 4949 } 4950 if (iNdEx + skippy) < 0 { 4951 return ErrInvalidLengthRpc 4952 } 4953 if (iNdEx + skippy) > l { 4954 return io.ErrUnexpectedEOF 4955 } 4956 m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) 4957 iNdEx += skippy 4958 } 4959 } 4960 4961 if iNdEx > l { 4962 return io.ErrUnexpectedEOF 4963 } 4964 return nil 4965} 4966func (m *Etcd) Unmarshal(dAtA []byte) error { 4967 l := len(dAtA) 4968 iNdEx := 0 4969 for iNdEx < l { 4970 preIndex := iNdEx 4971 var wire uint64 4972 for shift := uint(0); ; shift += 7 { 4973 if shift >= 64 { 4974 return ErrIntOverflowRpc 4975 } 4976 if iNdEx >= l { 4977 return io.ErrUnexpectedEOF 4978 } 4979 b := dAtA[iNdEx] 4980 iNdEx++ 4981 wire |= uint64(b&0x7F) << shift 4982 if b < 0x80 { 4983 break 4984 } 4985 } 4986 fieldNum := int32(wire >> 3) 4987 wireType := int(wire & 0x7) 4988 if wireType == 4 { 4989 return fmt.Errorf("proto: Etcd: wiretype end group for non-group") 4990 } 4991 if fieldNum <= 0 { 4992 return fmt.Errorf("proto: Etcd: illegal tag %d (wire type %d)", fieldNum, wire) 4993 } 4994 switch fieldNum { 4995 case 1: 4996 if wireType != 2 { 4997 return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) 4998 } 4999 var stringLen uint64 5000 for shift := uint(0); ; shift += 7 { 5001 if shift >= 64 { 5002 return ErrIntOverflowRpc 5003 } 5004 if iNdEx >= l { 5005 return io.ErrUnexpectedEOF 5006 } 5007 b := dAtA[iNdEx] 5008 iNdEx++ 5009 stringLen |= uint64(b&0x7F) << shift 5010 if b < 0x80 { 5011 break 5012 } 5013 } 5014 intStringLen := int(stringLen) 5015 if intStringLen < 0 { 5016 return ErrInvalidLengthRpc 5017 } 5018 postIndex := iNdEx + intStringLen 5019 if postIndex < 0 { 5020 return ErrInvalidLengthRpc 5021 } 5022 if postIndex > l { 5023 return io.ErrUnexpectedEOF 5024 } 5025 m.Name = string(dAtA[iNdEx:postIndex]) 5026 iNdEx = postIndex 5027 case 2: 5028 if wireType != 2 { 5029 return fmt.Errorf("proto: wrong wireType = %d for field DataDir", wireType) 5030 } 5031 var stringLen uint64 5032 for shift := uint(0); ; shift += 7 { 5033 if shift >= 64 { 5034 return ErrIntOverflowRpc 5035 } 5036 if iNdEx >= l { 5037 return io.ErrUnexpectedEOF 5038 } 5039 b := dAtA[iNdEx] 5040 iNdEx++ 5041 stringLen |= uint64(b&0x7F) << shift 5042 if b < 0x80 { 5043 break 5044 } 5045 } 5046 intStringLen := int(stringLen) 5047 if intStringLen < 0 { 5048 return ErrInvalidLengthRpc 5049 } 5050 postIndex := iNdEx + intStringLen 5051 if postIndex < 0 { 5052 return ErrInvalidLengthRpc 5053 } 5054 if postIndex > l { 5055 return io.ErrUnexpectedEOF 5056 } 5057 m.DataDir = string(dAtA[iNdEx:postIndex]) 5058 iNdEx = postIndex 5059 case 3: 5060 if wireType != 2 { 5061 return fmt.Errorf("proto: wrong wireType = %d for field WALDir", wireType) 5062 } 5063 var stringLen uint64 5064 for shift := uint(0); ; shift += 7 { 5065 if shift >= 64 { 5066 return ErrIntOverflowRpc 5067 } 5068 if iNdEx >= l { 5069 return io.ErrUnexpectedEOF 5070 } 5071 b := dAtA[iNdEx] 5072 iNdEx++ 5073 stringLen |= uint64(b&0x7F) << shift 5074 if b < 0x80 { 5075 break 5076 } 5077 } 5078 intStringLen := int(stringLen) 5079 if intStringLen < 0 { 5080 return ErrInvalidLengthRpc 5081 } 5082 postIndex := iNdEx + intStringLen 5083 if postIndex < 0 { 5084 return ErrInvalidLengthRpc 5085 } 5086 if postIndex > l { 5087 return io.ErrUnexpectedEOF 5088 } 5089 m.WALDir = string(dAtA[iNdEx:postIndex]) 5090 iNdEx = postIndex 5091 case 11: 5092 if wireType != 0 { 5093 return fmt.Errorf("proto: wrong wireType = %d for field HeartbeatIntervalMs", wireType) 5094 } 5095 m.HeartbeatIntervalMs = 0 5096 for shift := uint(0); ; shift += 7 { 5097 if shift >= 64 { 5098 return ErrIntOverflowRpc 5099 } 5100 if iNdEx >= l { 5101 return io.ErrUnexpectedEOF 5102 } 5103 b := dAtA[iNdEx] 5104 iNdEx++ 5105 m.HeartbeatIntervalMs |= int64(b&0x7F) << shift 5106 if b < 0x80 { 5107 break 5108 } 5109 } 5110 case 12: 5111 if wireType != 0 { 5112 return fmt.Errorf("proto: wrong wireType = %d for field ElectionTimeoutMs", wireType) 5113 } 5114 m.ElectionTimeoutMs = 0 5115 for shift := uint(0); ; shift += 7 { 5116 if shift >= 64 { 5117 return ErrIntOverflowRpc 5118 } 5119 if iNdEx >= l { 5120 return io.ErrUnexpectedEOF 5121 } 5122 b := dAtA[iNdEx] 5123 iNdEx++ 5124 m.ElectionTimeoutMs |= int64(b&0x7F) << shift 5125 if b < 0x80 { 5126 break 5127 } 5128 } 5129 case 21: 5130 if wireType != 2 { 5131 return fmt.Errorf("proto: wrong wireType = %d for field ListenClientURLs", wireType) 5132 } 5133 var stringLen uint64 5134 for shift := uint(0); ; shift += 7 { 5135 if shift >= 64 { 5136 return ErrIntOverflowRpc 5137 } 5138 if iNdEx >= l { 5139 return io.ErrUnexpectedEOF 5140 } 5141 b := dAtA[iNdEx] 5142 iNdEx++ 5143 stringLen |= uint64(b&0x7F) << shift 5144 if b < 0x80 { 5145 break 5146 } 5147 } 5148 intStringLen := int(stringLen) 5149 if intStringLen < 0 { 5150 return ErrInvalidLengthRpc 5151 } 5152 postIndex := iNdEx + intStringLen 5153 if postIndex < 0 { 5154 return ErrInvalidLengthRpc 5155 } 5156 if postIndex > l { 5157 return io.ErrUnexpectedEOF 5158 } 5159 m.ListenClientURLs = append(m.ListenClientURLs, string(dAtA[iNdEx:postIndex])) 5160 iNdEx = postIndex 5161 case 22: 5162 if wireType != 2 { 5163 return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseClientURLs", wireType) 5164 } 5165 var stringLen uint64 5166 for shift := uint(0); ; shift += 7 { 5167 if shift >= 64 { 5168 return ErrIntOverflowRpc 5169 } 5170 if iNdEx >= l { 5171 return io.ErrUnexpectedEOF 5172 } 5173 b := dAtA[iNdEx] 5174 iNdEx++ 5175 stringLen |= uint64(b&0x7F) << shift 5176 if b < 0x80 { 5177 break 5178 } 5179 } 5180 intStringLen := int(stringLen) 5181 if intStringLen < 0 { 5182 return ErrInvalidLengthRpc 5183 } 5184 postIndex := iNdEx + intStringLen 5185 if postIndex < 0 { 5186 return ErrInvalidLengthRpc 5187 } 5188 if postIndex > l { 5189 return io.ErrUnexpectedEOF 5190 } 5191 m.AdvertiseClientURLs = append(m.AdvertiseClientURLs, string(dAtA[iNdEx:postIndex])) 5192 iNdEx = postIndex 5193 case 23: 5194 if wireType != 0 { 5195 return fmt.Errorf("proto: wrong wireType = %d for field ClientAutoTLS", wireType) 5196 } 5197 var v int 5198 for shift := uint(0); ; shift += 7 { 5199 if shift >= 64 { 5200 return ErrIntOverflowRpc 5201 } 5202 if iNdEx >= l { 5203 return io.ErrUnexpectedEOF 5204 } 5205 b := dAtA[iNdEx] 5206 iNdEx++ 5207 v |= int(b&0x7F) << shift 5208 if b < 0x80 { 5209 break 5210 } 5211 } 5212 m.ClientAutoTLS = bool(v != 0) 5213 case 24: 5214 if wireType != 0 { 5215 return fmt.Errorf("proto: wrong wireType = %d for field ClientCertAuth", wireType) 5216 } 5217 var v int 5218 for shift := uint(0); ; shift += 7 { 5219 if shift >= 64 { 5220 return ErrIntOverflowRpc 5221 } 5222 if iNdEx >= l { 5223 return io.ErrUnexpectedEOF 5224 } 5225 b := dAtA[iNdEx] 5226 iNdEx++ 5227 v |= int(b&0x7F) << shift 5228 if b < 0x80 { 5229 break 5230 } 5231 } 5232 m.ClientCertAuth = bool(v != 0) 5233 case 25: 5234 if wireType != 2 { 5235 return fmt.Errorf("proto: wrong wireType = %d for field ClientCertFile", wireType) 5236 } 5237 var stringLen uint64 5238 for shift := uint(0); ; shift += 7 { 5239 if shift >= 64 { 5240 return ErrIntOverflowRpc 5241 } 5242 if iNdEx >= l { 5243 return io.ErrUnexpectedEOF 5244 } 5245 b := dAtA[iNdEx] 5246 iNdEx++ 5247 stringLen |= uint64(b&0x7F) << shift 5248 if b < 0x80 { 5249 break 5250 } 5251 } 5252 intStringLen := int(stringLen) 5253 if intStringLen < 0 { 5254 return ErrInvalidLengthRpc 5255 } 5256 postIndex := iNdEx + intStringLen 5257 if postIndex < 0 { 5258 return ErrInvalidLengthRpc 5259 } 5260 if postIndex > l { 5261 return io.ErrUnexpectedEOF 5262 } 5263 m.ClientCertFile = string(dAtA[iNdEx:postIndex]) 5264 iNdEx = postIndex 5265 case 26: 5266 if wireType != 2 { 5267 return fmt.Errorf("proto: wrong wireType = %d for field ClientKeyFile", wireType) 5268 } 5269 var stringLen uint64 5270 for shift := uint(0); ; shift += 7 { 5271 if shift >= 64 { 5272 return ErrIntOverflowRpc 5273 } 5274 if iNdEx >= l { 5275 return io.ErrUnexpectedEOF 5276 } 5277 b := dAtA[iNdEx] 5278 iNdEx++ 5279 stringLen |= uint64(b&0x7F) << shift 5280 if b < 0x80 { 5281 break 5282 } 5283 } 5284 intStringLen := int(stringLen) 5285 if intStringLen < 0 { 5286 return ErrInvalidLengthRpc 5287 } 5288 postIndex := iNdEx + intStringLen 5289 if postIndex < 0 { 5290 return ErrInvalidLengthRpc 5291 } 5292 if postIndex > l { 5293 return io.ErrUnexpectedEOF 5294 } 5295 m.ClientKeyFile = string(dAtA[iNdEx:postIndex]) 5296 iNdEx = postIndex 5297 case 27: 5298 if wireType != 2 { 5299 return fmt.Errorf("proto: wrong wireType = %d for field ClientTrustedCAFile", wireType) 5300 } 5301 var stringLen uint64 5302 for shift := uint(0); ; shift += 7 { 5303 if shift >= 64 { 5304 return ErrIntOverflowRpc 5305 } 5306 if iNdEx >= l { 5307 return io.ErrUnexpectedEOF 5308 } 5309 b := dAtA[iNdEx] 5310 iNdEx++ 5311 stringLen |= uint64(b&0x7F) << shift 5312 if b < 0x80 { 5313 break 5314 } 5315 } 5316 intStringLen := int(stringLen) 5317 if intStringLen < 0 { 5318 return ErrInvalidLengthRpc 5319 } 5320 postIndex := iNdEx + intStringLen 5321 if postIndex < 0 { 5322 return ErrInvalidLengthRpc 5323 } 5324 if postIndex > l { 5325 return io.ErrUnexpectedEOF 5326 } 5327 m.ClientTrustedCAFile = string(dAtA[iNdEx:postIndex]) 5328 iNdEx = postIndex 5329 case 31: 5330 if wireType != 2 { 5331 return fmt.Errorf("proto: wrong wireType = %d for field ListenPeerURLs", wireType) 5332 } 5333 var stringLen uint64 5334 for shift := uint(0); ; shift += 7 { 5335 if shift >= 64 { 5336 return ErrIntOverflowRpc 5337 } 5338 if iNdEx >= l { 5339 return io.ErrUnexpectedEOF 5340 } 5341 b := dAtA[iNdEx] 5342 iNdEx++ 5343 stringLen |= uint64(b&0x7F) << shift 5344 if b < 0x80 { 5345 break 5346 } 5347 } 5348 intStringLen := int(stringLen) 5349 if intStringLen < 0 { 5350 return ErrInvalidLengthRpc 5351 } 5352 postIndex := iNdEx + intStringLen 5353 if postIndex < 0 { 5354 return ErrInvalidLengthRpc 5355 } 5356 if postIndex > l { 5357 return io.ErrUnexpectedEOF 5358 } 5359 m.ListenPeerURLs = append(m.ListenPeerURLs, string(dAtA[iNdEx:postIndex])) 5360 iNdEx = postIndex 5361 case 32: 5362 if wireType != 2 { 5363 return fmt.Errorf("proto: wrong wireType = %d for field AdvertisePeerURLs", wireType) 5364 } 5365 var stringLen uint64 5366 for shift := uint(0); ; shift += 7 { 5367 if shift >= 64 { 5368 return ErrIntOverflowRpc 5369 } 5370 if iNdEx >= l { 5371 return io.ErrUnexpectedEOF 5372 } 5373 b := dAtA[iNdEx] 5374 iNdEx++ 5375 stringLen |= uint64(b&0x7F) << shift 5376 if b < 0x80 { 5377 break 5378 } 5379 } 5380 intStringLen := int(stringLen) 5381 if intStringLen < 0 { 5382 return ErrInvalidLengthRpc 5383 } 5384 postIndex := iNdEx + intStringLen 5385 if postIndex < 0 { 5386 return ErrInvalidLengthRpc 5387 } 5388 if postIndex > l { 5389 return io.ErrUnexpectedEOF 5390 } 5391 m.AdvertisePeerURLs = append(m.AdvertisePeerURLs, string(dAtA[iNdEx:postIndex])) 5392 iNdEx = postIndex 5393 case 33: 5394 if wireType != 0 { 5395 return fmt.Errorf("proto: wrong wireType = %d for field PeerAutoTLS", wireType) 5396 } 5397 var v int 5398 for shift := uint(0); ; shift += 7 { 5399 if shift >= 64 { 5400 return ErrIntOverflowRpc 5401 } 5402 if iNdEx >= l { 5403 return io.ErrUnexpectedEOF 5404 } 5405 b := dAtA[iNdEx] 5406 iNdEx++ 5407 v |= int(b&0x7F) << shift 5408 if b < 0x80 { 5409 break 5410 } 5411 } 5412 m.PeerAutoTLS = bool(v != 0) 5413 case 34: 5414 if wireType != 0 { 5415 return fmt.Errorf("proto: wrong wireType = %d for field PeerClientCertAuth", wireType) 5416 } 5417 var v int 5418 for shift := uint(0); ; shift += 7 { 5419 if shift >= 64 { 5420 return ErrIntOverflowRpc 5421 } 5422 if iNdEx >= l { 5423 return io.ErrUnexpectedEOF 5424 } 5425 b := dAtA[iNdEx] 5426 iNdEx++ 5427 v |= int(b&0x7F) << shift 5428 if b < 0x80 { 5429 break 5430 } 5431 } 5432 m.PeerClientCertAuth = bool(v != 0) 5433 case 35: 5434 if wireType != 2 { 5435 return fmt.Errorf("proto: wrong wireType = %d for field PeerCertFile", wireType) 5436 } 5437 var stringLen uint64 5438 for shift := uint(0); ; shift += 7 { 5439 if shift >= 64 { 5440 return ErrIntOverflowRpc 5441 } 5442 if iNdEx >= l { 5443 return io.ErrUnexpectedEOF 5444 } 5445 b := dAtA[iNdEx] 5446 iNdEx++ 5447 stringLen |= uint64(b&0x7F) << shift 5448 if b < 0x80 { 5449 break 5450 } 5451 } 5452 intStringLen := int(stringLen) 5453 if intStringLen < 0 { 5454 return ErrInvalidLengthRpc 5455 } 5456 postIndex := iNdEx + intStringLen 5457 if postIndex < 0 { 5458 return ErrInvalidLengthRpc 5459 } 5460 if postIndex > l { 5461 return io.ErrUnexpectedEOF 5462 } 5463 m.PeerCertFile = string(dAtA[iNdEx:postIndex]) 5464 iNdEx = postIndex 5465 case 36: 5466 if wireType != 2 { 5467 return fmt.Errorf("proto: wrong wireType = %d for field PeerKeyFile", wireType) 5468 } 5469 var stringLen uint64 5470 for shift := uint(0); ; shift += 7 { 5471 if shift >= 64 { 5472 return ErrIntOverflowRpc 5473 } 5474 if iNdEx >= l { 5475 return io.ErrUnexpectedEOF 5476 } 5477 b := dAtA[iNdEx] 5478 iNdEx++ 5479 stringLen |= uint64(b&0x7F) << shift 5480 if b < 0x80 { 5481 break 5482 } 5483 } 5484 intStringLen := int(stringLen) 5485 if intStringLen < 0 { 5486 return ErrInvalidLengthRpc 5487 } 5488 postIndex := iNdEx + intStringLen 5489 if postIndex < 0 { 5490 return ErrInvalidLengthRpc 5491 } 5492 if postIndex > l { 5493 return io.ErrUnexpectedEOF 5494 } 5495 m.PeerKeyFile = string(dAtA[iNdEx:postIndex]) 5496 iNdEx = postIndex 5497 case 37: 5498 if wireType != 2 { 5499 return fmt.Errorf("proto: wrong wireType = %d for field PeerTrustedCAFile", wireType) 5500 } 5501 var stringLen uint64 5502 for shift := uint(0); ; shift += 7 { 5503 if shift >= 64 { 5504 return ErrIntOverflowRpc 5505 } 5506 if iNdEx >= l { 5507 return io.ErrUnexpectedEOF 5508 } 5509 b := dAtA[iNdEx] 5510 iNdEx++ 5511 stringLen |= uint64(b&0x7F) << shift 5512 if b < 0x80 { 5513 break 5514 } 5515 } 5516 intStringLen := int(stringLen) 5517 if intStringLen < 0 { 5518 return ErrInvalidLengthRpc 5519 } 5520 postIndex := iNdEx + intStringLen 5521 if postIndex < 0 { 5522 return ErrInvalidLengthRpc 5523 } 5524 if postIndex > l { 5525 return io.ErrUnexpectedEOF 5526 } 5527 m.PeerTrustedCAFile = string(dAtA[iNdEx:postIndex]) 5528 iNdEx = postIndex 5529 case 41: 5530 if wireType != 2 { 5531 return fmt.Errorf("proto: wrong wireType = %d for field InitialCluster", wireType) 5532 } 5533 var stringLen uint64 5534 for shift := uint(0); ; shift += 7 { 5535 if shift >= 64 { 5536 return ErrIntOverflowRpc 5537 } 5538 if iNdEx >= l { 5539 return io.ErrUnexpectedEOF 5540 } 5541 b := dAtA[iNdEx] 5542 iNdEx++ 5543 stringLen |= uint64(b&0x7F) << shift 5544 if b < 0x80 { 5545 break 5546 } 5547 } 5548 intStringLen := int(stringLen) 5549 if intStringLen < 0 { 5550 return ErrInvalidLengthRpc 5551 } 5552 postIndex := iNdEx + intStringLen 5553 if postIndex < 0 { 5554 return ErrInvalidLengthRpc 5555 } 5556 if postIndex > l { 5557 return io.ErrUnexpectedEOF 5558 } 5559 m.InitialCluster = string(dAtA[iNdEx:postIndex]) 5560 iNdEx = postIndex 5561 case 42: 5562 if wireType != 2 { 5563 return fmt.Errorf("proto: wrong wireType = %d for field InitialClusterState", wireType) 5564 } 5565 var stringLen uint64 5566 for shift := uint(0); ; shift += 7 { 5567 if shift >= 64 { 5568 return ErrIntOverflowRpc 5569 } 5570 if iNdEx >= l { 5571 return io.ErrUnexpectedEOF 5572 } 5573 b := dAtA[iNdEx] 5574 iNdEx++ 5575 stringLen |= uint64(b&0x7F) << shift 5576 if b < 0x80 { 5577 break 5578 } 5579 } 5580 intStringLen := int(stringLen) 5581 if intStringLen < 0 { 5582 return ErrInvalidLengthRpc 5583 } 5584 postIndex := iNdEx + intStringLen 5585 if postIndex < 0 { 5586 return ErrInvalidLengthRpc 5587 } 5588 if postIndex > l { 5589 return io.ErrUnexpectedEOF 5590 } 5591 m.InitialClusterState = string(dAtA[iNdEx:postIndex]) 5592 iNdEx = postIndex 5593 case 43: 5594 if wireType != 2 { 5595 return fmt.Errorf("proto: wrong wireType = %d for field InitialClusterToken", wireType) 5596 } 5597 var stringLen uint64 5598 for shift := uint(0); ; shift += 7 { 5599 if shift >= 64 { 5600 return ErrIntOverflowRpc 5601 } 5602 if iNdEx >= l { 5603 return io.ErrUnexpectedEOF 5604 } 5605 b := dAtA[iNdEx] 5606 iNdEx++ 5607 stringLen |= uint64(b&0x7F) << shift 5608 if b < 0x80 { 5609 break 5610 } 5611 } 5612 intStringLen := int(stringLen) 5613 if intStringLen < 0 { 5614 return ErrInvalidLengthRpc 5615 } 5616 postIndex := iNdEx + intStringLen 5617 if postIndex < 0 { 5618 return ErrInvalidLengthRpc 5619 } 5620 if postIndex > l { 5621 return io.ErrUnexpectedEOF 5622 } 5623 m.InitialClusterToken = string(dAtA[iNdEx:postIndex]) 5624 iNdEx = postIndex 5625 case 51: 5626 if wireType != 0 { 5627 return fmt.Errorf("proto: wrong wireType = %d for field SnapshotCount", wireType) 5628 } 5629 m.SnapshotCount = 0 5630 for shift := uint(0); ; shift += 7 { 5631 if shift >= 64 { 5632 return ErrIntOverflowRpc 5633 } 5634 if iNdEx >= l { 5635 return io.ErrUnexpectedEOF 5636 } 5637 b := dAtA[iNdEx] 5638 iNdEx++ 5639 m.SnapshotCount |= int64(b&0x7F) << shift 5640 if b < 0x80 { 5641 break 5642 } 5643 } 5644 case 52: 5645 if wireType != 0 { 5646 return fmt.Errorf("proto: wrong wireType = %d for field QuotaBackendBytes", wireType) 5647 } 5648 m.QuotaBackendBytes = 0 5649 for shift := uint(0); ; shift += 7 { 5650 if shift >= 64 { 5651 return ErrIntOverflowRpc 5652 } 5653 if iNdEx >= l { 5654 return io.ErrUnexpectedEOF 5655 } 5656 b := dAtA[iNdEx] 5657 iNdEx++ 5658 m.QuotaBackendBytes |= int64(b&0x7F) << shift 5659 if b < 0x80 { 5660 break 5661 } 5662 } 5663 case 63: 5664 if wireType != 0 { 5665 return fmt.Errorf("proto: wrong wireType = %d for field PreVote", wireType) 5666 } 5667 var v int 5668 for shift := uint(0); ; shift += 7 { 5669 if shift >= 64 { 5670 return ErrIntOverflowRpc 5671 } 5672 if iNdEx >= l { 5673 return io.ErrUnexpectedEOF 5674 } 5675 b := dAtA[iNdEx] 5676 iNdEx++ 5677 v |= int(b&0x7F) << shift 5678 if b < 0x80 { 5679 break 5680 } 5681 } 5682 m.PreVote = bool(v != 0) 5683 case 64: 5684 if wireType != 0 { 5685 return fmt.Errorf("proto: wrong wireType = %d for field InitialCorruptCheck", wireType) 5686 } 5687 var v int 5688 for shift := uint(0); ; shift += 7 { 5689 if shift >= 64 { 5690 return ErrIntOverflowRpc 5691 } 5692 if iNdEx >= l { 5693 return io.ErrUnexpectedEOF 5694 } 5695 b := dAtA[iNdEx] 5696 iNdEx++ 5697 v |= int(b&0x7F) << shift 5698 if b < 0x80 { 5699 break 5700 } 5701 } 5702 m.InitialCorruptCheck = bool(v != 0) 5703 case 71: 5704 if wireType != 2 { 5705 return fmt.Errorf("proto: wrong wireType = %d for field Logger", wireType) 5706 } 5707 var stringLen uint64 5708 for shift := uint(0); ; shift += 7 { 5709 if shift >= 64 { 5710 return ErrIntOverflowRpc 5711 } 5712 if iNdEx >= l { 5713 return io.ErrUnexpectedEOF 5714 } 5715 b := dAtA[iNdEx] 5716 iNdEx++ 5717 stringLen |= uint64(b&0x7F) << shift 5718 if b < 0x80 { 5719 break 5720 } 5721 } 5722 intStringLen := int(stringLen) 5723 if intStringLen < 0 { 5724 return ErrInvalidLengthRpc 5725 } 5726 postIndex := iNdEx + intStringLen 5727 if postIndex < 0 { 5728 return ErrInvalidLengthRpc 5729 } 5730 if postIndex > l { 5731 return io.ErrUnexpectedEOF 5732 } 5733 m.Logger = string(dAtA[iNdEx:postIndex]) 5734 iNdEx = postIndex 5735 case 72: 5736 if wireType != 2 { 5737 return fmt.Errorf("proto: wrong wireType = %d for field LogOutputs", wireType) 5738 } 5739 var stringLen uint64 5740 for shift := uint(0); ; shift += 7 { 5741 if shift >= 64 { 5742 return ErrIntOverflowRpc 5743 } 5744 if iNdEx >= l { 5745 return io.ErrUnexpectedEOF 5746 } 5747 b := dAtA[iNdEx] 5748 iNdEx++ 5749 stringLen |= uint64(b&0x7F) << shift 5750 if b < 0x80 { 5751 break 5752 } 5753 } 5754 intStringLen := int(stringLen) 5755 if intStringLen < 0 { 5756 return ErrInvalidLengthRpc 5757 } 5758 postIndex := iNdEx + intStringLen 5759 if postIndex < 0 { 5760 return ErrInvalidLengthRpc 5761 } 5762 if postIndex > l { 5763 return io.ErrUnexpectedEOF 5764 } 5765 m.LogOutputs = append(m.LogOutputs, string(dAtA[iNdEx:postIndex])) 5766 iNdEx = postIndex 5767 case 73: 5768 if wireType != 2 { 5769 return fmt.Errorf("proto: wrong wireType = %d for field LogLevel", wireType) 5770 } 5771 var stringLen uint64 5772 for shift := uint(0); ; shift += 7 { 5773 if shift >= 64 { 5774 return ErrIntOverflowRpc 5775 } 5776 if iNdEx >= l { 5777 return io.ErrUnexpectedEOF 5778 } 5779 b := dAtA[iNdEx] 5780 iNdEx++ 5781 stringLen |= uint64(b&0x7F) << shift 5782 if b < 0x80 { 5783 break 5784 } 5785 } 5786 intStringLen := int(stringLen) 5787 if intStringLen < 0 { 5788 return ErrInvalidLengthRpc 5789 } 5790 postIndex := iNdEx + intStringLen 5791 if postIndex < 0 { 5792 return ErrInvalidLengthRpc 5793 } 5794 if postIndex > l { 5795 return io.ErrUnexpectedEOF 5796 } 5797 m.LogLevel = string(dAtA[iNdEx:postIndex]) 5798 iNdEx = postIndex 5799 default: 5800 iNdEx = preIndex 5801 skippy, err := skipRpc(dAtA[iNdEx:]) 5802 if err != nil { 5803 return err 5804 } 5805 if skippy < 0 { 5806 return ErrInvalidLengthRpc 5807 } 5808 if (iNdEx + skippy) < 0 { 5809 return ErrInvalidLengthRpc 5810 } 5811 if (iNdEx + skippy) > l { 5812 return io.ErrUnexpectedEOF 5813 } 5814 m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) 5815 iNdEx += skippy 5816 } 5817 } 5818 5819 if iNdEx > l { 5820 return io.ErrUnexpectedEOF 5821 } 5822 return nil 5823} 5824func skipRpc(dAtA []byte) (n int, err error) { 5825 l := len(dAtA) 5826 iNdEx := 0 5827 for iNdEx < l { 5828 var wire uint64 5829 for shift := uint(0); ; shift += 7 { 5830 if shift >= 64 { 5831 return 0, ErrIntOverflowRpc 5832 } 5833 if iNdEx >= l { 5834 return 0, io.ErrUnexpectedEOF 5835 } 5836 b := dAtA[iNdEx] 5837 iNdEx++ 5838 wire |= (uint64(b) & 0x7F) << shift 5839 if b < 0x80 { 5840 break 5841 } 5842 } 5843 wireType := int(wire & 0x7) 5844 switch wireType { 5845 case 0: 5846 for shift := uint(0); ; shift += 7 { 5847 if shift >= 64 { 5848 return 0, ErrIntOverflowRpc 5849 } 5850 if iNdEx >= l { 5851 return 0, io.ErrUnexpectedEOF 5852 } 5853 iNdEx++ 5854 if dAtA[iNdEx-1] < 0x80 { 5855 break 5856 } 5857 } 5858 return iNdEx, nil 5859 case 1: 5860 iNdEx += 8 5861 return iNdEx, nil 5862 case 2: 5863 var length int 5864 for shift := uint(0); ; shift += 7 { 5865 if shift >= 64 { 5866 return 0, ErrIntOverflowRpc 5867 } 5868 if iNdEx >= l { 5869 return 0, io.ErrUnexpectedEOF 5870 } 5871 b := dAtA[iNdEx] 5872 iNdEx++ 5873 length |= (int(b) & 0x7F) << shift 5874 if b < 0x80 { 5875 break 5876 } 5877 } 5878 if length < 0 { 5879 return 0, ErrInvalidLengthRpc 5880 } 5881 iNdEx += length 5882 if iNdEx < 0 { 5883 return 0, ErrInvalidLengthRpc 5884 } 5885 return iNdEx, nil 5886 case 3: 5887 for { 5888 var innerWire uint64 5889 var start int = iNdEx 5890 for shift := uint(0); ; shift += 7 { 5891 if shift >= 64 { 5892 return 0, ErrIntOverflowRpc 5893 } 5894 if iNdEx >= l { 5895 return 0, io.ErrUnexpectedEOF 5896 } 5897 b := dAtA[iNdEx] 5898 iNdEx++ 5899 innerWire |= (uint64(b) & 0x7F) << shift 5900 if b < 0x80 { 5901 break 5902 } 5903 } 5904 innerWireType := int(innerWire & 0x7) 5905 if innerWireType == 4 { 5906 break 5907 } 5908 next, err := skipRpc(dAtA[start:]) 5909 if err != nil { 5910 return 0, err 5911 } 5912 iNdEx = start + next 5913 if iNdEx < 0 { 5914 return 0, ErrInvalidLengthRpc 5915 } 5916 } 5917 return iNdEx, nil 5918 case 4: 5919 return iNdEx, nil 5920 case 5: 5921 iNdEx += 4 5922 return iNdEx, nil 5923 default: 5924 return 0, fmt.Errorf("proto: illegal wireType %d", wireType) 5925 } 5926 } 5927 panic("unreachable") 5928} 5929 5930var ( 5931 ErrInvalidLengthRpc = fmt.Errorf("proto: negative length found during unmarshaling") 5932 ErrIntOverflowRpc = fmt.Errorf("proto: integer overflow") 5933) 5934