libp2p/protocols/kademlia/protobuf

Search:
Group by:
Source   Edit  

Types

AddProviderStatus = enum
  accepted = 0, rejected = 1
Response status carried in field 11 of an ADD_PROVIDER reply (nim extension). Only populated when the responding peer has providerRejection = true. Peers with providerRejection = false never write this field; receivers always decode it when present and act on it only if their own providerRejection is true. Source   Edit  
ConnectionStatus = enum
  notConnected = 0, connected = 1, canConnect = 2, cannotConnect = 3
Source   Edit  
GetAdsMessage {.proto2.} = object
  advertisements* {.fieldNumber: 1.}: seq[seq[byte]]
Source   Edit  
Message {.proto2.} = object
  msgType* {.fieldNumber: 1, ext.}: Opt[MessageType]
  key* {.fieldNumber: 2.}: Opt[seq[byte]]
  record* {.fieldNumber: 3.}: Opt[Record]
  closerPeers* {.fieldNumber: 8.}: seq[Peer]
  providerPeers* {.fieldNumber: 9.}: seq[Peer]
  providerStatus* {.fieldNumber: 11, ext.}: Opt[AddProviderStatus]
  register* {.fieldNumber: 21.}: Opt[RegisterMessage]
  getAds* {.fieldNumber: 22.}: Opt[GetAdsMessage]
Source   Edit  
MessageType = enum
  putValue = 0, getValue = 1, addProvider = 2, getProviders = 3, findNode = 4,
  ping = 5, register = 16, getAds = 17
Source   Edit  
Peer {.proto2.} = object
  id* {.fieldNumber: 1.}: Opt[seq[byte]]
  addrs* {.fieldNumber: 2, ext.}: seq[MultiAddress]
  connection* {.fieldNumber: 3, ext.}: Opt[ConnectionStatus]
Source   Edit  
Record {.proto2.} = object
  key* {.fieldNumber: 1.}: Opt[seq[byte]]
  value* {.fieldNumber: 2.}: Opt[seq[byte]]
  timeReceived* {.fieldNumber: 5.}: Opt[string]
Source   Edit  
RegisterMessage {.proto2.} = object
  advertisement* {.fieldNumber: 1.}: Opt[seq[byte]]
  status* {.fieldNumber: 2, ext.}: Opt[RegistrationStatus]
  ticket* {.fieldNumber: 3.}: Opt[Ticket]
Source   Edit  
RegistrationStatus = enum
  Confirmed = 0, Wait = 1, Rejected = 2
Source   Edit  
Ticket {.proto2.} = object
  advertisement* {.fieldNumber: 1.}: Opt[seq[byte]]
  tInit* {.fieldNumber: 2, ext.}: Opt[Moment]
  tMod* {.fieldNumber: 3, ext.}: Opt[Moment]
  tWaitFor* {.fieldNumber: 4, ext.}: Opt[Duration]
  signature* {.fieldNumber: 5.}: Opt[seq[byte]]
Source   Edit  

Procs

proc `==`(a, b: Peer): bool {....raises: [], tags: [], forbids: [].}
Source   Edit  
proc decode(_: type Message; buf`gensym241: seq[byte]): Result[Message, string]
Source   Edit  
proc decode(_: type Peer; buf`gensym155: seq[byte]): Result[Peer, string]
Source   Edit  
proc decode(_: type Record; buf`gensym2: seq[byte]): Result[Record, string]
Source   Edit  
proc encode(c`gensym2: Record): seq[byte] {....raises: [], tags: [RootEffect],
    forbids: [].}
Source   Edit  
proc encode(msg: Message; hideConnectionStatus: bool = true): seq[byte] {.
    ...raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc encode(msg: Peer; hideConnectionStatus: bool = true): seq[byte] {.
    ...raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc hash(peer: Peer): Hash {....raises: [], tags: [], forbids: [].}
Source   Edit  
proc sign(ticket: var Ticket; privateKey: PrivateKey): Result[void, CryptoError] {.
    ...raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Sign the ticket with the given private key. Source   Edit  
proc toBytes(ticket: Ticket): seq[byte] {....raises: [], gcsafe, tags: [],
    forbids: [].}
Returns the canonical byte representation of a Ticket used for signing. Covers: advertisement || tInit || tMod || tWaitFor Source   Edit  
proc verify(ticket: Ticket; publicKey: PublicKey): bool {....raises: [], gcsafe,
    tags: [RootEffect], forbids: [].}
Verify the ticket signature against the given public key. Source   Edit