*BSD News Article 52433


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!simtel!news.kei.com!news.mathworks.com!tank.news.pipex.net!pipex!dispatch.news.demon.net!demon!kiss.demon.co.uk
From: phil@zipmail.co.uk (Phil Taylor)
Newsgroups: comp.unix.bsd.freebsd.misc
Subject: Problem Spawning a new process.
Date: Sat, 30 Sep 1995 18:41:18 GMT
Organization: Lan Systems
Lines: 38
Message-ID: <812486482.27182@kiss.demon.co.uk>
Reply-To: phil@zipmail.co.uk
NNTP-Posting-Host: kiss.demon.co.uk
X-NNTP-Posting-Host: kiss.demon.co.uk
X-Newsreader: Forte Free Agent 1.0.82

I am trying to write a program that will after asking various
questions, spawn pppd.

I am using execl, having already tried execve on it's own. The problem
that I seem to be having is that after it is spawned, pppd is unable
to determine the controlling tty.....

When I run pppd from the command line, the log file shows :

ppp <> /dev/ttyd0 

When I spawn it from my program, it shows :

ppp <> /dev/tty

As I am using a seperate options file for each ttydx it doesnt find
one and therefore can't determine the remote IP address.

my spawn command is :

execl("/usr/sbin/pppd","/usr/sbin/pppd",NULL)

I have tried just 'pppd' as the second argument instead of
/usr/sbin/pppd as well....

It seems that execl isn't passing the name of the controlling tty, is
this possible, or even is this just the way it is ???

I'm probably doing something really stupid but this has now been
driving me mad for quite some time (days actually)

Any ideas ???

Thanks

Phil