Date: Mon, 29 Nov 2004 21:35:42 -0500 From: Ken Smith <kensmith@cse.Buffalo.EDU> To: Mark McWiggins <markm@messagegate.com> Cc: freebsd-stable@freebsd.org Subject: Re: Need source to TCP/IP 'connect()' Message-ID: <20041130023542.GA390@electra.cse.Buffalo.EDU> In-Reply-To: <62A29338972397468405C79C4FE13C3B013DDDD4@ex1.messagegate.local> References: <62A29338972397468405C79C4FE13C3B013DDDD4@ex1.messagegate.local>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Nov 29, 2004 at 06:06:22PM -0800, Mark McWiggins wrote: > Can someone point me to (or send) the BSD source to the TCP/IP > 'connect()' function? > > I looked through the hierarchy and couldn't find it quickly. > > > > I need a hacked version to work the way Nmap does just sending SYN and > then quitting > > to verify that an application is still running but not do a full > connection, which causes the > > app to misbehave. > > Thanks in advance for any help you can offer. When 'fishing' for stuff in the kernel source code I find the tags files kind of useful. In a kernel build directory (e.g. I usually use src/sys/i386/compile/GENERIC on a 5.X machine, after config-ing GENERIC) after doing a 'make depend' you can do 'make tags'. It will usually fail once it starts to process the modules because it can't find 'gtags' but by then it's already built what is most useful. Once the tags file is built in the kernel build directory you can do something like: vi -t connect and it will start up vi with the cursor at the beginning of that function. It's not perfect (sometimes it can't find a function) but for the most part it works OK. In this case it found connect() in /usr/src/sys/kern/uipc_syscalls.c (I was using a RELENG_5 source tree). -- Ken Smith - From there to here, from here to | kensmith@cse.buffalo.edu there, funny things are everywhere. | - Theodore Geisel |
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20041130023542.GA390>