[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: trapping execve()
On Sat, 11 May 2002, Sridhar N wrote:
> On Friday 10 May 2002 06:15 am, Seth Arnold wrote:
> > > int (*orig_execve)(const char *, char const **,char const **);
> > > int my_execve(const char * path, char const *argv[],char const * envp[])
> >
> > It is my understanding that char const ** is different from
> > char const *argv[]. (My Peter van der Linden is not here, I can't cite
> > specifics, sorry.)
> >
>
> No luck.....Changed but still doesn't work. Will keep trying... What _is_ the
> prototype of execve() ?
Indeed "char **x" is different from char *x[]. But only if you intend to
do some pointer arithmetics over them. Passing them as function args makes no
difference under pointer point of view (remember main(int argc, char **argv)
and main(int argc, char *argv[]) are the same). The compiler may complain
about wrong types if asked to (-Wall) but that's all. They yelds to the
very same number ("binaryly" speaking, ie., same bit pattern).
Ethy H. Brito /"\
InterNexo Ltda. \ / CAMPANHA DA FITA ASCII - CONTRA MAIL HTML
+55 (12) 3941-6860 X ASCII RIBBON CAMPAIGN - AGAINST HTML MAIL
S.J.Campos - Brasil / \
--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive: http://mail.nl.linux.org/kernelnewbies/
FAQ: http://kernelnewbies.org/faq/