[places which call chmod: fix_rcs_modes add_rcs_file login.c (really a whole separate issue from the others) rename_dbmfile (can just be a fatal error on CHMOD_BROKEN, I'd guess) rename_rcsfile RCS_checkout (can just be replaced by xchmod? Don't think so, at least we need to be careful about the x bit on unix) RCS_checkin (this just kludged around a RCS bug/misfeature, for CVS 1.9.4 to 1.9.18; now that RCS is gone, not an issue). patch_file (just like RCS_checkout) -kingdon] Return-Path: heinrich@kenn.rnd.stnd.sciatl.com Date: Thu, 19 Dec 1996 11:47:58 -0500 From: Kenn Heinrich To: kingdon@harvey.cyclic.com Subject: OS/2 Port of CVS 1.9 and chmod problem Jim, I have some more info for you about the "cannot chmod()" error. Thanks for making the non-DLL OS/2 version (cvs-static.exe). I downloaded it and tried it out, but unfortunately, I get the same errors as before. A German fellow posted (cvs-info) about the executable calling %COMSPEC%, (I am assuming, via the 'C' system() call), and I tried using this info to track down what was happening. I wrote a dummy program which shows its args and then makes and logs the system() call, and pointed COMSPEC to it. It would appear that the proper call is being made for the NAMED files during the "cvs init", i.e. .#modules, .#commitinfo, etc. My log file looks like this: > printargs : D:\C\PRINTARGS.EXE /c attrib -r .#modules > system call: f:\os2\cmd.exe /c attrib -r .#modules > system() returned 0 > printargs : D:\C\PRINTARGS.EXE /c attrib -r .#loginfo > system call: f:\os2\cmd.exe /c attrib -r .#loginfo > system() returned 0 .... you get the idea... > printargs : D:\C\PRINTARGS.EXE /c attrib -r .#2454 > system call: f:\os2\cmd.exe /c attrib -r .#2454 > system() returned 0 ... a few more NAMED files ... What is interesting is that there is only ONE numbered file (.#2454) in the log, but another six "cannot chmod .#1234: Message file..." errors came out to stderr concurrently, and were not captured by my log. This leads me to suspect that some of the chmod's in the original source are NOT BEING REROUTED to your xchmod() OS/2 function. I grep'd the sources and the "cannot chmod()" error seems to be located in rename_rcsfile() in mkmodules.c. BTW I'm running OS/2 Warp v4.0, with LAN TCPIP support and Netware support installed, as well as NFS. I'm trying to use this locally, with the repository on my local hard drive, no client/server stuff. My CVSROOT says: CVSROOT=:local:d:\src\master I also find that I can't run "cvs init" from any other drive than d: -- I get other messages then. What does your setup look like? Maybe I have some wierd stuff interfering. Thanks for listening, - Kenn Kenn Heinrich Hardware Design Engineer Scientific Atlanta, Toronto Canada heinrich@dvs.com OR kenn.heinrich@sciatl.com