|
iPXE
|
Peer Content Caching and Retrieval (PeerDist) protocol block downloads. More...
#include <stdint.h>#include <ipxe/refcnt.h>#include <ipxe/interface.h>#include <ipxe/crypto.h>#include <ipxe/aes.h>#include <ipxe/xferbuf.h>#include <ipxe/retry.h>#include <ipxe/process.h>#include <ipxe/pccrc.h>#include <ipxe/peerdisc.h>Go to the source code of this file.
Data Structures | |
| struct | peerdist_block_decrypt |
| A PeerDist retrieval protocol decryption buffer descriptor. More... | |
| struct | peerdist_block |
| A PeerDist block download. More... | |
| struct | peerdist_block_queue |
| PeerDist block download queue. More... | |
Macros | |
| #define | peerblk_msg_blk_t(digestsize, len, vrf_len, blksize) |
| Retrieval protocol block fetch response (including transport header) More... | |
Enumerations | |
| enum | peerdist_block_decrypt_index { PEERBLK_BEFORE = 0, PEERBLK_DURING, PEERBLK_AFTER, PEERBLK_NUM_BUFFERS } |
| PeerDist retrieval protocol decryption data transfer buffer indices. More... | |
Functions | |
| FILE_LICENCE (GPL2_OR_LATER_OR_UBDL) | |
| int | peerblk_open (struct interface *xfer, struct uri *uri, struct peerdist_info_block *block) |
| Open PeerDist block download. More... | |
Peer Content Caching and Retrieval (PeerDist) protocol block downloads.
Definition in file peerblk.h.
| #define peerblk_msg_blk_t | ( | digestsize, | |
| len, | |||
| vrf_len, | |||
| blksize | |||
| ) |
Retrieval protocol block fetch response (including transport header)
| digestsize | Digest size |
| len | Data block length |
| vrf_len | Length of uselessness |
| blksize | Cipher block size |
PeerDist retrieval protocol decryption data transfer buffer indices.
Definition at line 34 of file peerblk.h.
| FILE_LICENCE | ( | GPL2_OR_LATER_OR_UBDL | ) |
| int peerblk_open | ( | struct interface * | xfer, |
| struct uri * | uri, | ||
| struct peerdist_info_block * | block | ||
| ) |
Open PeerDist block download.
| xfer | Data transfer interface |
| uri | Original URI |
| info | Content information block |
| rc | Return status code |
Definition at line 1433 of file peerblk.c.
References block, peerdist_block::block, peerdist_block::buffer, digest_algorithm::ctxsize, DBGC2, peerdist_block::digest, peerdist_block::digestctx, digestsize, peerdist_block::digestsize, peerdist_block::discovery, peerdist_range::end, ENOMEM, peerdist_block::hash, peerdist_block::id, info, INIT_LIST_HEAD, intf_init(), intf_plug_plug(), list_empty, memcpy(), peerdist_block::offset, peerblk_close(), peerblk_discovery_operations, peerblk_expired(), peerblk_free(), peerblk_process_desc, peerblk_raw_desc, peerblk_retrieval_desc, peerblk_timestamp(), peerblk_xfer_desc, peerdisc_init(), peerdisc_open(), peerdisc_timeout_secs, peerdisc_segment::peers, peerdist_block::process, process_init_stopped(), peerdist_block::queued, peerdist_block::range, peerdist_block::raw, rc, ref_init, ref_put, peerdist_block::refcnt, peerdist_block::retrieval, peerdist_block::secret, peerdisc_client::segment, peerdist_block::segment, segment, peerdist_range::start, start_timer_fixed(), peerdist_block::started, TICKS_PER_SEC, timeout(), peerdist_block::timer, peerdist_block::trim, peerdist_block::uri, uri_get(), peerdist_block::xfer, xferbuf_malloc_init(), and zalloc().
Referenced by peermux_step().
1.8.15