1 /*
2  * The Spread Toolkit.
3  *
4  * The contents of this file are subject to the Spread Open-Source
5  * License, Version 1.0 (the ``License''); you may not use
6  * this file except in compliance with the License.  You may obtain a
7  * copy of the License at:
8  *
9  * http://www.spread.org/license/
10  *
11  * or in the file ``license.txt'' found in this distribution.
12  *
13  * Software distributed under the License is distributed on an AS IS basis,
14  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
15  * for the specific language governing rights and limitations under the
16  * License.
17  *
18  * The Creators of Spread are:
19  *  Yair Amir, Michal Miskin-Amir, Jonathan Stanton.
20  *
21  *  Copyright (C) 1993-2004 Spread Concepts LLC <spread@spreadconcepts.com>
22  *
23  *  All Rights Reserved.
24  *
25  * Major Contributor(s):
26  * ---------------
27  *    Cristina Nita-Rotaru crisn@cs.purdue.edu - group communication security.
28  *    Theo Schlossnagle    jesus@omniti.com - Perl, skiplists, autoconf.
29  *    Dan Schoenblum       dansch@cnds.jhu.edu - Java interface.
30  *    John Schultz         jschultz@cnds.jhu.edu - contribution to process group membership.
31  *
32  */
33 
34 
35 #ifndef INC_DATA_LINK
36 #define INC_DATA_LINK
37 
38 #include "arch.h"
39 #include "scatter.h"
40 
41 #define		MAX_PACKET_SIZE		1472    /*1472 = 1536-64 (of udp)*/
42 
43 #define		SEND_CHANNEL	0x00000001
44 #define		RECV_CHANNEL    0x00000002
45 
46 channel	DL_init_channel( int32 channel_type, int16 port, int32 mcast_address, int32 interface_address );
47 void    DL_close_channel(channel chan);
48 int	DL_send( channel chan, int32 address, int16 port, sys_scatter *scat );
49 int	DL_recv( channel chan, sys_scatter *scat );
50 
51 #endif  /* INC_DATA_LINK */
52