🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.amiga.tech
Article #1285

XPR protocol

#1285
From: Francois Rouaix
Date: Fri, 15 Sep 1989 08:17
40 lines
2352 bytes
Hi,
I don't  know how many  of you are interested in the XPR protocol
for file-transfer protocols as shared libraries. I also think that
Willy Langeveld does not read this group. However the problem I
want to point-out may happen with other "shared-libraries".

Let me remind this: XPR is (schematically) a specification for writing
file-transfer shared libraries that can be called later from communication 
programs independantly of the protocol.
For the communication program, the library (read: any xpr library)
defines only 4 functions. As usual, and for C programs, there are stubs
for calling these functions. As usual, and there lies the problem,
these stubs use a GLOBAL _XProtocolBase.
It is normal that a terminal program uses only one protocol at a time.

However, consider a multi-user BBS, designed such that all modules are 
reentrant, so that all processes share their code and global variables.
It is NOT possible then to write a download/upload  module according to
XPR, or it means that all users should use the same protocol, just because
the library base is a global variable.

I can see that it's enough to change the stubs to solve the problem.
However this means that the stubs must be recompiled and are not any more
a link-time library as they used to be.

Or would it be preferable to have a generic xpr.library, which in turns
calls the xprXXX.library ? this xpr.library  would define the same functions
but with a  new parameter UNIT, and also a new function 
XPROpenProtocol("protocolname") returning a UNIT.
It seems to me that this solution looks like the one that was chosen to
manage the multiserial libraries.

Comments ? Other solutions ?

-- 
*- Francois Rouaix                 //       We are all prisoners here,       *
*- rouaix@inria.inria.fr         \X/           of our own device             *
*- SYSOP of Sgt. Flam's Lonely Amigas Club. (33) (1) 39-55-84-59 (Videotex)  *
Disclaimer: Opinions expressed are my own, not those of my employer.
Technical Details
Message-ID: <1406@inria.inria.fr>
Path: arc1-ca.pugleaf.net!utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!cs.utexas.edu!uunet!mcsun!inria!rouaix

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!cs.utexas.edu!uunet!mcsun!inria!rouaix
From: rouaix@inria.inria.fr (Francois Rouaix)
Newsgroups: comp.sys.amiga.tech
Subject: XPR protocol
Keywords: use in BBS
Message-ID: <1406@inria.inria.fr>
Date: 15 Sep 89 08:17:49 GMT
Organization: FR.A.U.G.
Lines: 39