[cvsnt] Re: problem with checkout / permissions?
Gerhard Fiedler
lists at connectionbrazil.com
Fri May 28 17:10:09 BST 2004
>>I have a system with some restricted permissions, and I'm getting this
>>result (using the sspi protocol with cvsnt 2.0.41a):
>>
>>e:\test>cvs -t checkout Module/Test
>>D:\Programs\CVS\CVSNT\cvs.exe -t checkout Module/Test
>> -> Tracelevel set to 1. PID is 3992
>> -> Session ID is f9840b74b8b0000
>> -> main loop with CVSROOT=:sspi:user at gedesk:/projects
>> -> Encryption enabled
>> -> Requesting server cvsignore
>> -> Requesting server cvswrappers
>> -> Requesting server cvsrc (read-cvsrc2)
>>S -> do_module(Module/Test, Updating, , )
>>cvs [server aborted]: Cannot check out files into the repository itself
>>
>>When I do the same as me myself, it works. But I am the admin on the
>>server. When I login as any of the restricted users, I get the above. The
>>odd thing is that it used to work; I don't know what has changed. (I did
>>update cvsnt on both client and server, but it's been a while since I last
>>tested this so I don't know whether this is related to it.)
>>
> That error can only happen if the directory you're in at the moment is
> the CVSROOT - it's just a string compare with the current root and the
> current directory (not even a particularly robust one... it's case
> sensitive for example).
>
> Could it be that your temp directory is pointing to the repository?
No, that's not the case. This happens on two systems (I tested it on the
server itself, and on a different machine on my LAN).
On both the TMP and TEMP variables don't point to anything like the
repository. The repository is in e:\Data\CVS\repositories\...
e:\>set
TEMP=F:\tmp
TMP=F:\tmp
...
(Same on both systems.)
How could this be the problem if it works when I log on to cvs as myself,
but not as user? This brought me to the question about permissions on the
server, because that's what's different between the two.
e:\test\gfiedler>set CVSROOT=:sspi:gfiedler at gedesk:/projects
e:\test\gfiedler>cvs checkout Module/Test
D:\Programs\CVS\CVSNT\cvs.exe checkout Module/Test
cvs server: Updating Module/Test
U Module/Test/0index.txt
e:\test\gfiedler>cd ..\chrisp\
e:\test\chrisp>set CVSROOT=:sspi:chrisp at gedesk:/projects
e:\test\chrisp>cvs -t checkout Module/Test
D:\Programs\CVS\CVSNT\cvs.exe -t checkout Module/Test
-> Tracelevel set to 1. PID is 2120
-> Session ID is 84840b760d30000
-> main loop with CVSROOT=:sspi:chrisp at gedesk:/projects
-> Encryption enabled
-> Requesting server cvsignore
-> Requesting server cvswrappers
-> Requesting server cvsrc (read-cvsrc2)
S -> do_module(Module/Test, Updating, , )
cvs [server aborted]: Cannot check out files into the repository itself
e:\test\chrisp>set TMP
F:\tmp
e:\test\chrisp>set TEMP
F:\tmp
Here is what I see in the cvsnt control panel applet:
- Service Status: version is CVSNT 2.0.41a, both services are running
- Repositories: Repository Prefix is checked, the directory is
E:/Data/CVS/repositories, and I have two valid repository roots (/personal,
/projects)
- Advanced: Impersonation Enabled checked, Use local users for pserver
checked, Don't resolve client names not checked, Lockserver listenes
locally only checked, Pretend to be Unix not checked. Temporary directory
is E:\Data\CVS\tmp. Server port 2401, lock server is localhost:2402.
Request encryption, compression optional.
- SSL settings: default (never did anything here).
More information about the cvsnt
mailing list