#! /bin/sh /usr/share/dpatch/dpatch-run # --- SDE-COPYRIGHT-NOTE-BEGIN --- # This copyright note is auto-generated by ./scripts/Create-CopyPatch. # # Filename: package/.../libdkim/fix_warnings.patch # Copyright (C) 2013 The OpenSDE Project # # More information can be found in the files COPYING and README. # # This patch file is dual-licensed. It is available under the license the # patched project is licensed under, as long as it is an OpenSource license # as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms # of the GNU General Public License as published by the Free Software # Foundation; either version 2 of the License, or (at your option) any later # version. # --- SDE-COPYRIGHT-NOTE-END --- ## 02_fix_warnings.dpatch by Russell Coker ## ## 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 --- ./dkim.cpp 2008-05-12 20:07:32.000000000 +1000 +++ ./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 --- ./dkim.h 2009-04-15 19:37:48.000000000 +1000 +++ ./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 --- ./dkimbase.cpp 2008-05-12 20:07:36.000000000 +1000 +++ ./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 --- ./dkimbase.h 2008-05-12 20:07:24.000000000 +1000 +++ ./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 --- ./dkimsign.cpp 2008-05-12 20:07:46.000000000 +1000 +++ ./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 --- ./dkimsign.h 2008-05-12 20:07:58.000000000 +1000 +++ ./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 --- ./dkimverify.cpp 2009-04-15 19:37:48.000000000 +1000 +++ ./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