Extended addresses API (was Re: SIPP API question)

"Daniel L. McDonald" <mcdonald@itd.nrl.navy.mil> Tue, 17 May 1994 16:52 UTC

Received: from ietf.nri.reston.va.us by IETF.CNRI.Reston.VA.US id aa06694; 17 May 94 12:52 EDT
Received: from CNRI.RESTON.VA.US by IETF.CNRI.Reston.VA.US id aa06690; 17 May 94 12:52 EDT
Received: from Sun.COM by CNRI.Reston.VA.US id aa11898; 17 May 94 12:52 EDT
Received: from Eng.Sun.COM (zigzag.Eng.Sun.COM) by Sun.COM (sun-barr.Sun.COM) id AA28648; Tue, 17 May 94 09:50:47 PDT
Received: from sunroof2.Eng.Sun.COM by Eng.Sun.COM (4.1/SMI-4.1) id AA24130; Tue, 17 May 94 09:49:40 PDT
Received: by sunroof2.Eng.Sun.COM (4.1/SMI-4.1) id AA07483; Tue, 17 May 94 09:50:37 PDT
Received: from Eng.Sun.COM (engmail1) by sunroof2.Eng.Sun.COM (4.1/SMI-4.1) id AA07477; Tue, 17 May 94 09:50:35 PDT
Received: from Sun.COM (sun-barr) by Eng.Sun.COM (4.1(1/24/94)/SMI-4.1) id AA02395; Tue, 17 May 94 09:48:46 PDT
Received: from itd.nrl.navy.mil by Sun.COM (sun-barr.Sun.COM) id AA28370; Tue, 17 May 94 09:49:18 PDT
Received: by itd.nrl.navy.mil (4.1/SMI-4.1) id AA22573; Tue, 17 May 94 12:47:13 EDT
Sender: ietf-archive-request@IETF.CNRI.Reston.VA.US
From: "Daniel L. McDonald" <mcdonald@itd.nrl.navy.mil>
Message-Id: <9405171647.AA22573@itd.nrl.navy.mil>
Subject: Extended addresses API (was Re: SIPP API question)
To: ericf@atc.boeing.com
Date: Tue, 17 May 1994 12:47:11 -0400
Cc: SIPP Mailing list <sipp@sunroof2.eng.sun.com>
X-Mailer: ELM [version 2.4 PL22]
Mime-Version: 1.0
Content-Type: text/plain; charset="US-ASCII"
Content-Transfer-Encoding: 7bit
Content-Length: 1090
X-Orig-Sender: sipp-request@sunroof.eng.sun.com

The latest version of the SIPP API document
(draft-ietf-sipp-bsd-api-02.txt), contains this new flavor of BSD sockaddr:

           struct sockaddr_sipp {
                   short            ss_family;  /* AF_SIPP */
                   u_short          ss_port;
                   u_short          ss_reserved;
                   u_short          ss_len;     /* Number of SIPP addresses */
                   struct sipp_addr ss_addr[7]; /* SIPP Addr Seq */
           };

Notice the array for address sequences at the end.  I imagine this can grow
if it needs to support more than a sequence of 7 addresses.

BTW, if you are familiar with the newer BSD sockaddr structures, that for
some oddball reason split the *_family halfword into two bytes, one for
family, and one for length, you can try Dan's special BSD/386 version of
sockaddr_sipp, which looks like:

	struct sockaddr_sipp
	{
	  u_char ss_socklen;   /* For BSDI compatibility. */
	  u_char ss_family;
	  u_short ss_port;
	  u_short ss_reserved;
	  u_short ss_len;
	  struct sipp_addr ss_addr[7];
	};

Hope this helps!

Dan McD.