Dear User Group:

The version of the PPPD that comes with the 2.24.27 version
of UC Linux seems to have the following problem when
used with 2.4.x kernel. (i.e. I am using the MC5249C3
development board.)

If PPPD is run manually--for instance from a Sash shell,
it seems to detach from the controlling terminal correctly,
and correctly associate and configure stdin and stdout with
a tty--such as /dev/ttyS1. This makes all the tty configuration
automatic when PPPD spawns CHAT.

However, if PPPD is run from a program--after a
successful vfork() and exec(), it seems to unable
to completely reconfigure a tty which was previously
configured by the parent program.

I believe the root problem is that PPPD does not reconfigure
stdout correctly.

What I observed is when CHAT writes characters to stdout--which
is already associated with a tty, write() often fails with
EAGAIN which the CHAT code doesn't handle correctly. This
suggests CHAT assumes stdout is in blocking mode. The
assumption is safe if PPPD has preconfigured stdout correctly.

The device being used by PPPD is /dev/ttyS1 which is
closed at the time PPPD is spawned. However, the
parent program had it open in raw non-blocking mode
before that. Also, the parent program does not change
the default attributes of stdin or stdout.

Finally, this problem does not occur when the same
software is used on a Debian Linux system.

Best Regards,


Paul R.


--
Paul Romero

RCOM Communications Software

Phone/Fax: (510)339-2628
E-Mail: [EMAIL PROTECTED]


_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to