![]() |
Raven Core
3.0.0
P2P Digital Currency
|
#include <stdint.h>#include <string>#include <vector>Go to the source code of this file.
Macros | |
| #define | BEGIN(a) ((char*)&(a)) |
| Utilities for converting data from/to strings. More... | |
| #define | END(a) ((char*)&((&(a))[1])) |
| #define | UBEGIN(a) ((unsigned char*)&(a)) |
| #define | UEND(a) ((unsigned char*)&((&(a))[1])) |
| #define | ARRAYLEN(array) (sizeof(array)/sizeof((array)[0])) |
Enumerations | |
| enum | SafeChars { SAFE_CHARS_DEFAULT, SAFE_CHARS_UA_COMMENT, SAFE_CHARS_FILENAME } |
| Used by SanitizeString() More... | |
Functions | |
| std::string | SanitizeString (const std::string &str, int rule=SAFE_CHARS_DEFAULT) |
| Remove unsafe chars. More... | |
| std::vector< unsigned char > | ParseHex (const char *psz) |
| std::vector< unsigned char > | ParseHex (const std::string &str) |
| signed char | HexDigit (char c) |
| bool | IsHex (const std::string &str) |
| bool | IsHexNumber (const std::string &str) |
| Return true if the string is a hex number, optionally prefixed with "0x". More... | |
| std::vector< unsigned char > | DecodeBase64 (const char *p, bool *pfInvalid=nullptr) |
| std::string | DecodeBase64 (const std::string &str) |
| std::string | EncodeBase64 (const unsigned char *pch, size_t len) |
| std::string | EncodeBase64 (const std::string &str) |
| std::vector< unsigned char > | DecodeBase32 (const char *p, bool *pfInvalid=nullptr) |
| std::string | DecodeBase32 (const std::string &str) |
| std::string | EncodeBase32 (const unsigned char *pch, size_t len) |
| std::string | EncodeBase32 (const std::string &str) |
| void | SplitHostPort (std::string in, int &portOut, std::string &hostOut) |
| std::string | i64tostr (int64_t n) |
| std::string | itostr (int n) |
| int64_t | atoi64 (const char *psz) |
| int64_t | atoi64 (const std::string &str) |
| int | atoi (const std::string &str) |
| bool | ParseInt32 (const std::string &str, int32_t *out) |
| Convert string to signed 32-bit integer with strict parse error feedback. More... | |
| bool | ParseInt64 (const std::string &str, int64_t *out) |
| Convert string to signed 64-bit integer with strict parse error feedback. More... | |
| bool | ParseUInt32 (const std::string &str, uint32_t *out) |
| Convert decimal string to unsigned 32-bit integer with strict parse error feedback. More... | |
| bool | ParseUInt64 (const std::string &str, uint64_t *out) |
| Convert decimal string to unsigned 64-bit integer with strict parse error feedback. More... | |
| bool | ParseDouble (const std::string &str, double *out) |
| Convert string to double with strict parse error feedback. More... | |
| template<typename T > | |
| std::string | HexStr (const T itbegin, const T itend, bool fSpaces=false) |
| template<typename T > | |
| std::string | HexStr (const T &vch, bool fSpaces=false) |
| std::string | FormatParagraph (const std::string &in, size_t width=79, size_t indent=0) |
| Format a paragraph of text to a fixed width, adding spaces for indentation to any added line. More... | |
| template<typename T > | |
| bool | TimingResistantEqual (const T &a, const T &b) |
| Timing-attack-resistant comparison. More... | |
| bool | ParseFixedPoint (const std::string &val, int decimals, int64_t *amount_out) |
| Parse number as fixed point according to JSON number syntax. More... | |
| #define ARRAYLEN | ( | array | ) | (sizeof(array)/sizeof((array)[0])) |
Definition at line 21 of file utilstrencodings.h.
| #define BEGIN | ( | a | ) | ((char*)&(a)) |
Utilities for converting data from/to strings.
Definition at line 17 of file utilstrencodings.h.
| #define END | ( | a | ) | ((char*)&((&(a))[1])) |
Definition at line 18 of file utilstrencodings.h.
| #define UBEGIN | ( | a | ) | ((unsigned char*)&(a)) |
Definition at line 19 of file utilstrencodings.h.
| #define UEND | ( | a | ) | ((unsigned char*)&((&(a))[1])) |
Definition at line 20 of file utilstrencodings.h.
| enum SafeChars |
Used by SanitizeString()
| Enumerator | |
|---|---|
| SAFE_CHARS_DEFAULT | The full set of allowed chars. |
| SAFE_CHARS_UA_COMMENT | BIP-0014 subset. |
| SAFE_CHARS_FILENAME | Chars allowed in filenames. |
Definition at line 24 of file utilstrencodings.h.
| int atoi | ( | const std::string & | str | ) |
Definition at line 613 of file utilstrencodings.cpp.
| int64_t atoi64 | ( | const char * | psz | ) |
| int64_t atoi64 | ( | const std::string & | str | ) |
Definition at line 604 of file utilstrencodings.cpp.
| std::vector<unsigned char> DecodeBase32 | ( | const char * | p, |
| bool * | pfInvalid = nullptr |
||
| ) |
| std::string DecodeBase32 | ( | const std::string & | str | ) |
| std::vector<unsigned char> DecodeBase64 | ( | const char * | p, |
| bool * | pfInvalid = nullptr |
||
| ) |
| std::string DecodeBase64 | ( | const std::string & | str | ) |
| std::string EncodeBase32 | ( | const unsigned char * | pch, |
| size_t | len | ||
| ) |
| std::string EncodeBase32 | ( | const std::string & | str | ) |
| std::string EncodeBase64 | ( | const unsigned char * | pch, |
| size_t | len | ||
| ) |
| std::string EncodeBase64 | ( | const std::string & | str | ) |
| std::string FormatParagraph | ( | const std::string & | in, |
| size_t | width = 79, |
||
| size_t | indent = 0 |
||
| ) |
Format a paragraph of text to a fixed width, adding spaces for indentation to any added line.
Definition at line 544 of file utilstrencodings.cpp.
| signed char HexDigit | ( | char | c | ) |
| std::string HexStr | ( | const T | itbegin, |
| const T | itend, | ||
| bool | fSpaces = false |
||
| ) |
|
inline |
| std::string i64tostr | ( | int64_t | n | ) |
Definition at line 585 of file utilstrencodings.cpp.
| bool IsHex | ( | const std::string & | str | ) |
Definition at line 59 of file utilstrencodings.cpp.
| bool IsHexNumber | ( | const std::string & | str | ) |
Return true if the string is a hex number, optionally prefixed with "0x".
Definition at line 69 of file utilstrencodings.cpp.
| std::string itostr | ( | int | n | ) |
Definition at line 590 of file utilstrencodings.cpp.
| bool ParseDouble | ( | const std::string & | str, |
| double * | out | ||
| ) |
Convert string to double with strict parse error feedback.
Definition at line 530 of file utilstrencodings.cpp.
| bool ParseFixedPoint | ( | const std::string & | val, |
| int | decimals, | ||
| int64_t * | amount_out | ||
| ) |
Parse number as fixed point according to JSON number syntax.
See http://json.org/number.gif
Definition at line 645 of file utilstrencodings.cpp.
| std::vector<unsigned char> ParseHex | ( | const char * | psz | ) |
Definition at line 82 of file utilstrencodings.cpp.
| std::vector<unsigned char> ParseHex | ( | const std::string & | str | ) |
| bool ParseInt32 | ( | const std::string & | str, |
| int32_t * | out | ||
| ) |
Convert string to signed 32-bit integer with strict parse error feedback.
Definition at line 465 of file utilstrencodings.cpp.
| bool ParseInt64 | ( | const std::string & | str, |
| int64_t * | out | ||
| ) |
Convert string to signed 64-bit integer with strict parse error feedback.
Definition at line 481 of file utilstrencodings.cpp.
| bool ParseUInt32 | ( | const std::string & | str, |
| uint32_t * | out | ||
| ) |
Convert decimal string to unsigned 32-bit integer with strict parse error feedback.
Definition at line 496 of file utilstrencodings.cpp.
| bool ParseUInt64 | ( | const std::string & | str, |
| uint64_t * | out | ||
| ) |
Convert decimal string to unsigned 64-bit integer with strict parse error feedback.
Definition at line 513 of file utilstrencodings.cpp.
| std::string SanitizeString | ( | const std::string & | str, |
| int | rule = SAFE_CHARS_DEFAULT |
||
| ) |
Remove unsafe chars.
Safe chars chosen to allow simple messages/URLs/email addresses, but avoid anything even possibly remotely dangerous like & or >
| [in] | str | The string to sanitize |
| [in] | rule | The set of safe chars to choose (default: least restrictive) |
Definition at line 25 of file utilstrencodings.cpp.
| void SplitHostPort | ( | std::string | in, |
| int & | portOut, | ||
| std::string & | hostOut | ||
| ) |
Definition at line 108 of file utilstrencodings.cpp.
| bool TimingResistantEqual | ( | const T & | a, |
| const T & | b | ||
| ) |
Timing-attack-resistant comparison.
Takes time proportional to length of first argument.
Definition at line 137 of file utilstrencodings.h.
1.8.13