From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757912AbYFSKb6 (ORCPT ); Thu, 19 Jun 2008 06:31:58 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1757218AbYFSKbn (ORCPT ); Thu, 19 Jun 2008 06:31:43 -0400 Received: from kuber.nabble.com ([216.139.236.158]:51517 "EHLO kuber.nabble.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757041AbYFSKbm convert rfc822-to-8bit (ORCPT ); Thu, 19 Jun 2008 06:31:42 -0400 Message-ID: <18005750.post@talk.nabble.com> Date: Thu, 19 Jun 2008 03:31:41 -0700 (PDT) From: SHUperb To: linux-kernel@vger.kernel.org Subject: Hi kernel experts, MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT X-Nabble-From: lin.en.shu@gmail.com Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi kernel experts, I’m trying to modify the IP packet src & dest address after receiving from the wire and reconstruct the packet at kernel layer without going to apps layer and ultimately send out the packet. So, the recommended API to be used is ip_finish_output() (as it is the only exported symbol to send UDP packets). However, since the IP header content are changed, the system must automatically recalculate checksum and needs mac address as well, and most of the time mac address of unknown hosts. Currently, when I try, I need to invoke mac address resolution via arp by manually calling neigh_lookup of existing arp entry before sending the packet by calling dev_queue_xmit(). My questions is how can I change (dest/src IP and port number) at before ip_finish_output() by accessing specific struct should I want to send the packet to unknown hosts (unknown means remote hosts that do not have an arp entry in local host's arp table) by calling ip_finish_output(). Thank you very much for your advice. -- View this message in context: http://www.nabble.com/Hi-kernel-experts%2C-tp18005750p18005750.html Sent from the linux-kernel mailing list archive at Nabble.com.