[OpenAFS] AFS Perl API bos & vos requirements (resend)

Chaskiel M Grundman cg2v@andrew.cmu.edu
Fri, 02 May 2003 15:58:38 -0400


--On Friday, May 02, 2003 12:38:54 -0400 "Jenkins, Steven"
<JENKINSS@mail.etsu.edu> wrote:

> Is your concern a naming issue?  Ie, would you be more comfortable to
> see the library named libvos_client.a?  
My concern is that what you will be implimenting is not an "AFS Perl API"
for the volser/vldb. the code in vos.c does not represent an API. it calls
an API that's already in a library. (FWIW, vos.c is not what handles all
the hairy parts of doing volume moves and releases. that stuff is handled
inside UV_MoveVolume and UV_ReleaseVolume respectively...)

The other parts of the perl api code are structured around the API's that
already exist, not around the existing command syntax. 

--On Friday, May 02, 2003 15:28:26 -0400 Phil.Moore@morganstanley.com wrote:

> The code will need some serious rearchitecture.
I'm confused by this statement. What code needs a recarchitecture and why?
(unless you are referring to the problems that the volser library has with
too much global state, and unconditionally sending error and warning
messages to stderr.) 
The UV_ and VLDB_ functions do return data structures where appropriate. it
is vos.c that formats stuff to stdout. (some of the more complex
operations, like Move, Release, and SyncVldb give you the _option_ of
having them display state and progress information).

There need to be some perl objects for the [onu]vldbentry and volint[X]Info
structures (possibly also diskPartition and partList).

There needs to be some init code that calls vsu_ClientInit with appropriate
arguments at the right time.