#!/usr/bin/env bash ### ### arching-kaos-tools ### Tools to interact and build an Arching Kaos Infochain ### Copyright (C) 2021 - 2025 kaotisk ### ### This program is free software: you can redistribute it and/or modify ### it under the terms of the GNU General Public License as published by ### the Free Software Foundation, either version 3 of the License, or ### (at your option) any later version. ### ### This program is distributed in the hope that it will be useful, ### but WITHOUT ANY WARRANTY; without even the implied warranty of ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ### GNU General Public License for more details. ### ### You should have received a copy of the GNU General Public License ### along with this program. If not, see . ### source $AK_LIBDIR/_ak_log source $AK_LIBDIR/_ak_fm AK_TREEFS="$AK_WORKDIR/tree" AK_SESSIONSDIR="$AK_WORKDIR/sessions" function _ak_he_select_random_peer(){ ( ak network --peers cjdns | jq -r '.[].cjdns.ip' ; \ ak network --peers yggdrasil | jq -r '.[].yggdrasil.ip' ) | sort -R | head -n 1 } function _ak_he_list_peers(){ ( ak network --peers cjdns | jq -r '.[].cjdns.ip' ; \ ak network --peers yggdrasil | jq -r '.[].yggdrasil.ip' ) } function _ak_he_url_request_chunk_hash_from_peer(){ if [ ! -z $1 ] && [ -n "$1" ] && [ ! -z $2 ] && [ -n "$2" ] then printf 'http://[%s]:8610/v0/chunk/%s' "$1" "$2" fi } function _ak_he_url_request_leaf_hash_from_peer(){ if [ ! -z $1 ] && [ -n "$1" ] && [ ! -z $2 ] && [ -n "$2" ] then printf 'http://[%s]:8610/v0/leaf/%s' "$1" "$2" fi } function _ak_he_url_request_map_hash_from_peer(){ if [ ! -z $1 ] && [ -n "$1" ] && [ ! -z $2 ] && [ -n "$2" ] then printf 'http://[%s]:8610/v0/map/%s' "$1" "$2" fi } function _ak_he_url_request_chunk_hash_from_random_peer(){ if [ ! -z $1 ] && [ -n "$1" ] then _ak_he_url_request_chunk_hash_from_peer "$(_ak_he_select_random_peer)" "$1" fi } function _ak_he_url_request_leaf_hash_from_random_peer(){ if [ ! -z $1 ] && [ -n "$1" ] then _ak_he_url_request_leaf_hash_from_peer "$(_ak_he_select_random_peer)" "$1" fi } function _ak_he_url_request_map_hash_from_random_peer(){ if [ ! -z $1 ] && [ -n "$1" ] then _ak_he_url_request_map_hash_from_peer "$(_ak_he_select_random_peer)" "$1" fi }