SSS - S3 Toolkit 0.9.6
S3 client library and applications
|
Data Structures | |
struct | sss::URL |
URL type. More... | |
struct | sss::Time |
Time data type, used to generate pre-signed URLs. More... | |
Functions | |
URL | sss::ParseURL (const std::string &s) |
std::string | sss::UrlEncode (const std::string &s) |
std::string | sss::UrlEncode (const Map &p) |
Time | sss::GetDates () |
Bytes | sss::Hash (const Bytes &key, const Bytes &msg) |
HMAC encoding byte arrays --> byte array. | |
std::string | sss::Hex (const Bytes &b) |
Byte to hex string conversion. | |
Bytes | sss::CreateSignatureKey (const std::string &key, const std::string &dateStamp, const std::string ®ion, const std::string &service) |
Parameters | sss::ParseParams (std::string s) |
Headers | sss::ParseHeaders (const std::string &s) |
std::string | sss::GetValue (const std::map< std::string, std::string > &map, const std::string &rx, bool caseSensitive=true) |
Map key to value using regular expression. | |
size_t | sss::ReadFile (void *ptr, size_t size, size_t nmemb, void *userdata) |
Read from file. | |
size_t | sss::WriteFile (char *ptr, size_t size, size_t nmemb, void *userdata) |
Write to file. | |
size_t | sss::WriteFileUnbuffered (char *ptr, size_t size, size_t nmemb, void *userdata) |
Write to file using unbuffered I/O. | |
Bytes sss::CreateSignatureKey | ( | const std::string & | key, |
const std::string & | dateStamp, | ||
const std::string & | region, | ||
const std::string & | service | ||
) |
Create signature key
key | this is the secret part of the {key,secret} credentials |
dateStamp | date in the format "%Y%m%d" |
region | region e.g. us-east-1 |
service | service e.g. s3 |
"aws4_request"
Time sss::GetDates | ( | ) |
Return current time and date in the two formats required to sign AWS S3 requests
Return time in the two formats required to sign AWS requests:
HMAC encoding byte arrays --> byte array.
Create HMAC encoded byte array
key | |
msg | message to encode |
string sss::Hex | ( | const Bytes & | b | ) |
Byte to hex string conversion.
Translate bytes to hexadecimal encoded ASCII string
b | byte array |
Headers sss::ParseHeaders | ( | const std::string & | s | ) |
From "key1:value1
;key2:value2 to {key
, value} dictionary See https://www.w3.org/Protocols/rfc2616/rfc2616.html
Parameters sss::ParseParams | ( | std::string | s | ) |
From "key1=value1;key2=value2;key3=;key4"
to {key
, value} dictionary
s | text |
{name
,value} dictionary URL sss::ParseURL | ( | const std::string & | s | ) |
string sss::UrlEncode | ( | const Map & | p | ) |
URL-encode url from {key
,value} pairs
p | {key ,value} map |
References sss::UrlEncode().
string sss::UrlEncode | ( | const std::string & | s | ) |
URL-encode url
s | text |