MCPcopy Create free account

hub / github.com/Revertron/Yggdrasil-ng / functions

Functions719 in github.com/Revertron/Yggdrasil-ng

↓ 3 callersFunctioned25519_public_to_curve25519
Convert an Ed25519 public key to a Curve25519 (Montgomery) public key. Uses the bilinear map: u = (1 + y) / (1 - y) mod p where y is the Edwards y-co
crates/ironwood/src/encrypted/crypto.rs:89
↓ 3 callersMethodenabled
(&self)
crates/yggdrasil/src/firewall.rs:131
↓ 3 callersFunctionextract_ed25519_pubkey_from_cert
Extract the 32-byte ed25519 public key from a DER-encoded X.509 certificate. Returns `None` if the certificate does not contain an ed25519 key or cann
crates/yggdrasil/src/tls_support.rs:139
↓ 3 callersMethodflush_rx
(&mut self)
crates/yggdrasil/src/links.rs:281
↓ 3 callersFunctiongenerate_self_signed_cert
( signing_key: &SigningKey, )
crates/yggdrasil/src/tls_support.rs:80
↓ 3 callersMethodget_ancestry
(&self, key: &PublicKey)
crates/ironwood/src/router.rs:1075
↓ 3 callersMethodget_announce
Reconstruct announcement from stored info.
crates/ironwood/src/router.rs:44
↓ 3 callersMethodget_public_key_for_address
Look up the destination public key for an IP address using longest-prefix-match. Returns `None` if no route matches.
crates/yggdrasil/src/ckr.rs:121
↓ 3 callersFunctionis_valid_address
Check if an IPv6 address (16 bytes) is a valid Yggdrasil address.
crates/yggdrasil/src/address.rs:143
↓ 3 callersFunctionis_valid_subnet
Check if an IPv6 /64 prefix (first 8 bytes) is a valid Yggdrasil subnet.
crates/yggdrasil/src/address.rs:148
↓ 3 callersMethodlookup
Greedy routing lookup: find the best next-hop peer.
crates/ironwood/src/router.rs:1000
↓ 3 callersMethodmtu
(&self)
crates/ironwood/src/signed.rs:209
↓ 3 callersMethodmtu
(&self)
crates/ironwood/src/encrypted/mod.rs:318
↓ 3 callersMethodmtu
Get the MTU (ironwood MTU minus session type overhead, capped at 65535).
crates/yggdrasil/src/core.rs:228
↓ 3 callersMethodnew_req
(&self)
crates/ironwood/src/router.rs:496
↓ 3 callersFunctionnormalize_subnet_entries
(entries: &[String])
crates/yggdrasil/src/ckr.rs:265
↓ 3 callersFunctionother_key_hex
()
crates/yggdrasil/src/ckr.rs:432
↓ 3 callersFunctionparse_pubkey
(hex_str: &str)
crates/yggdrasil/src/ckr.rs:280
↓ 3 callersFunctionprint_kv
(obj: &serde_json::Value, fields: &[(&str, &str)])
crates/yggdrasil/src/ctl.rs:342
↓ 3 callersMethodread_fixed
(&mut self)
crates/ironwood/src/wire.rs:168
↓ 3 callersMethodread_signature
(&mut self)
crates/ironwood/src/wire.rs:182
↓ 3 callersMethodrecord_failure
Record a failed handshake attempt. Returns true if the IP should now be banned.
crates/yggdrasil/src/links.rs:210
↓ 3 callersMethodremove_peer
Remove a peer by ID.
crates/ironwood/src/peers.rs:156
↓ 3 callersMethodreset_cache
(&mut self)
crates/ironwood/src/router.rs:343
↓ 3 callersMethodroute_traffic
Route traffic to next hop or deliver locally.
crates/ironwood/src/router.rs:1136
↓ 3 callersFunctionsigned_nanos
(now: Instant, t: Instant)
crates/ironwood/src/traffic.rs:101
↓ 3 callersMethodtest
Test if a key might be in the bloom filter. Returns true if the key might be present (could be false positive). Returns false if the key is definitely
crates/ironwood/src/bloom.rs:63
↓ 3 callersFunctionto_u32
(chunk: &[u8])
crates/salsa20-simd/src/xsalsa.rs:93
↓ 3 callersMethodto_wire
Convert to wire format.
crates/ironwood/src/router.rs:92
↓ 2 callersMethodadd_peer
Add a persistent peer.
crates/yggdrasil/src/core.rs:319
↓ 2 callersMethodaddress
Get the local Yggdrasil IPv6 address.
crates/yggdrasil/src/core.rs:239
↓ 2 callersFunctionadvance_tcp
(prev: Option<TcpState>, flags: u8)
crates/yggdrasil/src/firewall.rs:288
↓ 2 callersMethodalloc_port
Scan from 1 upward and return the lowest port not currently in use. Matches Go's linear search behavior: freed ports are reused on reconnection.
crates/ironwood/src/peers.rs:147
↓ 2 callersFunctionapply_interface_dns
(guid: windows::core::GUID, addrs: &[&str], ipv6: bool)
crates/yggdrasil/src/tun.rs:395
↓ 2 callersFunctionbase_hashes
Generate four base hash values from key data using Murmur3. This replicates the Go library's `sum256` function exactly: 1. Hash data with murmur3 → h
crates/ironwood/src/bloom.rs:359
↓ 2 callersFunctionblake2b_hash
Compute BLAKE2b-512 hash of data, optionally keyed with password.
crates/yggdrasil/src/version.rs:203
↓ 2 callersFunctionbox_open_precomputed
Decrypt with a precomputed shared secret (SalsaBox already contains it).
crates/ironwood/src/encrypted/crypto.rs:162
↓ 2 callersFunctionbox_seal_precomputed
Encrypt with a precomputed shared secret (SalsaBox already contains it).
crates/ironwood/src/encrypted/crypto.rs:151
↓ 2 callersFunctionbuild_icmpv6_ptb
Build an ICMPv6 Packet Too Big message. Takes the original oversized packet and the MTU to report.
crates/yggdrasil/src/ipv6rwc.rs:584
↓ 2 callersMethodbytes_for_sig
Compute bytes that are signed.
crates/ironwood/src/pathfinder.rs:69
↓ 2 callersMethodbytes_for_sig
Compute bytes for the signature: node || parent || seq || nonce || port
crates/ironwood/src/router.rs:71
↓ 2 callersFunctioncall_set_interface_dns_settings
( guid: windows::core::GUID, settings: *const windows::Win32::NetworkManagement::IpHelper::DNS_INTERFA
crates/yggdrasil/src/tun.rs:319
↓ 2 callersMethodcheck_inbound
Decide whether an inbound packet should be delivered. Returns true if accepted, false if it should be dropped.
crates/yggdrasil/src/firewall.rs:194
↓ 2 callersFunctioncodel_control_law
(t: Instant, count: u32)
crates/ironwood/src/traffic.rs:111
↓ 2 callersMethodcore
(&self)
crates/yggdrasil/src/links.rs:604
↓ 2 callersMethodcount_lookup_targets
Count how many on-tree peers' bloom filters cover the given destination key. Returns (xformed_key_hex, multicast_count).
crates/yggdrasil/src/core.rs:417
↓ 2 callersMethodcount_on_tree_targets_for_xkey
Count how many on-tree peers' bloom filters match the given already-transformed key. Used for diagnostics: distinguishes "0 targets (no peer covers th
crates/ironwood/src/bloom.rs:346
↓ 2 callersFunctioncreate_client_config
Create TLS client configuration that accepts all server certificates and sends our certificate for mutual TLS authentication. Supports TLS 1.2 and 1.3
crates/yggdrasil/src/tls_support.rs:236
↓ 2 callersFunctioncreate_server_config
Create TLS server configuration with optional client certificate authentication. This uses TLS 1.3 only for maximum security (matching Go implementati
crates/yggdrasil/src/tls_support.rs:215
↓ 2 callersMethodcreate_session_from_init
Create a new SessionInfo from init keys, consuming any pending buffer. Must be called while holding the buffers lock is NOT held (acquires it internal
crates/ironwood/src/encrypted/session.rs:888
↓ 2 callersFunctiondecode_bloom
Decode a bloom filter from wire format.
crates/ironwood/src/wire.rs:491
↓ 2 callersMethoddecrypt
Decrypt an init/ack message.
crates/ironwood/src/encrypted/session.rs:130
↓ 2 callersMethoddo_maintenance
Periodic maintenance (called every ~1 second). Returns a list of actions to execute.
crates/ironwood/src/router.rs:304
↓ 2 callersMethoddo_send
Encrypt and produce a traffic message (cold path — used by handle_init/handle_ack where the session is not yet shared and there is zero contention).
crates/ironwood/src/encrypted/session.rs:318
↓ 2 callersFunctionencode_bloom
Encode a bloom filter's backing u64 array with compression. Format: [16 bytes: flags0 (all-zero chunks)][16 bytes: flags1 (all-one chunks)][remaining
crates/ironwood/src/wire.rs:468
↓ 2 callersFunctionencode_traffic_frame
(path: &[PeerPort], from: &[PeerPort], source: &PublicKey, dest: &PublicKey, watermark: u64, payload: &[u8])
crates/ironwood/src/wire.rs:555
↓ 2 callersFunctionencrypt_outside_lock
Phase 2 of split send: encrypt outside lock using snapshot.
crates/ironwood/src/encrypted/session.rs:519
↓ 2 callersMethodequal
(&self, other: &BloomFilter)
crates/ironwood/src/bloom.rs:99
↓ 2 callersMethodflow_for
Get the flow for a packet, creating an inactive one if needed.
crates/ironwood/src/traffic.rs:256
↓ 2 callersMethodforce_refresh
External nudge to force an immediate router refresh / re-announce. Use from platform timers (e.g. Android AlarmManager) to keep the mesh view of us fr
crates/ironwood/src/core.rs:920
↓ 2 callersMethodgc
(&self)
crates/yggdrasil/src/firewall.rs:150
↓ 2 callersMethodget_block_pos
(&self)
crates/salsa20-simd/src/lib.rs:334
↓ 2 callersMethodget_handle
Get a reference to a peer handle by ID.
crates/ironwood/src/peers.rs:195
↓ 2 callersMethodget_peers
Get link-level peer info merged with ironwood RTT/cost (for admin getPeers). Returns all configured peers (with up=false if disconnected) plus active
crates/yggdrasil/src/core.rs:344
↓ 2 callersMethodget_root_and_dists
Get root and distances from a starting node.
crates/ironwood/src/router.rs:916
↓ 2 callersMethodget_send_bloom
Get the current send bloom for a peer (for retransmission).
crates/ironwood/src/bloom.rs:271
↓ 2 callersMethodget_sessions
Get all active encrypted sessions.
crates/yggdrasil/src/core.rs:406
↓ 2 callersFunctionget_set_interface_dns_settings_ptr
()
crates/yggdrasil/src/tun.rs:282
↓ 2 callersMethodget_tree
Get spanning tree entries (from ironwood).
crates/yggdrasil/src/core.rs:386
↓ 2 callersMethodhandle_broken
Handle incoming path broken from a peer.
crates/ironwood/src/router.rs:1387
↓ 2 callersMethodhandle_broken_internal
(&mut self, broken: &wire::PathBroken)
crates/ironwood/src/router.rs:1355
↓ 2 callersMethodhandle_conn
(&self, key: Addr, conn: Box<dyn AsyncConn>, prio: u8)
crates/ironwood/src/core.rs:638
↓ 2 callersFunctionhandle_connection
Perform the Yggdrasil handshake over a stream (TCP or TLS), then hand off to ironwood.
crates/yggdrasil/src/links.rs:934
↓ 2 callersMethodhandle_lookup_internal
(&mut self,from_key: &PublicKey, lookup: &wire::PathLookup)
crates/ironwood/src/router.rs:1203
↓ 2 callersMethodhandle_notify_internal
(&mut self,_from_key: &PublicKey, notify: &wire::PathNotify)
crates/ironwood/src/router.rs:1273
↓ 2 callersFunctioninit_logging
(loglevel: &str, logto: Option<&str>)
crates/yggdrasil/src/main.rs:423
↓ 2 callersFunctionis_tracked
(proto: u8)
crates/yggdrasil/src/firewall.rs:284
↓ 2 callersFunctionis_yggdrasil_destination
Check if an IP address falls within the Yggdrasil address space.
crates/yggdrasil/src/ckr.rs:145
↓ 2 callersFunctionlocation
Calculate the ith hash location using the four base hash values. This replicates the Go library's `location` function exactly: location(h, i) = h[i%2
crates/ironwood/src/bloom.rs:385
↓ 2 callersMethodmaybe_ratchet_on_recv
Possibly ratchet keys when receiving from remote's "next" key.
crates/ironwood/src/encrypted/session.rs:446
↓ 2 callersMethodmtu
(&self)
crates/ironwood/src/core.rs:744
↓ 2 callersMethodnetwork
(&self)
crates/ironwood/src/types.rs:10
↓ 2 callersFunctionparse_ipv4_cidr
(cidr: &str)
crates/yggdrasil/src/tun.rs:260
↓ 2 callersFunctionpeek_frame_type
Peek at the packet type of an encoded frame (uvarint length + type byte).
crates/ironwood/src/peers.rs:888
↓ 2 callersMethodpeer_addr
(&self)
crates/yggdrasil/src/links.rs:31
↓ 2 callersMethodrouting_entries
Get the number of routing entries.
crates/yggdrasil/src/core.rs:391
↓ 2 callersFunctionrun_node
Run the Yggdrasil node, blocking until the shutdown signal fires. Called from both console mode (Ctrl+C) and Windows service mode (SCM stop).
crates/yggdrasil/src/main.rs:201
↓ 2 callersMethodsend_finalize
Phase 3 of split send: update stats under lock.
crates/ironwood/src/encrypted/session.rs:352
↓ 2 callersMethodsend_lookup
Send a key lookup via ironwood.
crates/yggdrasil/src/core.rs:223
↓ 2 callersMethodsend_reqs
(&mut self)
crates/ironwood/src/router.rs:818
↓ 2 callersMethodsend_snapshot
Phase 1 of split send: snapshot state under lock, increment nonce.
crates/ironwood/src/encrypted/session.rs:326
↓ 2 callersMethodsend_traffic
Handle outbound traffic (from local application).
crates/ironwood/src/router.rs:1102
↓ 2 callersFunctionsession_rows
(sessions: &[serde_json::Value])
crates/yggdrasil/src/ctl.rs:271
↓ 2 callersMethodshould_throttle_lookup
Check if we should throttle a lookup to this destination.
crates/ironwood/src/pathfinder.rs:117
↓ 2 callersMethodsign
Sign a message for a specific recipient. Signs `[toKey || msg]` and returns `[signature(64) || msg]`.
crates/ironwood/src/signed.rs:76
↓ 2 callersMethodsign
Sign with our private key.
crates/ironwood/src/pathfinder.rs:77
↓ 2 callersMethodsigning_key
Parse the private key from hex.
crates/yggdrasil/src/config.rs:332
↓ 2 callersMethodsubnet
Get the local Yggdrasil /64 subnet.
crates/yggdrasil/src/core.rs:244
↓ 2 callersFunctionsubtract_many
Subtract a set of exclude prefixes from a single include prefix. All prefixes must share an address family.
crates/yggdrasil/src/ckr.rs:216
↓ 2 callersMethodupdate_key
Update key mappings when we learn about a key (from ironwood path notify or packet receipt).
crates/yggdrasil/src/ipv6rwc.rs:336
← previousnext →101–200 of 719, ranked by callers