Re (3): [Oberon] n-o PPP modifications

shark at gulfnet.sd64.bc.ca shark at gulfnet.sd64.bc.ca
Fri Mar 11 20:13:56 CET 2005


Hello John Drake, Chris Glur and others,

John, that is a good suggestion about PPPMain.CleanUp.

On 2005-03-07 you remarked,
jmd> I noticed when I the main module the task was still "alive". 

A verb is missing.  Is this correct?
> I noticed when I freed the main module the task was still "alive".

Several points of confusion remain for me.

1. Simultaneous connections.
I wonder whether Oberon PPP was meant to 
support multiple simultaneous connections. 
Does anyone have access to a design specification
used by Martin Aeschlimann and Claude Knaus?
Native Oberon would need more than one 
simultaneous connection rarely but an Aos 
with multiple modems will need a PPP process
for each.

2. Distinction between PPPMain.Stop and PPPMain.Remove.  
Seems that the intention of Stop is to close 
the connection but leave the PPP task idling 
in the event loop.  Whereas Remove does Stop 
and then removes the task from the loop. 
Presumeably Stop will allow a subsequent 
connection to start faster than after Remove.
At least RemovePPP should release the serial port
so that it is available for a terminal session. 
 
3. In PPPMain.Mod we find 
	IMPORT ... PT:=(*es*)NetBase, ...
Anyone have an idea what PT abbreviates?

3. In PPPMain.Mod we find 
PROCEDURE * Connect (me: Oberon.Task);
...
BEGIN
	IF V24.Available(ppp.me.c) > 0 THEN
		...
		IF ppp.me.state = PT.open THEN
			Oberon.Remove(ppp.task); ppp.task := NIL;
		END;
	END;
END Connect;		

Puzzling.  What is the case where 
V24.Available(...) is true but PT.open is false?

Enough for now,         Peter E.

        http://carnot.pathology.ubc.ca/




More information about the Oberon mailing list