[cvsnt] "cannot open directory . for empty check"

Ulf Jaenicke-Rößler ujaroe at googlemail.com
Wed May 2 10:10:38 BST 2007


2007/5/1, Arthur Barrett <arthur.barrett at march-hare.com>:

> In the CVSNT Server Control Panel (on the server) on the "advanced" tab there is an
> option "allow clients to trace server" - enable this, then run:
> cvs -ttt co -P module
>
> Send just the portion of the trace "near" the error (maybe 20 lines or so).
>
> >
> > AV files detected:
> > NOD32KRN.EXE NOD32KUI.EXE
...
> Please read this:
> http://www.march-hare.com/cvspro/faq/faq3.asp#3f

Yes - I've already found this FAQ when I was looking for a solution
why I could not successful connect to a local (test) cvs server. After
uninstalling NOD32 I could connect to the locally installed server,
however the "empty check" problem still remains.

Well, as I just have mentioned I tried to install another cvs server
locally. I copied parts of the repository and did a checkout/update -P
and to my surprise the problem does not occur! Unfortunately, I wasn't
able so far to tell relevant differences.

As you pointed out I enabled server traces and did a checkout.
Although the empty check only occurs after update -P there's something
that I noticed.

The local server (doing update -P without error) shows near the beginning:
...
S -> Checking admin file C:/cvs/CVSROOT/admin for user ujr
S -> add_valid_group(admin)
S -> Checking local access token for groups
S -> add_valid_group(Kein)
S -> add_valid_group(Jeder)
S -> add_valid_group(Debugger Users)
S -> add_valid_group(cvs)
S -> add_valid_group(Administratoren)
S -> add_valid_group(Benutzer)
S -> add_valid_group(NETZWERK)
S -> add_valid_group(Authentifizierte Benutzer)
S -> add_valid_group(Authentifizierte Benutzer)
S -> add_valid_group(LOKAL)
S -> cache_directory_permissions(C:/cvs/Libraries/TComm)
...

while the remote server gives
...
S -> Checking admin file C:/cvs/CVSROOT/admin for user ujr
S -> Checking local access token for groups
S -> Failed to open token (00000005)
S -> Failed to get token information (00000006)
S -> cache_directory_permissions(C:/cvs/Libraries/TComm)
...

(first and last line repeated for context)

The "Checking local access token for groups" is repeated several times later on.
The very same difference can be observed during cvs update and cvs
update -P, only that there are lots of those checks.
Here is part of the output for update -P - although I only had checked
out a directory called Libraries/TComm, cvs cycles through all
directories below Libraries (which is normal I guess) and gives the
"empty check" message after the last one.
...
S -> map_repository(C:/cvs/Libraries/iSMultiIO)
S -> lookup_module2(Libraries/iSMultiIO,47)
S -> verify_access C:/cvs/Libraries/iSMultiIO,iSMultiIO,(null)
S -> verify_perm(C:/cvs/Libraries/iSMultiIO,(null),read,(null),(null))
S -> verify_owner(C:/cvs/Libraries/iSMultiIO)
S -> Checking local access token for groups
S -> Failed to open token (00000005)
S -> Failed to get token information (00000006)
S -> cache_directory_permissions(C:/cvs/Libraries/iSMultiIO)
S -> fileattr_read(C:/cvs/Libraries/iSMultiIO)
S -> Checking local access token for groups
S -> Failed to open token (00000005)
S -> Failed to get token information (00000006)
S -> cache_directory_permissions(C:/cvs/Libraries/iSMultiIO)
S -> ACL lookup on directory C:/cvs/Libraries/iSMultiIO
S -> verify_acl(read,HEAD,(null))
S -> user_state = 0, group_state = 0
S -> no match at this level
S -> ACL lookup on directory C:/cvs/Libraries
S -> verify_acl(read,HEAD,(null))
S -> user_state = 0, group_state = 0
S -> no match at this level
S -> ACL lookup on directory C:/cvs
S -> verify_acl(read,HEAD,(null))
S -> user_state = 0, group_state = 0
S -> no match at this level
S -> open_directory(C:/cvs/Libraries/iSMultiIO,(null),(null))
S -> RCS_parse(.directory_history,C:/cvs/Libraries/iSMultiIO)
S -> rcsbuf_open(C:/cvs/Libraries/iSMultiIO/.directory_history,v)
S -> rcsbuf_open failed
S -> rcsbuf_open(C:/cvs/Libraries/iSMultiIO/Attic/.directory_history,v)
S -> rcsbuf_open failed
S -> No mapping file in this directory.
S -> fileattr_startdir(C:/cvs/Libraries/iSMultiIO)
S -> close_directory()
S -> fileattr_write()
S -> fileattr_free()
S -> rename(CVS/Entries.Backup,CVS/Entries)
S -> wnt_rename(CVS/Entries.Backup,CVS/Entries)
S -> rename(CVS/Entries.Extra.Backup,CVS/Entries.Extra)
S -> wnt_rename(CVS/Entries.Extra.Backup,CVS/Entries.Extra)
S -> unlink_file(CVS/Entries.Log)
S -> unlink_file(CVS/Entries.Extra.Log)
cvs server: cannot open directory . for empty check: No such file or directory
S -> close_directory()
S -> Name_Repository((null),(null))
S -> do_module(Libraries, Updating, , )
S -> map_repository(C:/cvs/Libraries)
S -> lookup_module2(Libraries,48)
...

Thanks for your support!
 Ulf


More information about the cvsnt mailing list