Subject: Notes from the API discussion

From: Vlad Yasevich <[email-masked]>
Date: Mon, 27 Aug 2007 09:52:16 -0400

[Trying again.  Looks like the mail list dropped my first message....]

Hi all

This is the notes I have from the API discussion that happened at
the SCTP interop. 

bindx()
- this is an atomic operation that will succeed or fail for all
  addresses.
- add wording about usage with only 1 address so that applications
  know which one failed.

send calls()
 - atomic in non-EOR mode (message mode).
 - may or may not support implicit connect on 1-to-1 sockets.

sinfo_flags:
 - need to a list of flags that are only allowed in setsockopt().
 - SCTP_INIT flag with NULL data established an association.
 - sctp_sendmsg() with NULL data and NULL ancillary data establishes
   an association with default init params.  This will be a non-blocking
   connect.
 - sendmsg() with no user data, without existing association, and with
   SCTP_ABORT or SCTP_EOF results in an error (EDONOTBESTUPID? :-)

PRSCTP
 - replace timetolive with pr_value and add policy framework support.
 - add SCTP_PR*** sinfo flag 
 - pad the hole in sndrcvinfo with sinfo_pr_*** 16 bit field to support
   policies.

HAVE_SCTP_*** flags
 - go away.

SO_REUSE***
 - Michael/Randy have text.
 - setsockopt() must be before bind().  only 1 socket may listen.
 - Define it as an SCTP level option (SO_ level option behavior is
   unspecified)
 - fail on 1-to-many.

AUTH
  - change sctp_hmacs structure to include a length or number of hmacs
  - change sctp_authkey structure to include the key length. This pads
    a hole in the structure and aligns the array access correctly.
  - make consistent usage of changes affecting only future associations.

-vlad

---

From: Randall Stewart <[email-masked]>
Date: Mon, 27 Aug 2007 13:04:16 -0400

Michael has some of the other notes.. and can chime in here..
but I think we also agreed that...

>  - may or may not support implicit connect on 1-to-1 sockets.

    - sending on a 1-2-M socket when an assoc is formed is a
      non-blocking thing. The data gets queued and the implicit
      setup happens in parrallel.

There may have been another one as well.. but I need to
think about it.. still a bit jet-lagged :-0

R

-- 
Randall Stewart
NSSTG - Cisco Systems Inc.
803-345-0369 <or> 803-317-4952 (cell)

---

From: Vlad Yasevich <[email-masked]>
Date: Mon, 27 Aug 2007 13:09:26 -0400

>      setup happens in parrallel.

I believe it was mentioned :) As long as that's OK with others, I can live with it.

-vlad

>>  - add SCTP_PR*** sinfo flag  - pad the hole in sndrcvinfo with
>> sinfo_pr_*** 16 bit field to support
>>    policies.
>>
>> HAVE_SCTP_*** flags
>>  - go away.
>>
>> SO_REUSE***

---

From: Randall Stewart <[email-masked]>
Date: Mon, 27 Aug 2007 13:15:23 -0400

> I believe it was mentioned :) As long as that's OK with others, I can live with it.

It was more than mentioned... if I remember right :-D

R