You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
320 lines
11 KiB
320 lines
11 KiB
#! /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) 2009 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 <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 |
|
--- ./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<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]) |
|
{ |
|
@@ -1411,8 +1411,8 @@ |
|
return DKIM_POLICY_DNS_PERM_FAILURE; |
|
} |
|
|
|
- unsigned pos = sDomain.find('.'); |
|
- if (pos == -1 || sDomain.find('.', pos+1) == -1) |
|
+ string::size_type pos = sDomain.find('.'); |
|
+ if (pos == string::npos || sDomain.find('.', pos+1) == string::npos) |
|
{ |
|
// SSP not found but the domain exists, it's non-suspicious |
|
iSSP = DKIM_SSP_UNKNOWN; |
|
diff -ru libdkim-1.0.19.orig/src/libdkimtest.cpp libdkim-1.0.19/src/libdkimtest.cpp |
|
--- ./libdkimtest.cpp 2008-05-12 20:08:54.000000000 +1000 |
|
+++ ./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];
|
|
|