Date: Tue, 29 Jun 1999 14:18:30 +0930 From: Greg Lehey <grog@lemis.com> To: Patryk Zadarnowski <patrykz@mycenae.ilion.eu.org> Cc: Amol Mohite <amol2@m-net.arbornet.org>, freebsd-hackers@FreeBSD.ORG Subject: Re: environment strings Message-ID: <19990629141830.J85121@freebie.lemis.com> In-Reply-To: <199906290444.OAA30104@mycenae.ilion.eu.org>; from Patryk Zadarnowski on Tue, Jun 29, 1999 at 02:44:39PM %2B1000 References: <Pine.BSI.3.96.990628233126.24384A-100000@m-net.arbornet.org> <199906290444.OAA30104@mycenae.ilion.eu.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday, 29 June 1999 at 14:44:39 +1000, Patryk Zadarnowski wrote: > >> I know about envp. >> >> What I want to know is the exact position of these variables on the stack. >> >> and if anywhere I can find some data, on the exact compisoition of the >> stcak, then it will be very helpful. >> >> references of books and websites wil be most helpful. > > Basically, i386 BSD kernels (you're after i386, aren't you?) point ESP to > the following "struct" (which means that it will be dumped at the very > top of the address space) > > struct kframe { > int argc; /* "argc" to be passed to main() */ > char *argv[argc]; /* "argv" to be passed to main() */ > char *null; /* a NULL pointer terminating argv[] */ > char **envp; /* value to be assigned to "environ" */ > }; In fact, the environment strings are at the very top, followed by the arguments, followed by this structure. But I suppose that's what you meant to say. Greg -- See complete headers for address, home page and phone numbers finger grog@lemis.com for PGP public key To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990629141830.J85121>