From: <ral...@us...> - 2013-01-30 10:18:02
|
Author: ralfbecker Date: Wed Jan 30 11:17:55 2013 New Revision: 41498 URL: http://svn.stylite.de/viewvc/egroupware?rev=41498&view=rev Log: option to fold dkim signature, which is off by default as recommend for http and sign Authorization header - if given - as required by current iSchedule spec Modified: trunk/phpgwapi/inc/class.ischedule_client.inc.php Modified: trunk/phpgwapi/inc/class.ischedule_client.inc.php URL: http://svn.stylite.de/viewvc/egroupware/trunk/phpgwapi/inc/class.ischedule_client.inc.php?rev=41498&r1=41497&r2=41498&view=diff ============================================================================== --- trunk/phpgwapi/inc/class.ischedule_client.inc.php (original) +++ trunk/phpgwapi/inc/class.ischedule_client.inc.php Wed Jan 30 11:17:55 2013 @@ -35,7 +35,7 @@ /** * Headers in DKIM signature (DKIM-Signature is always a required header!) */ - const DKIM_HEADERS = 'iSchedule-Version:Content-Type:Originator:Recipient:User-Agent:iSchedule-Message-ID'; + const DKIM_HEADERS = 'iSchedule-Version:Content-Type:Originator:Recipient:User-Agent:iSchedule-Message-ID:Authorization'; /** * URL to use to contact iSchedule receiver @@ -369,9 +369,10 @@ * @param string $selector='calendar' * @param string $sign_headers='iSchedule-Version:Content-Type:Originator:Recipient' * @param int $expires seconds the signature is valid, default 300 + * @param boolean $fold=false true: return folded signature, false: return a single line * @return string DKIM-Signature: ... */ - public function dkim_sign(array $headers, $body, $selector='calendar',$sign_headers=self::DKIM_HEADERS,$expires=300) + public function dkim_sign(array $headers, $body, $selector='calendar',$sign_headers=self::DKIM_HEADERS,$expires=300,$fold=false) { $header_values = $header_names = array(); foreach(explode(':', $sign_headers) as $header) @@ -402,7 +403,7 @@ "b="); // The signature data (Empty because we will calculate it later)); // as we do http, no need to fold dkim, in fact recommendation is not to - $dkim = str_replace(array(";\r\n\t", "\r\n\t"), array('; ', ''), $dkim); + if (!$fold) $dkim = str_replace(array(";\r\n\t", "\r\n\t"), array('; ', ''), $dkim); return $dkim; } |