summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'mail-filter/libdkim/files/patches/fix_warnings.patch')
-rw-r--r--mail-filter/libdkim/files/patches/fix_warnings.patch293
1 files changed, 293 insertions, 0 deletions
diff --git a/mail-filter/libdkim/files/patches/fix_warnings.patch b/mail-filter/libdkim/files/patches/fix_warnings.patch
new file mode 100644
index 000000000000..56ed6ffc8a1d
--- /dev/null
+++ b/mail-filter/libdkim/files/patches/fix_warnings.patch
@@ -0,0 +1,293 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 02_fix_warnings.dpatch by Russell Coker <russell@coker.com.au>
+##
+## DP: Get rid of warnings through the use of const and more correct types
+
+@DPATCH@
+
+diff -ru libdkim-1.0.19.orig/src/dkim.cpp libdkim-1.0.19/src/dkim.cpp
+--- libdkim-1.0.19.orig/src/dkim.cpp 2008-05-12 20:07:32.000000000 +1000
++++ libdkim-1.0.19/src/dkim.cpp 2009-04-15 19:38:08.000000000 +1000
+@@ -172,7 +172,7 @@
+ }
+
+
+-int DKIM_CALL DKIMVerifyProcess( DKIMContext* pVerifyContext, char* szBuffer, int nBufLength )
++int DKIM_CALL DKIMVerifyProcess( DKIMContext* pVerifyContext, const char* const szBuffer, int nBufLength )
+ {
+ CDKIMVerify* pVerify = (CDKIMVerify*)ValidateContext( pVerifyContext, false );
+
+@@ -226,13 +226,13 @@
+ }
+
+
+-char* DKIM_CALL DKIMVersion()
++const char* DKIM_CALL DKIMVersion()
+ {
+ return VERSION_STRING;
+ }
+
+
+-static char* DKIMErrorStrings[-1-DKIM_MAX_ERROR] = {
++static const char* DKIMErrorStrings[-1-DKIM_MAX_ERROR] = {
+ "DKIM_FAIL",
+ "DKIM_BAD_SYNTAX",
+ "DKIM_SIGNATURE_BAD",
+@@ -254,7 +254,7 @@
+ };
+
+
+-char* DKIM_CALL DKIMGetErrorString( int ErrorCode )
++const char* DKIM_CALL DKIMGetErrorString( int ErrorCode )
+ {
+ if (ErrorCode >= 0 || ErrorCode <= DKIM_MAX_ERROR)
+ return "Unknown";
+diff -ru libdkim-1.0.19.orig/src/dkim.h libdkim-1.0.19/src/dkim.h
+--- libdkim-1.0.19.orig/src/dkim.h 2009-04-15 19:37:48.000000000 +1000
++++ libdkim-1.0.19/src/dkim.h 2009-04-15 19:38:08.000000000 +1000
+@@ -155,14 +155,14 @@
+ void DKIM_CALL DKIMSignFree( DKIMContext* pSignContext );
+
+ int DKIM_CALL DKIMVerifyInit( DKIMContext* pVerifyContext, DKIMVerifyOptions* pOptions );
+-int DKIM_CALL DKIMVerifyProcess( DKIMContext* pVerifyContext, char* szBuffer, int nBufLength );
++int DKIM_CALL DKIMVerifyProcess( DKIMContext* pVerifyContext, const char* szBuffer, int nBufLength );
+ int DKIM_CALL DKIMVerifyResults( DKIMContext* pVerifyContext );
+ int DKIM_CALL DKIMVerifyGetDetails( DKIMContext* pVerifyContext, int* nSigCount, DKIMVerifyDetails** pDetails, char* szPractices );
+ void DKIM_CALL DKIMVerifyFree( DKIMContext* pVerifyContext );
+
+-char *DKIM_CALL DKIMVersion();
++const char *DKIM_CALL DKIMVersion();
+
+-char *DKIM_CALL DKIMGetErrorString( int ErrorCode );
++const char *DKIM_CALL DKIMGetErrorString( int ErrorCode );
+
+ #ifdef __cplusplus
+ }
+diff -ru libdkim-1.0.19.orig/src/dkimbase.cpp libdkim-1.0.19/src/dkimbase.cpp
+--- libdkim-1.0.19.orig/src/dkimbase.cpp 2008-05-12 20:07:36.000000000 +1000
++++ libdkim-1.0.19/src/dkimbase.cpp 2009-04-15 19:49:32.000000000 +1000
+@@ -118,10 +118,10 @@
+ // Process - split buffers into lines without any CRs or LFs at the end.
+ //
+ ////////////////////////////////////////////////////////////////////////////////
+-int CDKIMBase::Process( char* szBuffer, int nBufLength, bool bEOF )
++int CDKIMBase::Process( const char* szBuffer, int nBufLength, bool bEOF )
+ {
+- char* p = szBuffer;
+- char* e = szBuffer + nBufLength;
++ const char* p = szBuffer;
++ const char* e = szBuffer + nBufLength;
+
+ while( p < e )
+ {
+@@ -208,7 +208,8 @@
+ {
+ m_InHeaders = false;
+ ProcessHeaders();
+- ProcessBody("", 0, true);
++ /* type conversion should be safe as length is zero */
++ ProcessBody((char *)"", 0, true);
+ }
+
+ return DKIM_SUCCESS;
+@@ -338,9 +339,9 @@
+
+ CompressSWSP(sTemp);
+
+- unsigned cpos = sTemp.find(':');
++ string::size_type cpos = sTemp.find(':');
+
+- if (cpos == -1)
++ if (cpos == string::npos)
+ {
+ // no colon?!
+ }
+diff -ru libdkim-1.0.19.orig/src/dkimbase.h libdkim-1.0.19/src/dkimbase.h
+--- libdkim-1.0.19.orig/src/dkimbase.h 2008-05-12 20:07:24.000000000 +1000
++++ libdkim-1.0.19/src/dkimbase.h 2009-04-15 19:49:32.000000000 +1000
+@@ -41,7 +41,7 @@
+
+ int Init(void);
+
+- int Process( char* szBuffer, int nBufLength, bool bEOF );
++ int Process( const char* szBuffer, int nBufLength, bool bEOF );
+ int ProcessFinal(void);
+
+ int Alloc( char*& szBuffer, int nRequiredSize );
+diff -ru libdkim-1.0.19.orig/src/dkimsign.cpp libdkim-1.0.19/src/dkimsign.cpp
+--- libdkim-1.0.19.orig/src/dkimsign.cpp 2008-05-12 20:07:46.000000000 +1000
++++ libdkim-1.0.19/src/dkimsign.cpp 2009-04-15 19:49:32.000000000 +1000
+@@ -144,7 +144,7 @@
+
+ fwrite( szBuffer, 1, nBufLength, fpdebug );
+
+- /** END DEBUG CODE **/
++ ** END DEBUG CODE **/
+
+ if( bAllmanOnly )
+ {
+@@ -555,7 +555,7 @@
+ // if bFold, fold at cbrk char
+ //
+ ////////////////////////////////////////////////////////////////////////////////
+-void CDKIMSign::AddTagToSig( char* Tag, const string &sValue, char cbrk, bool bFold )
++void CDKIMSign::AddTagToSig( const char* const Tag, const string &sValue, char cbrk, bool bFold )
+ {
+ int nTagLen = strlen(Tag);
+
+@@ -583,10 +583,10 @@
+ // AddTagToSig - add tag and numeric value to signature folding if necessary
+ //
+ ////////////////////////////////////////////////////////////////////////////////
+-void CDKIMSign::AddTagToSig( char* Tag, unsigned long nValue )
++void CDKIMSign::AddTagToSig( const char* const Tag, unsigned long nValue )
+ {
+ char szValue[64];
+- sprintf( szValue, "%u", nValue );
++ sprintf( szValue, "%lu", nValue );
+ AddTagToSig( Tag, szValue, 0, false );
+ }
+
+@@ -686,7 +686,7 @@
+ // GetSig - compute hash and return signature header in szSignature
+ //
+ ////////////////////////////////////////////////////////////////////////////////
+-int CDKIMSign::GetSig( char* szPrivKey, char* szSignature, int nSigLength )
++int CDKIMSign::GetSig( char* szPrivKey, char* szSignature, unsigned nSigLength )
+ {
+ if( szPrivKey == NULL )
+ {
+@@ -794,7 +794,6 @@
+ int size;
+ int len;
+ char* buf;
+- int pos = 0;
+
+ // construct the DKIM-Signature: header and add to hash
+ InitSig();
+@@ -879,7 +878,7 @@
+ }
+ BIO_set_flags(b64, BIO_FLAGS_BASE64_NO_NL);
+ BIO_push(b64, bio);
+- if (BIO_write(b64, Hash, nHashLen) < nHashLen)
++ if (BIO_write(b64, Hash, nHashLen) < (int)nHashLen)
+ {
+ BIO_free_all(b64);
+ return DKIM_OUT_OF_MEMORY;
+@@ -993,7 +992,7 @@
+ }
+ BIO_set_flags(b64, BIO_FLAGS_BASE64_NO_NL);
+ BIO_push(b64, bio);
+- if (BIO_write(b64, sig, siglen) < siglen)
++ if (BIO_write(b64, sig, siglen) < (int)siglen)
+ {
+ OPENSSL_free(sig);
+ BIO_free_all(b64);
+diff -ru libdkim-1.0.19.orig/src/dkimsign.h libdkim-1.0.19/src/dkimsign.h
+--- libdkim-1.0.19.orig/src/dkimsign.h 2008-05-12 20:07:58.000000000 +1000
++++ libdkim-1.0.19/src/dkimsign.h 2009-04-15 19:49:32.000000000 +1000
+@@ -32,7 +32,7 @@
+
+ int Init( DKIMSignOptions* pOptions );
+
+- int GetSig( char* szPrivKey, char* szSignature, int nSigLength );
++ int GetSig( char* szPrivKey, char* szSignature, unsigned nSigLength );
+ int GetSig2( char* szPrivKey, char** pszSignature );
+
+ virtual int ProcessHeaders(void);
+@@ -50,8 +50,8 @@
+ bool ParseFromAddress( void );
+
+ void InitSig(void);
+- void AddTagToSig( char* Tag, const string &sValue, char cbrk, bool bFold );
+- void AddTagToSig( char* Tag, unsigned long nValue );
++ void AddTagToSig( const char* const Tag, const string &sValue, char cbrk, bool bFold );
++ void AddTagToSig( const char* const Tag, unsigned long nValue );
+ void AddInterTagSpace( int nSizeOfNextTag );
+ void AddFoldedValueToSig( const string &sValue, char cbrk );
+
+diff -ru libdkim-1.0.19.orig/src/dkimverify.cpp libdkim-1.0.19/src/dkimverify.cpp
+--- libdkim-1.0.19.orig/src/dkimverify.cpp 2009-04-15 19:37:48.000000000 +1000
++++ libdkim-1.0.19/src/dkimverify.cpp 2009-04-15 19:49:32.000000000 +1000
+@@ -440,7 +440,7 @@
+ {
+ ProcessFinal();
+
+- int SuccessCount=0;
++ unsigned int SuccessCount=0;
+ int TestingFailures=0;
+ int RealFailures=0;
+
+@@ -646,7 +646,7 @@
+ /** END DEBUG CODE **/
+ #endif
+
+- if (IsBody && BodyLength != -1)
++ if (IsBody && BodyLength != (unsigned)-1)
+ {
+ VerifiedBodyCount += nBufLength;
+ if (VerifiedBodyCount > BodyLength)
+@@ -1019,7 +1019,7 @@
+ // body count
+ if (values[8] == NULL || !m_HonorBodyLengthTag)
+ {
+- sig.BodyLength = -1;
++ sig.BodyLength = (unsigned)-1;
+ }
+ else
+ {
+@@ -1057,17 +1057,17 @@
+ // expiration time
+ if (values[11] == NULL)
+ {
+- sig.ExpireTime = -1;
++ sig.ExpireTime = (unsigned)-1;
+ }
+ else
+ {
+ if (!ParseUnsigned(values[11], &sig.ExpireTime))
+ return DKIM_BAD_SYNTAX;
+
+- if (sig.ExpireTime != -1)
++ if (sig.ExpireTime != (unsigned)-1)
+ {
+ // the value of x= MUST be greater than the value of t= if both are present
+- if (SignedTime != -1 && sig.ExpireTime <= SignedTime)
++ if (SignedTime != (unsigned)-1 && sig.ExpireTime <= SignedTime)
+ return DKIM_BAD_SYNTAX;
+
+ // todo: if possible, use the received date/time instead of the current time
+@@ -1169,7 +1169,7 @@
+ }
+
+
+-SelectorInfo::SelectorInfo(const string &sSelector, const string &sDomain) : Selector(sSelector), Domain(sDomain)
++SelectorInfo::SelectorInfo(const string &sSelector, const string &sDomain) : Domain(sDomain), Selector(sSelector)
+ {
+ AllowSHA1 = true;
+ AllowSHA256 = true;
+@@ -1207,7 +1207,7 @@
+ return DKIM_SELECTOR_INVALID; // todo: maybe create a new error code for unsupported selector version
+
+ // make sure v= is the first tag in the response // todo: maybe don't enforce this, it seems unnecessary
+- for (int j=1; j<sizeof(values)/sizeof(values[0]); j++)
++ for (unsigned j=1; j<sizeof(values)/sizeof(values[0]); j++)
+ {
+ if (values[j] != NULL && values[j] < values[0])
+ {
+diff -ru libdkim-1.0.19.orig/src/libdkimtest.cpp libdkim-1.0.19/src/libdkimtest.cpp
+--- libdkim-1.0.19.orig/src/libdkimtest.cpp 2008-05-12 20:08:54.000000000 +1000
++++ libdkim-1.0.19/src/libdkimtest.cpp 2009-04-15 19:38:08.000000000 +1000
+@@ -60,9 +60,9 @@
+ int main(int argc, char* argv[])
+ {
+ int n;
+- char* PrivKeyFile = "test.pem";
+- char* MsgFile = "test.msg";
+- char* OutFile = "signed.msg";
++ const char* PrivKeyFile = "test.pem";
++ const char* MsgFile = "test.msg";
++ const char* OutFile = "signed.msg";
+ int nPrivKeyLen;
+ char PrivKey[2048];
+ char Buffer[1024];