Re: SSL pserver, CVS

Alexey Mahotkin <[email protected]>
Newsgroups gmane.comp.version-control.cvs.bugs
Message-ID <[email protected]>
>>>>> "BM" == Brian Murphy <[email protected]> writes:

 >> 1) server side authentication splitted into separate executables;
 >> 
 BM> Why not use SASL instead? This makes authentication modular too but
 BM> allows any SASL plugin to also work for CVS? Then all the kerberos
 BM> code etc can be removed from CVS.

When I was writing that code, I was not aware of SASL.  Maybe the idea to
somehow support SASL in CVS is a good one.  Again, I believe that server.c
split will clarify things a lot.


 >>  As for #1b: Ability to do PAM, virtual repositories, and to move
 >> auth-related things out of the cvs binary.  Again, I think that after
 >> the #2 integration is complete, the patch to split away the
 >> 'cvs-pserver' binary will look much more feasible than currently.  At
 >> the very least, PAM patches to cvs server will look much cleaner.
 >> 
 BM> What is the advantage of separate binaries? The code will still be a
 BM> part of CVS requiring maintenance. 

Of course.  But the main 'cvs' binary will not have setuid() calls in it,
and anything critical like looking into /etc/shadow. 

Also, not only were the binaries separate, but also they communicated using
'checkpassword' protocol (of qmail fame).

I believe that you could separate the binaries, but do not do the
'checkpassword' part.  At least half of the advantage is here.

And yes, it will require maintenance.  How else? 


 BM> Isn't this just the message-passing
 BM> versus function call based argument again, the winner on this front is
 BM> not clear to me. Do you call external programs (fork) or have
 BM> permanent daemons doing the external work?

No permanent daemons, no fork().  Pure and simple exec().

 >> IIIa) [conservative] PAM variant of switch_to_user()/check_password()
 >> routines; I could consult on PAM stuff and framework, although it's all
 >> pretty simple;
 >> 
 BM> You have not commented on the PAM stuff I have submitted though it
 BM> seems relevant to your work, could you take a look at it.

Sorry, but I have not yet started the splitting crusade on server.c, and do
not fully understand what the final infrastructure would be.  So, I'll look
at your patch after it's done.


 BM> How do I get a look at the nserver code?

http://cvs-nserver.sf.net/, as was already pointed out.  Use CVS
repository.  Current HEAD there contains latest cvs-nserver merged with
latest CVS release.

--alexm
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.