Subject: [AAA-WG]: Base Protocol

From: [email-masked]
Date: Thu, 22 Mar 2001 16:32:46 -0600

Hi,

I was going through Diameter drafts and I came across some inconsistencies
in their description.

-- AAASetMessageResultCode : In description, functionality mentioned is
totally inconsistency with its name and what it supposed to do. According to
my understanding it will set resultcode in message. But I am not sure
whether it will create Result - Code AVP or not.

-- AAAConvertAVPToString : I am not clear whether this function will convert
only data part of AVP into printable format or whole AVP ( means code,
length, data etc ). 

-- AAAJoinAVPLists : This function takes two avp's and join their *lists*.
So, if we join two avplists in the middle, is it necessary to re-assign head
and tail newly generated list ?  What will happen to that remaining list
that is handing and not a part of newly generated list ? My feeling is, it
is better to pass that two lists that are going to be joined. So, we can
either free their memory or reassign their head and tail and make them
proper lists.

-- In the section 4.3 of base protocol draft ( page 15 ), for OctectString
it is mentioned that 

"Unlessotherwise noted, the AVP Length field MUST be set to at least 9
         (13 if the 'V' bit is enabled). "

My question why minimum length is 9 ( or 13 ) and not 8 ( or 12 ). Minimum
length should be 8 as data length can be 0 or more octect. 

regards,

Yogesh Solanki

---

From: David Frascone <[email-masked]>
Date: Sat, 24 Mar 2001 13:00:13 -0600

Hmmm, you titled the subject "Base Protocol", but this seems like an API
question, so I'm going to re-title the subject.

> whether it will create Result - Code AVP or not.

	The result code AVP will be created if the Result Code in the
	AAAMessage is set.  So, this function will set the result code, 
	which will cause the AVP to be added when the message is sent.
	I'll make a note to my self to clarify the document.

> only data part of AVP into printable format or whole AVP ( means code,

	This routine will convert the DATA portion of an AVP to a string
	format.  The type of conversion depends on what we know about the
	AVP.  So, if the implementation knows that the data item is a 
	string, it will just be returned.  If it is an octet-string, then
	a hexdump will be returned.  If an integer, ltoa() or an equilivant
	will be used to convert the number to a string.

	So, this function is usefull for displaying the data portion of an 
	AVP for accounting purposes, or debugging.
> either free their memory or reassign their head and tail and make them

	Agreed.  It should take two lists.  This might be slightly broken,
	and it is definatly confusing.

> length should be 8 as data length can be 0 or more octect. 

	Why would you ever send a zero length octet string?

-Dave

---

From: Patrice Calhoun <[email-masked]>
Date: Mon, 26 Mar 2001 14:14:08 -0800 (PST)

[API questions answered by Dave, and deleted]

> length should be 8 as data length can be 0 or more octect. 

Length of an OctetString is one (!0) or more octets.

PatC

---

From: "Bob Kopacz" <[email-masked]>
Date: Tue, 27 Mar 2001 07:24:42 -0500

Hi Pat,

I think it was good, though, that you added the 
"unless otherwise noted" phrase, as this allows cases
where the presence of a string-type attribute with
a null string can convey a different meaning than
the absence of the AVP.

I'm thinkin here of EAP.  In RADIUS's EAP-Message
attribute and in Diameter's EAP-Payload AVP, both
of type string, a null string indicates EAP-Start.

Bob K.

----- Original Message ----- 
From: Patrice Calhoun <[email-masked]>
To: <[email-masked]>
Cc: <[email-masked]>; <[email-masked]>
Sent: Monday, March 26, 2001 5:14 PM
Subject: [AAA-WG]: Re: [diameter] Base Protocol

PatC

---

From: Patrice Calhoun <[email-masked]>
Date: Tue, 27 Mar 2001 07:00:41 -0800 (PST)

hmmmm.... looks like I can't even read my own text :(

You are correct that the spec does allow a zero octetstring AVP,
as Bob points out below. The way the text is written, it is a special
case, where it states that a specific AVP MAY have a zero length, but
this needs to be speficied in the AVP definition, otherwise the
minimum lenghs apply.

So does the text need to change?

PatC

---

From: David Frascone <[email-masked]>
Date: Tue, 27 Mar 2001 13:48:44 -0600

The, "unless otherwise noted" part works for me.

---

From: "Bob Kopacz" <[email-masked]>
Date: Wed, 28 Mar 2001 10:03:49 -0500

No, I don't think the text needs to change at all.

I was just trying to point out that a null octetstring is
not disallowed, and offered an existing example (EAP).

> -----Original Message-----
> From: Patrice Calhoun [mailto:[email-masked]]
> Sent: Tuesday, March 27, 2001 10:01 AM
> To: Bob Kopacz
> Cc: Patrice Calhoun; aaa-wg
> Subject: Re: [AAA-WG]: Re: [diameter] Base Protocol
>
>