From owner-freebsd-current@FreeBSD.ORG Thu Nov 9 17:35:18 2006 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2B8A816A5AC for ; Thu, 9 Nov 2006 17:35:18 +0000 (UTC) (envelope-from bzeeb-lists@lists.zabbadoz.net) Received: from transport.cksoft.de (transport.cksoft.de [62.111.66.27]) by mx1.FreeBSD.org (Postfix) with ESMTP id A2D6043DAA for ; Thu, 9 Nov 2006 17:35:13 +0000 (GMT) (envelope-from bzeeb-lists@lists.zabbadoz.net) Received: from transport.cksoft.de (localhost [127.0.0.1]) by transport.cksoft.de (Postfix) with ESMTP id 0392C1FFC37; Thu, 9 Nov 2006 18:35:12 +0100 (CET) Received: by transport.cksoft.de (Postfix, from userid 66) id 2E8BC1FFC21; Thu, 9 Nov 2006 18:35:07 +0100 (CET) Received: from maildrop.int.zabbadoz.net (maildrop.int.zabbadoz.net [10.111.66.10]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.int.zabbadoz.net (Postfix) with ESMTP id BA3EC444888; Thu, 9 Nov 2006 17:34:44 +0000 (UTC) Date: Thu, 9 Nov 2006 17:34:44 +0000 (UTC) From: "Bjoern A. Zeeb" X-X-Sender: bz@maildrop.int.zabbadoz.net To: Randall Stewart In-Reply-To: <45525E52.6090608@cisco.com> Message-ID: <20061109173256.G54329@maildrop.int.zabbadoz.net> References: <45524517.1060501@cisco.com> <45525E52.6090608@cisco.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Virus-Scanned: by AMaViS cksoft-s20020300-20031204bz on transport.cksoft.de Cc: freebsd-current@freebsd.org Subject: Re: SCTP is in the Tree :-) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 09 Nov 2006 17:35:18 -0000 On Wed, 8 Nov 2006, Randall Stewart wrote: > Ivan Voras wrote: >> Randall Stewart wrote: >> >> >>> Stream Control Transmission Protocol (SCTP) - is a reliable message >>> oriented transport protocol which provides network fault tolerance >>> It supports multiple streams and multihoming. A very good overview >>> of the protocol is given in RFC 3268. >> >> >> Looks cool :) >> >> It's under IP so it's routable, but I imagine it probably needs routers >> along the way to know about it in order to use the more advanced features? > > Nope.. not at all.. > > The only issue is when you cross a firewall or NAT :-( > > Note that I have heard that the latest FreeBSD IPv6 FW for > some reason drops SCTP packets even if you have typed in > allow ip from any to any... > > Something about not liking protocol 132 in the extension > headers :( would that patch help you (I'd have to investigate in detail but like some of us I am currently in Milan and I still don't know the details of SCTP [as in I haven't read the RFC yet]): Index: ip_fw2.c =================================================================== RCS file: /local/mirror/FreeBSD/r/ncvs/src/sys/netinet/ip_fw2.c,v retrieving revision 1.153 diff -u -p -r1.153 ip_fw2.c --- ip_fw2.c 6 Nov 2006 13:42:04 -0000 1.153 +++ ip_fw2.c 9 Nov 2006 17:32:22 -0000 @@ -311,6 +311,7 @@ static int fw_deny_unknown_exthdrs = 1; */ #define L3HDR(T, ip) ((T *)((u_int32_t *)(ip) + (ip)->ip_hl)) #define TCP(p) ((struct tcphdr *)(p)) +#define SCTP(p) ((struct sctphdr *)(p)) #define UDP(p) ((struct udphdr *)(p)) #define ICMP(p) ((struct icmphdr *)(p)) #define ICMP6(p) ((struct icmp6_hdr *)(p)) @@ -2222,6 +2223,12 @@ do { \ args->f_id.flags = TCP(ulp)->th_flags; break; + case IPPROTO_SCTP: + PULLUP_TO(hlen, ulp, struct sctphdr); + src_port = SCTP(ulp)->src_port; + dst_port = SCTP(ulp)->dest_port; + break; + case IPPROTO_UDP: PULLUP_TO(hlen, ulp, struct udphdr); dst_port = UDP(ulp)->uh_dport; -- Bjoern A. Zeeb bzeeb at Zabbadoz dot NeT