[jcifs] RAPs, RPCs, and API Design

Michael B Allen mba2000 at ioplex.com
Fri Feb 6 08:40:20 GMT 2004

eglass1 at comcast.net said:
> Mike,
> Is 0.8.0 "feature frozen"?

Sort of, but if it doesn't interfere with the core too much I would
incorporate new stuff.

> I've been tinkering with some stuff that might
> be interesting, but if I recall correctly 0.8.0 was a cleanup-oriented
> release.

Actually this was the "everything that people would expect jCIFS to have
but it fell through the cracks" release. I was going to do another release
for cleaning out all of the stuff I believe I meantioned not too long ago.

However my time has been limited lately and I've been contemplating
pushing the cleanup into this release. It seems pretty stable. At least
the problems are pretty simple.

>  Specifically, I've got a general RAP call framework and a big
> chunk of RAP calls implemented (using Samba's clirap2.c as a reference).
> This allows you to create/delete users and domain groups, as well as
> enumerating users and groups.  Not tested very well, but useful ;)  I'll
> send it to you directly if you like (probably too big for the list).

There are a few problems with this. First, I'm still trying to catch up to
your last contribution. As I've said my time is slim, so I would much
rather work on your RPC code if I'm going to do Windows management
functions. RAP is the client side of deprecated Windows operating systems
(although Windows 98 was resurrected at the last minute I believe).
Second, the RAPs aren't hard, its the APIs that need a lot of thought.
When we expose the idea of users and groups it has to dovetail with ACLs
which needs to consider permissions etc. Theres a lot of abstract
brainstorming there.

  [maybe someone on the list has some isightful input here?]

If you want to think about these APIs, explore the object model, and then
create an implementation that uses your RAPs then that would be
interesting. The implementation wouldn't have to be really solid. We just
want to isolate how the concept of users, groups, and permissions exposes
itself through the jCIFS APIs in anticipation of getting RPCs going.
That's really moving forward to a common end (RPCs).

I think the API design would also be a fun thing to do. You would be good
at it too because you understand the Windows security model well which
would be elemental to the overall design.

But by all means send me the code. I'll put it in the download area for now.


More information about the jcifs mailing list