-compdestroy
-compmempass
-evalorder
--evalorderuncon
-globs
-globstate
-infloops
-internalglobs
-mayaliasunique
-modfilesys
--modobserveruncon
--moduncon
+-moduncon # 22
-mustfreefresh
-mustfreeonly
-namechecks
-noeffect
--noeffectuncon
+-noeffectuncon # 12
-nullderef
--nullpass
+-nullpass # 14
-nullptrarith
--nullret
--nullstate
+-nullret # 2
+-nullstate # 1
-paramuse
--protoparammatch
+-protoparammatch # 7
+ptrnegate
-retalias
-retvalint
-readonlytrans
-statictrans
-temptrans
--unqualifiedtrans
+-unqualifiedtrans # 11
-looploopbreak
-looploopcontinue
-fcnuse
-typeuse
-
-elseifcomplete
-whileempty
* \param ns no. bytes of data (0 uses strlen(data))
* \return (malloc'd) base64 string
*/
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
char* b64encode(const void* data, size_t ns)
/*@*/;
* \param ns no. bytes of binary data
* \return (malloc'd) base64 string
*/
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
char* b64crc(const unsigned char* data, size_t ns)
/*@*/;
/*!
*/
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
char* b64enc(const memchunk*)
/*@*/;
/*!
*/
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
memchunk* b64dec(const char*)
/*@*/;
* \return A pointer to an entropy source or null, if the index was out of
* range.
*/
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const entropySource* entropySourceGet(int n)
/*@*/;
* \param name Name of the requested entropy source.
* \return A pointer to an entropy source or null, if the name wasn't found.
*/
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const entropySource* entropySourceFind(const char* name)
/*@*/;
* can be specified by setting environment variable BEECRYPT_ENTROPY.
* \return A pointer to an entropy source or null, in case an error occured.
*/
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const entropySource* entropySourceDefault(void)
/*@*/;
BEECRYPTAPI
int randomGeneratorCount(void)
/*@*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const randomGenerator* randomGeneratorGet(int index)
/*@*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const randomGenerator* randomGeneratorFind(const char* name)
/*@*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const randomGenerator* randomGeneratorDefault(void)
/*@*/;
#endif
{
const randomGenerator* rng;
+/*@relnull@*/
randomGeneratorParam* param;
#ifdef __cplusplus
BEECRYPTAPI
int hashFunctionCount(void)
/*@*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const hashFunction* hashFunctionGet(int index)
/*@*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const hashFunction* hashFunctionFind(const char* name)
/*@*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const hashFunction* hashFunctionDefault(void)
/*@*/;
#endif
{
const hashFunction* algo;
+/*@relnull@*/
hashFunctionParam* param;
#ifdef __cplusplus
BEECRYPTAPI
int keyedHashFunctionCount(void)
/*@*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const keyedHashFunction* keyedHashFunctionGet(int index)
/*@*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const keyedHashFunction* keyedHashFunctionFind(const char* name)
/*@*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const keyedHashFunction* keyedHashFunctionDefault(void)
/*@*/;
#endif
{
const keyedHashFunction* algo;
+/*@relnull@*/
keyedHashFunctionParam* param;
#ifdef __cplusplus
* \return A pointer to a blockcipher or null, if the index was out of
* range.
*/
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const blockCipher* blockCipherGet(int index)
/*@*/;
* \param name Name of the requested blockcipher.
* \return A pointer to a blockcipher or null, if the name wasn't found.
*/
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const blockCipher* blockCipherFind(const char* name)
/*@*/;
* can be specified by setting environment variable BEECRYPT_CIPHER.
* \return A pointer to a blockcipher or null, in case an error occured.
*/
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
const blockCipher* blockCipherDefault(void)
/*@*/;
/*!\var param
* \brief Pointer to the parameters used by algo.
*/
+/*@relnull@*/
blockCipherParam* param;
/*!\var op
*/
extern "C" {
#endif
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
memchunk* pkcs5Pad (size_t blockbytes, memchunk* tmp)
/*@modifies tmp @*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
memchunk* pkcs5Unpad(size_t blockbytes, memchunk* tmp)
/*@modifies tmp @*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
memchunk* pkcs5PadCopy (size_t blockbytes, const memchunk* src)
/*@*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
memchunk* pkcs5UnpadCopy(size_t blockbytes, const memchunk* src)
/*@*/;
BEECRYPTAPI
memchunk* dhaes_pContextEncrypt(dhaes_pContext* ctxt, mpnumber* ephemeralPublicKey, mpnumber* mac, const memchunk* cleartext, randomGeneratorContext* rng)
/*@modifies ctxt, ephemeralPublicKey, mac @*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
memchunk* dhaes_pContextDecrypt(dhaes_pContext* ctxt, const mpnumber* ephemeralPublicKey, const mpnumber* mac, const memchunk* ciphertext)
/*@modifies ctxt @*/;
typedef struct
{
size_t size;
+/*@relnull@*/
byte* data;
} memchunk;
extern "C" {
#endif
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
memchunk* memchunkAlloc(size_t size)
/*@*/;
BEECRYPTAPI
BEECRYPTAPI
void memchunkFree(memchunk* m)
/*@modifies m @*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
memchunk* memchunkResize(memchunk* m, size_t size)
/*@modifies m @*/;
-BEECRYPTAPI
+BEECRYPTAPI /*@null@*/
memchunk* memchunkClone(const memchunk* m)
/*@*/;
#endif
{
size_t size;
+/*@relnull@*/
mpw* modl; /* (size) words */
+/*@relnull@*/
mpw* mu; /* (size+1) words */
#ifdef __cplusplus
#endif
{
size_t size;
+/*@relnull@*/
mpw* data;
#ifdef __cplusplus
/*
* needs workspace of (size*2) words
*/
-static void mpprndbits(mpbarrett* p, size_t bits, size_t lsbset, const mpnumber* min, const mpnumber* max, randomGeneratorContext* rc, mpw* wksp)
+static void mpprndbits(mpbarrett* p, size_t bits, size_t lsbset, /*@null@*/ const mpnumber* min, /*@null@*/ const mpnumber* max, randomGeneratorContext* rc, mpw* wksp)
/*@modifies p, wksp @*/
{
register size_t size = p->size;
/*@modifies wksp @*/;
BEECRYPTAPI
-int mpprnd_w (mpbarrett* p, randomGeneratorContext* rc, size_t bits, int t, const mpnumber* f, mpw* wksp)
+int mpprnd_w (mpbarrett* p, randomGeneratorContext* rc, size_t bits, int t, /*@null@*/ const mpnumber* f, mpw* wksp)
/*@modifies p, wksp @*/;
BEECRYPTAPI
-int mpprndr_w (mpbarrett* p, randomGeneratorContext* rc, size_t bits, int t, const mpnumber* min, const mpnumber* max, const mpnumber* f, mpw* wksp)
+int mpprndr_w (mpbarrett* p, randomGeneratorContext* rc, size_t bits, int t, /*@null@*/ const mpnumber* min, /*@null@*/ const mpnumber* max, const mpnumber* f, mpw* wksp)
/*@modifies p, wksp @*/;
BEECRYPTAPI
void mpprndsafe_w (mpbarrett* p, randomGeneratorContext* rc, size_t bits, int t, mpw* wksp)
void mpprndcon_w (mpbarrett*, randomGeneratorContext*, size_t, int, const mpnumber*, const mpnumber*, const mpnumber*, mpnumber*, mpw*)
/*@*/;
BEECRYPTAPI
-void mpprndconone_w(mpbarrett* p, randomGeneratorContext* rc, size_t bits, int t, const mpbarrett* q, const mpnumber* f, mpnumber* r, int cofactor, mpw* wksp)
+void mpprndconone_w(mpbarrett* p, randomGeneratorContext* rc, size_t bits, int t, const mpbarrett* q, /*@null@*/ const mpnumber* f, mpnumber* r, int cofactor, mpw* wksp)
/*@modifies p, r, wksp @*/;
#ifdef __cplusplus