Re: [sipcore] Alexey Melnikov's Discuss on draft-ietf-sipcore-sip-push-21: (with DISCUSS and COMMENT)

Ben Campbell <ben@nostrum.com> Wed, 09 January 2019 19:32 UTC

Return-Path: <ben@nostrum.com>
X-Original-To: sipcore@ietfa.amsl.com
Delivered-To: sipcore@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4CDC5130F6D; Wed, 9 Jan 2019 11:32:47 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.355
X-Spam-Level:
X-Spam-Status: No, score=0.355 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, LONGWORDS=2.035, T_SPF_HELO_PERMERROR=0.01, T_SPF_PERMERROR=0.01] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=fail (1024-bit key) reason="fail (message has been altered)" header.d=nostrum.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id aK6OTV7wlmQF; Wed, 9 Jan 2019 11:32:46 -0800 (PST)
Received: from nostrum.com (raven-v6.nostrum.com [IPv6:2001:470:d:1130::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 282F5131053; Wed, 9 Jan 2019 11:32:46 -0800 (PST)
Received: from [10.0.1.45] (cpe-70-122-203-106.tx.res.rr.com [70.122.203.106]) (authenticated bits=0) by nostrum.com (8.15.2/8.15.2) with ESMTPSA id x09JWXJ5056071 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO); Wed, 9 Jan 2019 13:32:35 -0600 (CST) (envelope-from ben@nostrum.com)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=nostrum.com; s=default; t=1547062357; bh=watypc3TFzllWVhc0Xw0ul2YUKIBrY8ZC28MQb4Ebt4=; h=From:Subject:Date:In-Reply-To:Cc:To:References; b=d9Un2eh1vsJZ+yyH1X+7nlVwB9/ssoORTww9g8E7o1649B29C0m95pWcc+7kJFFg6 g6BP9+ZGM9e9eLBJBNgoR+dMTXb3TZS4krTVeM3/uhfstcFH0kfI0YsImsMd2GCLaG swET+9Dv2POsqb9xCkiSyKPlsxvAXgRzMqhugh9I=
X-Authentication-Warning: raven.nostrum.com: Host cpe-70-122-203-106.tx.res.rr.com [70.122.203.106] claimed to be [10.0.1.45]
From: Ben Campbell <ben@nostrum.com>
Message-Id: <BED57560-910E-4C45-A8E2-0EE0FA2570F9@nostrum.com>
Content-Type: multipart/signed; boundary="Apple-Mail=_8E7636D2-DA46-4854-B5D4-EC3666B7166D"; protocol="application/pgp-signature"; micalg="pgp-sha512"
Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\))
Date: Wed, 09 Jan 2019 13:32:33 -0600
In-Reply-To: <1547045912.2691573.1629890752.6D1B0E4A@webmail.messagingengine.com>
Cc: Christer Holmberg <christer.holmberg@ericsson.com>, The IESG <iesg@ietf.org>, sipcore-chairs@ietf.org, draft-ietf-sipcore-sip-push@ietf.org, sipcore@ietf.org, Brian Rosen <br@brianrosen.net>
To: Alexey Melnikov <aamelnikov@fastmail.fm>
References: <154703521377.7454.12348610753191573496.idtracker@ietfa.amsl.com> <HE1PR07MB3161DEF01265C95C7FD9707A938B0@HE1PR07MB3161.eurprd07.prod.outlook.com> <1547045912.2691573.1629890752.6D1B0E4A@webmail.messagingengine.com>
X-Mailer: Apple Mail (2.3445.102.3)
Archived-At: <https://mailarchive.ietf.org/arch/msg/sipcore/bo9gW_trR4QHy4fBXQpmIXfWaP4>
Subject: Re: [sipcore] Alexey Melnikov's Discuss on draft-ietf-sipcore-sip-push-21: (with DISCUSS and COMMENT)
X-BeenThere: sipcore@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: SIP Core Working Group <sipcore.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sipcore>, <mailto:sipcore-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/sipcore/>
List-Post: <mailto:sipcore@ietf.org>
List-Help: <mailto:sipcore-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sipcore>, <mailto:sipcore-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 09 Jan 2019 19:32:47 -0000


> On Jan 9, 2019, at 8:58 AM, Alexey Melnikov <aamelnikov@fastmail.fm> wrote:
> 
> Hi Christer,
> I omitted the parts where we are in agreement.
> 
> On Wed, Jan 9, 2019, at 2:09 PM, Christer Holmberg wrote:
>> Hi Alexey,
>> 
>> Thank You for the review! Please see inline.
>> 
>> ----------------------------------------------------------------------
>> DISCUSS:
>> ----------------------------------------------------------------------
> 
> [snip]
> 
>>> 10.  pn-provider, pn-param and pn-prid URI Parameters for Apple Push
>>>    Notification service
>>> 
>>>  The value of the pn-param URI parameter is a string that is composed
>>>  by two values, separated by a period (.): Team ID and Topic.  The
>>>  Team ID is provided by Apple and is unique to a development team.
>>> 
>>> I assume it doesn't contain any periods?
>>> 
>>>  The Topic consists of the Bundle ID, which uniquelly identifies an
>>>  appliciation, and a service value that identifies a service
>>>  associated with the application, separated by a period (.).  For VoIP
>>>  applications the service value is "voip".
>>> 
>>> How many periods are used in the value? If your example below is correct, can you clarify that Bundle ID itself contains periods?
>>> 
>>>  Example: pn-param = DEF123GHIJ.com.yourcompany.yourexampleapp.voip
>> 
>> The Bundle ID part of the Topic typically contains periods. The Team ID,
>> and the service part of the Topic, do not contain periods.
>> 
>> Note that the Topic is actually created by Apple, and I don't even know
>> whether the Apple PNS needs to separate the Bundle ID part from the
>> service part. And, as far as I know, we don't need to separate the parts
>> in our proxy implementation. We do separate the Team ID from the Topic,
>> but we know the first period is the separator (as the Team Id does not
>> contain periods).
> 
> I think you either need to clarify that the Bundle ID can contain periods (so that if somebody wants to parse a particular pn-param value, they know to search for the last "." (*)) or you should avoid talking about internal structure altogether. Your text is sort of in between.
> 
> (*) - it might not be sensible to need to parse internal structure of the value. But I can't decide one way or another without investigating Apple API for this, which I haven't done.
> 

Given that we don’t have change control over the parameters for Apple (or any other proprietary PNS), I’d be very careful about expectations to parse internal structure. These structures could change at any time.


>> ----------------------------------------------------------------------
>> COMMENT:
>> ----------------------------------------------------------------------
>> 
>>> I am agreeing with Adam's DISCUSS.
>>> 
>>> In 8.2:
>>> 
>>>    pns-list        = pns *(COMMA pns)
>>> 
>>> My understanding is that COMMA (defined in RFC 3261) allows folding whitespace, in particular CRLF. Do you really want this in values? It is Ok if you do, I just wanted to double check.
>> 
>> In the SIP syntax we are less strict than in some other protocols when
>> it comes to folding whitespaces etc. The syntax above is very common in
>> SIP.
> 
> I was just surprised to see this inside a quoted strings. In email quoted strings typically either disallow spaces inside quoted strings or only allow SP, but not CRLF. But anyway, no change is needed if this was intended.
> 
> Best Regards,
> Alexey
>