UKA_PPP in RFC/Client-Box
Michael Heydekamp
my-news at freexp.de
Fre Mar 12 16:26:00 CET 2004
Joachim Merkel <j.merkel at tbx.berlinet.de> wrote on 12.03.04:
> Michael Heydekamp (my-news at freexp.de) schrieb:
> [...]
>> 'ccignore' true ist. Und 'ccignore' ist dann true, wenn keine *.MSG
>> im Spool liegen.
>> Verstehe ich im Moment nicht, was soll das?
> Weiß ich auch nicht, ist Dein Skript.
Nein, das ist - wie in <94ZRR04ppwB at my.freexp.de> gesagt - in *allen*
Netcall-Scripts von UKA_PPP enthalten (siehe z.B. XPNEWS).
> in meinem steht:
> if $file "spool\*.msg",a$ = ""
> modify wattcp.cfg,"$cc_ignore=",1
Und inwiefern unterscheidet sich das von dem von mir in
<94ZRR04ppwB at my.freexp.de> gequoteten Scriptteil, über den wir gerade
sprechen?
>>>>> ----------8<----------
>>>>> if $file "spool\*.msg",a$ = ""
>>>>> modify wattcp.cfg,"$cc_ignore=",1
>>>>> ----------8<----------
?? Ich sehe da keinen Unterschied.
> maxwait=5
> call $config+".$do"
> maxwait=0
> modify wattcp.cfg,"$cc_ignore=",0
> else
> print "{7}Alte Messages werden zuerst importiert!"
> xnews eben...
Ja, sag' ich doch, und genauso steht das deshalb auch in XP2NEWS drin
(worauf FXPNEWS basiert). Ich habe für FreeXP bisher lediglich die else-
Anweisung rausgenommen, weil die nun wirklich Schwachsinn ist, denn
dieser Fall wurde längst weiter oben abgehandelt. Der müßte eigentlich
auch in XP2NEWS raus (oder die erste Prüfung muß eliminiert werden).
Ich kann mir das Zustandekommen der doppelten Prüfung auf alte Messages
im UKA_PPP-Spool im XP2NEWS-Script - die allerdings zu unterschiedlichen
Schlußfolgerungen führen - nur so erklären:
UKA_PPP in einer ZConnect-Installation prüft a) auf einen bereits
konvertierten, aber noch nicht eingelesenen ZC-Puffer "infile.z" und b)
auf eingegangene, aber noch nicht konvertierte *.MSG im UKA_PPP-Spool.
Da die UUZ-Konvertierung bei RFC/PPP (und RFC/Client ebenfalls) nicht im
UKA_PPP-Script vorgenommen wird, sondern Bestandteil der Netcall-Routine
ist, hat Robo die Prüfung auf "infile.z" umgebaut zu einer Prüfung auf
*.MSG im Spool von UKA_PPP.
Wenn das richtig ist, dann ist die anschließende nochmalige Prüfung auf
dasselbe Szenario überflüssig; oder die erste Prüfung ist überflüssig
und kann sogar zu falschen Resultaten führen (unterstellt, die
bisherigen Resultate im Zusammenhang mit $cc_ignore waren erwünscht).
Also nochmal im Zusammenhang (aus XP2NEWS):
----------8<----------
if $file "spool\*.msg",a$ > 0
print "{7}Alte Spoolfiles müssen zuerst importiert werden!"
shell "move spool\*.msg \xp\spool"
wait 3
exit
end if
----------8<----------
Das passiert ganz am Anfang. *Danach* können sich gar keine *.MSG mehr
im Spool von UKA_PPP befinden. Bei einem erneuten Aufruf des Scripts
wird die obige Stelle übergangen und geht es dann anschließend wie im
Originalscript XPNEWS weiter:
----------8<----------
if $file "spool\*.msg",a$ = ""
modify wattcp.cfg,"$cc_ignore=",1
----------8<----------
Hier wird also auf die Nicht-Existenz von *.MSG im Spool geprüft, und da
die nie existieren können (weil sie schon oben ins XP-Spool verschoben
und das Script abgebrochen wurde), wird also $cc_ignore *immer* auf
'true' gesetzt - offenbar für ausgehende Nachrichten.
Das hat mir bisher noch niemand erklären können, wozu das gut sein soll.
Die Frage stellt sich sowohl für XPNEWS als auch für XP2NEWS.
----------8<----------
else
print "{7}Alte Messages werden zuerst importiert!"
wait 3
----------8<----------
Und hier kann XP2NEWS wegen der Routine ganz am Anfang überhaupt nie
reinlaufen.
Für mich steht bisher nur fest, daß die Logik in XP2NEWS so nicht
richtig sein kann. Ich versuche nur rauszufinden, welche richtig wäre,
und dazu müßte ich mal wissen oder verstehen, was es mit $cc_ignore auf
sich hat.
Michael
Mehr Informationen über die Support-List Mailingliste