libzypp
13.10.6
|
#include <MediaBlockList.h>
Public Member Functions | |
MediaBlockList (off_t filesize=off_t(-1)) | |
bool | haveBlocks () const |
do we have a blocklist describing the file? set to true when addBlock() is called More... | |
size_t | addBlock (off_t off, size_t size) |
add a block with offset off and size size to the block list. More... | |
MediaBlock | getBlock (size_t blkno) const |
return the offset/size of a block with number blkno More... | |
size_t | numBlocks () const |
return the number of blocks in the blocklist More... | |
void | setFilesize (off_t newfilesize=off_t(-1)) |
set / return the size of the whole file More... | |
off_t | getFilesize () const |
bool | haveFilesize () const |
void | setFileChecksum (std::string ctype, int cl, unsigned char *c) |
set / verify the checksum over the whole file More... | |
bool | createFileDigest (Digest &digest) const |
bool | verifyFileDigest (Digest &digest) const |
bool | haveFileChecksum () const |
void | setChecksum (size_t blkno, std::string cstype, int csl, unsigned char *cs, size_t cspad=0) |
set / verify the (strong) checksum over a single block More... | |
bool | checkChecksum (size_t blkno, const unsigned char *buf, size_t bufl) const |
bool | createDigest (Digest &digest) const |
bool | verifyDigest (size_t blkno, Digest &digest) const |
bool | haveChecksum (size_t blkno) const |
void | setRsum (size_t blkno, int rsl, unsigned int rs, size_t rspad=0) |
set / verify the (weak) rolling checksum over a single block More... | |
bool | checkRsum (size_t blkno, const unsigned char *buf, size_t bufl) const |
unsigned int | updateRsum (unsigned int rs, const char *bytes, size_t len) const |
bool | verifyRsum (size_t blkno, unsigned int rs) const |
bool | haveRsum (size_t blkno) const |
void | reuseBlocks (FILE *wfp, std::string filename) |
scan a file for blocks from our blocklist. More... | |
std::string | asString () const |
return block list as string More... | |
Private Member Functions | |
void | writeBlock (size_t blkno, FILE *fp, const unsigned char *buf, size_t bufl, size_t start, std::vector< bool > &found) const |
bool | checkChecksumRotated (size_t blkno, const unsigned char *buf, size_t bufl, size_t start) const |
Private Attributes | |
off_t | filesize |
std::string | fsumtype |
std::vector< unsigned char > | fsum |
bool | haveblocks |
std::vector< MediaBlock > | blocks |
std::string | chksumtype |
int | chksumlen |
size_t | chksumpad |
std::vector< unsigned char > | chksums |
std::string | rsumtype |
int | rsumlen |
size_t | rsumpad |
std::vector< unsigned int > | rsums |
Definition at line 35 of file MediaBlockList.h.
zypp::media::MediaBlockList::MediaBlockList | ( | off_t | filesize = off_t(-1) | ) |
Definition at line 33 of file MediaBlockList.cc.
|
inline |
do we have a blocklist describing the file? set to true when addBlock() is called
Definition at line 43 of file MediaBlockList.h.
size_t zypp::media::MediaBlockList::addBlock | ( | off_t | off, |
size_t | size | ||
) |
add a block with offset off and size size to the block list.
Note that blocks must be ordered and must not overlap. returns the block number.
Definition at line 44 of file MediaBlockList.cc.
|
inline |
return the offset/size of a block with number blkno
Definition at line 56 of file MediaBlockList.h.
|
inline |
return the number of blocks in the blocklist
Definition at line 62 of file MediaBlockList.h.
|
inline |
set / return the size of the whole file
Definition at line 69 of file MediaBlockList.h.
|
inline |
Definition at line 72 of file MediaBlockList.h.
|
inline |
Definition at line 75 of file MediaBlockList.h.
void zypp::media::MediaBlockList::setFileChecksum | ( | std::string | ctype, |
int | cl, | ||
unsigned char * | c | ||
) |
set / verify the checksum over the whole file
Definition at line 52 of file MediaBlockList.cc.
bool zypp::media::MediaBlockList::createFileDigest | ( | Digest & | digest | ) | const |
Definition at line 62 of file MediaBlockList.cc.
bool zypp::media::MediaBlockList::verifyFileDigest | ( | Digest & | digest | ) | const |
Definition at line 68 of file MediaBlockList.cc.
|
inline |
Definition at line 85 of file MediaBlockList.h.
void zypp::media::MediaBlockList::setChecksum | ( | size_t | blkno, |
std::string | cstype, | ||
int | csl, | ||
unsigned char * | cs, | ||
size_t | cspad = 0 |
||
) |
set / verify the (strong) checksum over a single block
Definition at line 79 of file MediaBlockList.cc.
bool zypp::media::MediaBlockList::checkChecksum | ( | size_t | blkno, |
const unsigned char * | buf, | ||
size_t | bufl | ||
) | const |
Definition at line 197 of file MediaBlockList.cc.
bool zypp::media::MediaBlockList::createDigest | ( | Digest & | digest | ) | const |
Definition at line 115 of file MediaBlockList.cc.
bool zypp::media::MediaBlockList::verifyDigest | ( | size_t | blkno, |
Digest & | digest | ||
) | const |
Definition at line 121 of file MediaBlockList.cc.
|
inline |
Definition at line 96 of file MediaBlockList.h.
void zypp::media::MediaBlockList::setRsum | ( | size_t | blkno, |
int | rsl, | ||
unsigned int | rs, | ||
size_t | rspad = 0 |
||
) |
set / verify the (weak) rolling checksum over a single block
Definition at line 98 of file MediaBlockList.cc.
bool zypp::media::MediaBlockList::checkRsum | ( | size_t | blkno, |
const unsigned char * | buf, | ||
size_t | bufl | ||
) | const |
Definition at line 188 of file MediaBlockList.cc.
unsigned int zypp::media::MediaBlockList::updateRsum | ( | unsigned int | rs, |
const char * | bytes, | ||
size_t | len | ||
) | const |
Definition at line 141 of file MediaBlockList.cc.
bool zypp::media::MediaBlockList::verifyRsum | ( | size_t | blkno, |
unsigned int | rs | ||
) | const |
Definition at line 158 of file MediaBlockList.cc.
|
inline |
Definition at line 107 of file MediaBlockList.h.
void zypp::media::MediaBlockList::reuseBlocks | ( | FILE * | wfp, |
std::string | filename | ||
) |
scan a file for blocks from our blocklist.
if we find a suitable block, it is removed from the list
Definition at line 276 of file MediaBlockList.cc.
std::string zypp::media::MediaBlockList::asString | ( | ) | const |
return block list as string
Definition at line 489 of file MediaBlockList.cc.
|
private |
Definition at line 229 of file MediaBlockList.cc.
|
private |
Definition at line 210 of file MediaBlockList.cc.
|
private |
Definition at line 126 of file MediaBlockList.h.
|
private |
Definition at line 127 of file MediaBlockList.h.
|
private |
Definition at line 128 of file MediaBlockList.h.
|
private |
Definition at line 130 of file MediaBlockList.h.
|
private |
Definition at line 131 of file MediaBlockList.h.
|
private |
Definition at line 133 of file MediaBlockList.h.
|
private |
Definition at line 134 of file MediaBlockList.h.
|
private |
Definition at line 135 of file MediaBlockList.h.
|
private |
Definition at line 136 of file MediaBlockList.h.
|
private |
Definition at line 138 of file MediaBlockList.h.
|
private |
Definition at line 139 of file MediaBlockList.h.
|
private |
Definition at line 140 of file MediaBlockList.h.
|
private |
Definition at line 141 of file MediaBlockList.h.