Shadowrun: Awakened 29 September 2011 - Build 871
Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
cat::CookieJar Class Reference

#include <CookieJar.hpp>

List of all members.

Public Member Functions

u32 Generate (u32 ip, u16 port)
u32 Generate (const void *address_info, int bytes)
void Initialize (FortunaOutput *csprng)
bool Verify (const void *address_info, int bytes, u32 cookie)
bool Verify (u32 ip, u16 port, u32 cookie)

Private Member Functions

u32 GetEpoch ()
u32 Hash (u32 ip, u16 port, u32 epoch)
u32 Hash (const void *address_info, int bytes, u32 epoch)
u32 ReconstructEpoch (u32 cookie)
u32 Salsa6 (u32 *x)

Private Attributes

u32 key [16]

Static Private Attributes

static const int BIN_COUNT = 16
static const int BIN_MASK = BIN_COUNT - 1
static const int BIN_TIME = EXPIRE_TIME / BIN_COUNT
static const int EXPIRE_TIME = 4000

Detailed Description

Definition at line 37 of file CookieJar.hpp.


Member Function Documentation

u32 cat::CookieJar::Generate ( u32  ip,
u16  port 
)
u32 cat::CookieJar::Generate ( const void *  address_info,
int  bytes 
)
u32 cat::CookieJar::GetEpoch ( ) [private]
u32 cat::CookieJar::Hash ( u32  ip,
u16  port,
u32  epoch 
) [private]
u32 cat::CookieJar::Hash ( const void *  address_info,
int  bytes,
u32  epoch 
) [private]
void cat::CookieJar::Initialize ( FortunaOutput csprng)
u32 cat::CookieJar::ReconstructEpoch ( u32  cookie) [private]
u32 cat::CookieJar::Salsa6 ( u32 x) [private]
bool cat::CookieJar::Verify ( u32  ip,
u16  port,
u32  cookie 
)
bool cat::CookieJar::Verify ( const void *  address_info,
int  bytes,
u32  cookie 
)

Member Data Documentation

const int cat::CookieJar::BIN_COUNT = 16 [static, private]

Definition at line 40 of file CookieJar.hpp.

const int cat::CookieJar::BIN_MASK = BIN_COUNT - 1 [static, private]

Definition at line 42 of file CookieJar.hpp.

const int cat::CookieJar::BIN_TIME = EXPIRE_TIME / BIN_COUNT [static, private]

Definition at line 41 of file CookieJar.hpp.

const int cat::CookieJar::EXPIRE_TIME = 4000 [static, private]

Definition at line 39 of file CookieJar.hpp.

u32 cat::CookieJar::key[16] [private]

Definition at line 44 of file CookieJar.hpp.


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

Copyright © 2007-2010 by The Shadowrun: Awakened Team. This work is licensed under the GNU Lesser General Public License 3.

GNU Lesser General Public License 3 Sourceforge.net