[Pkg-owncloud-commits] [php-sabredav] 35/42: IMipHandler did not strip mailto: frome email addresses.
David Prévot
taffit at moszumanska.debian.org
Fri Nov 28 22:47:51 UTC 2014
This is an automated email from the git hooks/post-receive script.
taffit pushed a commit to branch master
in repository php-sabredav.
commit 60fcd59c04bf3d14bd9e9741342fc0d8a629aec6
Author: Evert Pot <me at evertpot.com>
Date: Thu Nov 20 11:49:28 2014 -0500
IMipHandler did not strip mailto: frome email addresses.
Also, the unittest was wrong ;)
Fixes #561
---
ChangeLog.md | 6 ++++
lib/CalDAV/Schedule/IMipPlugin.php | 11 ++++--
lib/DAV/Version.php | 2 +-
tests/Sabre/CalDAV/Schedule/IMipPluginTest.php | 46 +++++++++++++++++++++-----
4 files changed, 54 insertions(+), 11 deletions(-)
diff --git a/ChangeLog.md b/ChangeLog.md
index 20c3837..4e05576 100644
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,6 +1,12 @@
ChangeLog
=========
+2.1.1 (2014-??-??)
+------------------
+
+* #561: IMip Plugin didn't strip mailto: from email addresses.
+
+
2.1.0 (2014-11-19)
------------------
diff --git a/lib/CalDAV/Schedule/IMipPlugin.php b/lib/CalDAV/Schedule/IMipPlugin.php
index 5b0f9de..0e2132d 100644
--- a/lib/CalDAV/Schedule/IMipPlugin.php
+++ b/lib/CalDAV/Schedule/IMipPlugin.php
@@ -107,11 +107,18 @@ class IMipPlugin extends DAV\ServerPlugin {
$summary = $iTipMessage->message->VEVENT->SUMMARY;
- $sender = $iTipMessage->sender;
+ if (parse_url($iTipMessage->sender, PHP_URL_SCHEME)!=='mailto')
+ return;
+
+ if (parse_url($iTipMessage->recipient, PHP_URL_SCHEME)!=='mailto')
+ return;
+
+ $sender = substr($iTipMessage->sender,7);
+ $recipient = substr($iTipMessage->recipient,7);
+
if ($iTipMessage->senderName) {
$sender = $iTipMessage->senderName . ' <' . $sender . '>';
}
- $recipient = $iTipMessage->recipient;
if ($iTipMessage->recipientName) {
$recipient = $iTipMessage->recipientName . ' <' . $recipient . '>';
}
diff --git a/lib/DAV/Version.php b/lib/DAV/Version.php
index 918d505..fbb5cac 100644
--- a/lib/DAV/Version.php
+++ b/lib/DAV/Version.php
@@ -14,6 +14,6 @@ class Version {
/**
* Full version number
*/
- const VERSION = '2.1.0';
+ const VERSION = '2.1.1';
}
diff --git a/tests/Sabre/CalDAV/Schedule/IMipPluginTest.php b/tests/Sabre/CalDAV/Schedule/IMipPluginTest.php
index f1062fd..e2ab17b 100644
--- a/tests/Sabre/CalDAV/Schedule/IMipPluginTest.php
+++ b/tests/Sabre/CalDAV/Schedule/IMipPluginTest.php
@@ -11,9 +11,9 @@ class IMipPluginTest extends \PHPUnit_Framework_TestCase {
function testDeliverReply() {
$message = new Message();
- $message->sender = 'sender at example.org';
+ $message->sender = 'mailto:sender at example.org';
$message->senderName = 'Sender';
- $message->recipient = 'recipient at example.org';
+ $message->recipient = 'mailto:recipient at example.org';
$message->recipientName = 'Recipient';
$message->method = 'REPLY';
@@ -50,12 +50,42 @@ ICS;
}
+ function testDeliverReplyNoMailto() {
+
+ $message = new Message();
+ $message->sender = 'mailto:sender at example.org';
+ $message->senderName = 'Sender';
+ $message->recipient = 'http://example.org/recipient';
+ $message->recipientName = 'Recipient';
+ $message->method = 'REPLY';
+
+ $ics = <<<ICS
+BEGIN:VCALENDAR\r
+METHOD:REPLY\r
+BEGIN:VEVENT\r
+SUMMARY:Birthday party\r
+END:VEVENT\r
+END:VCALENDAR\r
+
+ICS;
+
+
+ $message->message = Reader::read($ics);
+
+ $result = $this->schedule($message);
+
+ $expected = [];
+
+ $this->assertEquals($expected, $result);
+
+ }
+
function testDeliverRequest() {
$message = new Message();
- $message->sender = 'sender at example.org';
+ $message->sender = 'mailto:sender at example.org';
$message->senderName = 'Sender';
- $message->recipient = 'recipient at example.org';
+ $message->recipient = 'mailto:recipient at example.org';
$message->recipientName = 'Recipient';
$message->method = 'REQUEST';
@@ -95,9 +125,9 @@ ICS;
function testDeliverCancel() {
$message = new Message();
- $message->sender = 'sender at example.org';
+ $message->sender = 'mailto:sender at example.org';
$message->senderName = 'Sender';
- $message->recipient = 'recipient at example.org';
+ $message->recipient = 'mailto:recipient at example.org';
$message->recipientName = 'Recipient';
$message->method = 'CANCEL';
@@ -150,9 +180,9 @@ ICS;
function testDeliverInsignificantRequest() {
$message = new Message();
- $message->sender = 'sender at example.org';
+ $message->sender = 'mailto:sender at example.org';
$message->senderName = 'Sender';
- $message->recipient = 'recipient at example.org';
+ $message->recipient = 'mailto:recipient at example.org';
$message->recipientName = 'Recipient';
$message->method = 'REQUEST';
$message->significantChange = false;
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-owncloud/php-sabredav.git
More information about the Pkg-owncloud-commits
mailing list