lime
Lime is a C++ library implementing Open Whisper System Signal protocol
Public Member Functions | Public Attributes | List of all members
lime::callbackUserData Struct Reference

structure holding user data while waiting for callback from X3DH server response processing More...

Public Member Functions

 callbackUserData (std::weak_ptr< LimeGeneric > thiz, const std::shared_ptr< limeCallback > callback, uint16_t OPkInitialBatchSize=lime::settings::OPk_initialBatchSize)
 created at user create/delete and keys Post. EncryptionPolicy is not used, set it to the default value anyway More...
 
 callbackUserData (std::weak_ptr< LimeGeneric > thiz, const std::shared_ptr< limeCallback > callback, uint16_t OPkServerLowLimit, uint16_t OPkBatchSize)
 created at update: getSelfOPks. EncryptionPolicy is not used, set it to the default value anyway More...
 
 callbackUserData (std::weak_ptr< LimeGeneric > thiz, const std::shared_ptr< limeCallback > callback, const std::shared_ptr< limeRandomSeedCallback > randomSeedCallback, std::shared_ptr< lime::EncryptionContext > encryptionContext)
 created at encrypt(getPeerBundle) More...
 
 callbackUserData (callbackUserData &a)=delete
 do not copy callback data, force passing the pointer around after creation More...
 
callbackUserData operator= (callbackUserData &a)=delete
 do not copy callback data, force passing the pointer around after creation More...
 

Public Attributes

std::weak_ptr< LimeGenericlimeObj
 limeObj is owned by the LimeManager, it shall no be destructed, do not own this with a shared_ptr as Lime obj may own the callbackUserData obj thus creating circular reference More...
 
const std::shared_ptr< limeCallbackcallback
 this is a ptr to a lambda, we may use it several time so we can manage precisely its timelife More...
 
const std::shared_ptr< limeRandomSeedCallbackrandomSeedCallback
 this is a ptr to a lambda, we may use it several time so we can manage precisely its timelife More...
 
std::shared_ptr< lime::EncryptionContextencryptionContext
 Encryption context :AD, plain and cipher text, encryption policy and recipients. More...
 
uint16_t OPkServerLowLimit
 Used when fetching from server self OPk to check if we shall upload more. More...
 
uint16_t OPkBatchSize
 Used when fetching from server self OPk : how many will we upload if needed. More...
 

Detailed Description

structure holding user data while waiting for callback from X3DH server response processing

Constructor & Destructor Documentation

lime::callbackUserData::callbackUserData ( std::weak_ptr< LimeGeneric thiz,
const std::shared_ptr< limeCallback callback,
uint16_t  OPkInitialBatchSize = lime::settings::OPk_initialBatchSize 
)
inline

created at user create/delete and keys Post. EncryptionPolicy is not used, set it to the default value anyway

lime::callbackUserData::callbackUserData ( std::weak_ptr< LimeGeneric thiz,
const std::shared_ptr< limeCallback callback,
uint16_t  OPkServerLowLimit,
uint16_t  OPkBatchSize 
)
inline

created at update: getSelfOPks. EncryptionPolicy is not used, set it to the default value anyway

lime::callbackUserData::callbackUserData ( std::weak_ptr< LimeGeneric thiz,
const std::shared_ptr< limeCallback callback,
const std::shared_ptr< limeRandomSeedCallback randomSeedCallback,
std::shared_ptr< lime::EncryptionContext encryptionContext 
)
inline

created at encrypt(getPeerBundle)

lime::callbackUserData::callbackUserData ( callbackUserData a)
delete

do not copy callback data, force passing the pointer around after creation

Member Function Documentation

callbackUserData lime::callbackUserData::operator= ( callbackUserData a)
delete

do not copy callback data, force passing the pointer around after creation

Member Data Documentation

const std::shared_ptr<limeCallback> lime::callbackUserData::callback

this is a ptr to a lambda, we may use it several time so we can manage precisely its timelife

std::shared_ptr<lime::EncryptionContext> lime::callbackUserData::encryptionContext

Encryption context :AD, plain and cipher text, encryption policy and recipients.

std::weak_ptr<LimeGeneric> lime::callbackUserData::limeObj

limeObj is owned by the LimeManager, it shall no be destructed, do not own this with a shared_ptr as Lime obj may own the callbackUserData obj thus creating circular reference

uint16_t lime::callbackUserData::OPkBatchSize

Used when fetching from server self OPk : how many will we upload if needed.

uint16_t lime::callbackUserData::OPkServerLowLimit

Used when fetching from server self OPk to check if we shall upload more.

const std::shared_ptr<limeRandomSeedCallback> lime::callbackUserData::randomSeedCallback

this is a ptr to a lambda, we may use it several time so we can manage precisely its timelife


The documentation for this struct was generated from the following file: