1 {******************************************************************************} 2 { } 3 { Winsock2 Vines IP API interface Unit for Object Pascal } 4 { } 5 { Portions created by Microsoft are Copyright (C) 1995-2001 Microsoft } 6 { Corporation. All Rights Reserved. } 7 { } 8 { The original file is: wsvns.h, released June 2000. The original Pascal } 9 { code is: WSvns.pas, released December 2000. The initial developer of the } 10 { Pascal code is Marcel van Brakel (brakelm att chello dott nl). } 11 { } 12 { Portions created by Marcel van Brakel are Copyright (C) 1999-2001 } 13 { Marcel van Brakel. All Rights Reserved. } 14 { } 15 { Obtained through: Joint Endeavour of Delphi Innovators (Project JEDI) } 16 { } 17 { You may retrieve the latest version of this file at the Project JEDI } 18 { APILIB home page, located at http://jedi-apilib.sourceforge.net } 19 { } 20 { The contents of this file are used with permission, subject to the Mozilla } 21 { Public License Version 1.1 (the "License"); you may not use this file except } 22 { in compliance with the License. You may obtain a copy of the License at } 23 { http://www.mozilla.org/MPL/MPL-1.1.html } 24 { } 25 { Software distributed under the License is distributed on an "AS IS" basis, } 26 { WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for } 27 { the specific language governing rights and limitations under the License. } 28 { } 29 { Alternatively, the contents of this file may be used under the terms of the } 30 { GNU Lesser General Public License (the "LGPL License"), in which case the } 31 { provisions of the LGPL License are applicable instead of those above. } 32 { If you wish to allow use of your version of this file only under the terms } 33 { of the LGPL License and not to allow others to use your version of this file } 34 { under the MPL, indicate your decision by deleting the provisions above and } 35 { replace them with the notice and other provisions required by the LGPL } 36 { License. If you do not delete the provisions above, a recipient may use } 37 { your version of this file under either the MPL or the LGPL License. } 38 { } 39 { For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html } 40 { } 41 {******************************************************************************} 42 43 // $Id: JwaWSvns.pas,v 1.5 2007/09/05 11:58:53 dezipaitor Exp $ 44 {$IFNDEF JWA_OMIT_SECTIONS} 45 unit JwaWSvns; 46 47 {$WEAKPACKAGEUNIT} 48 {$ENDIF JWA_OMIT_SECTIONS} 49 50 {$HPPEMIT ''} 51 {$HPPEMIT '#include "wsvns.h"'} 52 {$HPPEMIT ''} 53 54 55 {$IFNDEF JWA_OMIT_SECTIONS} 56 {$I jediapilib.inc} 57 58 interface 59 60 uses 61 JwaWinSock2; 62 {$ENDIF JWA_OMIT_SECTIONS} 63 {$IFNDEF JWA_IMPLEMENTATIONSECTION} 64 65 // 66 // Windows Sockets include file for VINES IP. This file contains all 67 // standardized VINES IP information. Include this header file after winsock.h. 68 // 69 // To open an VINES IP socket, call socket() with an address family of AF_BAN, a 70 // socket type of SOCK_DGRAM, SOCK_STREAM, or SOCK_SEQPACKET, and protocol of 0. 71 // 72 73 // 74 // Socket address, VINES IP style. Address fields and port field are defined 75 // as a sequence of bytes. This is done because they are byte ordered 76 // BIG ENDIAN, ala most significant byte first. 77 // 78 79 type 80 SOCKADDR_VNS = record 81 sin_family: u_short; // = AF_BAN 82 net_address: array [0..3] of u_char; // network address 83 subnet_addr: array [0..1] of u_char; // subnet address 84 port: array [0..1] of u_char; // msb=port[0], lsb=port[1] 85 hops: u_char; // # hops for broadcasts 86 filler: array [0..4] of u_char; // filler, zeros 87 end; 88 {$EXTERNALSYM SOCKADDR_VNS} 89 PSOCKADDR_VNS = ^SOCKADDR_VNS; 90 {$EXTERNALSYM PSOCKADDR_VNS} 91 LPSOCKADDR_VNS = ^SOCKADDR_VNS; 92 {$EXTERNALSYM LPSOCKADDR_VNS} 93 TSockAddrVNS = SOCKADDR_VNS; 94 PSockAddrVNS = LPSOCKADDR_VNS; 95 96 const 97 VNSPROTO_IPC = 1; 98 {$EXTERNALSYM VNSPROTO_IPC} 99 VNSPROTO_RELIABLE_IPC = 2; 100 {$EXTERNALSYM VNSPROTO_RELIABLE_IPC} 101 VNSPROTO_SPP = 3; 102 {$EXTERNALSYM VNSPROTO_SPP} 103 {$ENDIF JWA_IMPLEMENTATIONSECTION} 104 105 {$IFNDEF JWA_OMIT_SECTIONS} 106 implementation 107 //uses ... 108 {$ENDIF JWA_OMIT_SECTIONS} 109 110 111 {$IFNDEF JWA_INTERFACESECTION} 112 //your implementation here 113 {$ENDIF JWA_INTERFACESECTION} 114 115 116 {$IFNDEF JWA_OMIT_SECTIONS} 117 end. 118 {$ENDIF JWA_OMIT_SECTIONS} 119