From owner-freebsd-hackers Fri Jan 26 7:28: 7 2001 Delivered-To: freebsd-hackers@freebsd.org Received: from gradient.cis.upenn.edu (GRADIENT.CIS.UPENN.EDU [158.130.67.48]) by hub.freebsd.org (Postfix) with ESMTP id A20A137B401 for ; Fri, 26 Jan 2001 07:27:48 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by gradient.cis.upenn.edu (8.10.1/8.10.1) with ESMTP id f0QFRkF28061; Fri, 26 Jan 2001 10:27:46 -0500 (EST) Date: Fri, 26 Jan 2001 10:27:46 -0500 (EST) From: Alwyn Goodloe To: Patrick Bihan-Faou Cc: freebsd-hackers@freebsd.org Subject: Re: Divert Sockets & Fragmentation revisited In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Having run lsof I can verify that the program IS reading on that port number. Has anyone else on the hacker list had problems with diverting fragmented datagrams?? Alwyn Goodloe agoodloe@gradient.cis.upenn.edu On Fri, 26 Jan 2001, Patrick Bihan-Faou wrote: > Hi, > > Sorry to state something that is obvious, but when you bind your socket to > the port, you have the port in the correct (network) order ? > > i.e. do you use htons(DIVERTPort) ? > > If you have lsof installed, run it and look at the port number that your > program listens on. > > > > Patrick. > > > > Here is the important code fragments: > > > > Note: I have played with the MAX_PACKET_SIZE in hopes that it would make > some > > difference but to no avail. > > > > #define MAX_PACKET_SIZE 300000 > > #define DIVERTPort 4422 > > #define ACTIVE_UDP_PORT 3322 > > > > > > if ((divert_sock = socket(PF_INET, SOCK_RAW, IPPROTO_DIVERT)) < 0) > > sys_error("divert socket error"); > > set_sock_data(&server_divert,PF_INET,DIVERTPort,INADDR_ANY); > > printf("Step 1 \n"); /* Register address and port with the system */ > > if (bind(divert_sock, (struct sockaddr*) > &server_divert,sizeof(server_divert)) < 0) > > sys_error("server_divert bind error"); > > for ( ; ; ) { > > > > n = recvfrom (divert_sock,encaped_pkt,MAX_PACKET_SIZE,0, > > ( struct sockaddr * ) &client_add,&clilen); > > > > > > > > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > > with "unsubscribe freebsd-hackers" in the body of the message > > > > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message