public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* Re: CVS with pserver: Binary files get corrupted
       [not found] <87wuxiikt1.fsf@shambler.spielmann.net>
@ 2002-02-12 13:00 ` Charles Wilson
       [not found]   ` <87r8nqid9s.fsf@shambler.spielmann.net>
  0 siblings, 1 reply; 4+ messages in thread
From: Charles Wilson @ 2002-02-12 13:00 UTC (permalink / raw)
  To: Holger Spielmann; +Cc: cygwin

Holger Spielmann wrote:

> Hello,
> 
> due to company policy, I have to use Windows in my current project, so
> I started using Cygwin to get a halfway decent environment.
> 
> I successfully managed to set up a CVS pserver on Cygwin. In our
> project, we want to add some JAR files to the CVS, so the frameworks
> API (here: Cocoon) can be assured to be on the same revision for all
> developers.
> 
> But the jars arrive garbled in the repository, despite I added them
> with the -kb option. First I thought it might be related to the text
> mode I used for mounting the file systems, but transferring the
> repository didn't change anything, I even tried to import a new
> project from scratch.


The repository itself must be on a binary (unix) mounted drive -- within 
the conext of the service!  Since you are probably starting the pserver 
daemon from inetd, which is started under the *SYSTEM* user.  It 
(probably) doesn't matter where the checked-out or original-pre-import 
sources are, but the repository must be on a unix mount.

Try starting from scratch:

On repository machine:
   mount -b -s D:\my-repository /repository
(-s insures that this is a whole-system mount, so even the SYSTEM user 
will see it)

export CVSROOT=/repository
cvs init

And then try importing a new project.

--Chuck

[not snipped so your entire message appears in the correct mailing list archives]


> For all binary files, linefeed is replaced by CR/LF, and yes, it
> already happens when the files arrive in the repository.
> As I read in an older posting by Corinna Vinschen concerning ash,
> dated from April 2001, this might be related to the cvs pserver
> process opening its socket with O_TEXT. Alas, grepping thru the
> sources of cvs and inetutils showed me no place where I might try to
> patch.
> 
> Using rsh is no opportunity because we get dynamic IPs, using ssh
> with client certificates would involve additional software and
> procedures, to which some of my collegues are not used to, and putting
> the repository on a Windows share is too damn slow and lacks any
> security.
> Ah, and did I mention the policy keeps me from just putting Debian on
> one of the boxes... :(
> 
> Any ideas regarding this problem? A patch would be quite handy!
> 
> TIA
> 



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: CVS with pserver: Binary files get corrupted
       [not found]   ` <87r8nqid9s.fsf@shambler.spielmann.net>
@ 2002-02-12 14:17     ` Charles Wilson
  2002-02-12 17:10       ` Holger Spielmann
  0 siblings, 1 reply; 4+ messages in thread
From: Charles Wilson @ 2002-02-12 14:17 UTC (permalink / raw)
  To: Holger Spielmann; +Cc: cygwin

[please keep the replies on list]

Holger Spielmann wrote:

> Hi,
> 
> Charles Wilson <cwilson@ece.gatech.edu> writes:
> 
>>The repository itself must be on a binary (unix) mounted drive --
>>within the conext of the service!  Since you are probably starting the
>>pserver daemon from inetd, which is started under the *SYSTEM* user.
>>It (probably) doesn't matter where the checked-out or
>>original-pre-import sources are, but the repository must be on a unix
>>mount.
>>
> 
> I did mount the repository as binary, but that didn't help.


As a system mount?  Did you then restart inetd/cvsd ?  and then 
*recreate* the repository (since your original one probably had ^M's in it)?


> However, after continued search in the archives for the cygwin list,
> I've found the advice to mount the working directory as binary,
> too. I cannot test that at home (no more windows machines since 5
> years, everything around's Linux:), but I'll give it a try tomorrow at
> work.


My point is that you should try from a CLEAN SLATE with your intended 
repository directory mounted as binary -- not that you merely re-mount 
an existing repository (that may be scrogged) as binary.


> 
>>export CVSROOT=/repository
>>
> Having the repository on a windows share isn't a solution for us


What???  I said nothing about a windows share.  I'm talking about the 
following, when logged in to the machine on which cvs:pserver: will run, 
create a brand spanking new empty repository directory.  Make sure it is 
on a binary mount (e.g. as a simple example, I said:

 > mkdir D:\repository
 > bash
$ mkdir /repository
$ mount -b -s D:\\repository /repository

See, now you are SURE that /repository is a binary mounted directory. 
The data will go into D:\repository.)

Tell cvs where that brand spanking new empty repository directory is 
going to live. (for instance, continuing the previous example:

export CVSROOT=/repository

This is NOT a windows share.  It's just a mounted directory on your 
:pserver: machine (remember, we're doing all of this interactively ON 
the pserver machine.)

Then, initialize the brand spanking new repository:

cvs init.

Now restart inetd/cvsd/however you are getting pserver to work.

THEN, and only then, go try to import something from a client machine.

> because of performance and security reasons, only pserver and perhaps
> ssh are OK.


Note that pserver is practically unported.  I didn't do anything to try 
to get it to work at all; I do have some documentation on how one user 
got it working, but haven't yet published it.  Too much on my plate 
right now.

--Chuck


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: CVS with pserver: Binary files get corrupted
  2002-02-12 14:17     ` Charles Wilson
@ 2002-02-12 17:10       ` Holger Spielmann
  2002-02-13 11:44         ` Solution for pserver problem (was: Re: CVS with pserver: Binary files get corrupted) Holger Spielmann
  0 siblings, 1 reply; 4+ messages in thread
From: Holger Spielmann @ 2002-02-12 17:10 UTC (permalink / raw)
  To: cygwin

Hi,

Charles Wilson <cwilson@ece.gatech.edu> writes:
> Holger Spielmann wrote:
> > Charles Wilson <cwilson@ece.gatech.edu> writes:

> >>The repository itself must be on a binary (unix) mounted drive --
> > I did mount the repository as binary, but that didn't help.
>
> As a system mount?  Did you then restart inetd/cvsd ?  and then
> *recreate* the repository (since your original one probably had ^M's
> in it)?

Yes, it's a system mount. No, didn't restart inetd, that's truely a
point. Yes, repository was recreated.

[HS: mount working dir as binary, too?]
> My point is that you should try from a CLEAN SLATE with your intended
> repository directory mounted as binary -- not that you merely re-mount
> an existing repository (that may be scrogged) as binary.

I created a clean repository. Sorry I didn't mention that, my fault.

> >>export CVSROOT=/repository
> > Having the repository on a windows share isn't a solution for us
> What???  I said nothing about a windows share.  I'm talking about the
> following, when logged in to the machine on which cvs:pserver: will
> run, create a brand spanking new empty repository directory.  Make
> sure it is on a binary mount (e.g. as a simple example, I said:
[how to mount repository as system-wide binary]
> See, now you are SURE that /repository is a binary mounted
> directory. The data will go into D:\repository.)

I'm sorry, I interpreted the CVSROOT pointing to a "local" directory
as a suggestion to used a shared folder instead.
At the moment, I use pserver on the local machine, too, because I
still have to fiddle around with the configuration, and want to be
sure I can instantly reproduce problems arising on the machines of my
co-workers. (As mentioned before, I was in the lucky position for the
last years that I always had projects where I worked in Unix/Linux/GNU
environments.)

> Now restart inetd/cvsd/however you are getting pserver to work.
> 
> THEN, and only then, go try to import something from a client machine.

I omitted the last point, beside the fact that the working directory
from where the import started lives on a text mount. Will try these
two tomorrow.

> Note that pserver is practically unported.  I didn't do anything to
> try to get it to work at all; I do have some documentation on how one
> user got it working, but haven't yet published it.  Too much on my
> plate right now.

Taking that into consideration, it works well:)

CU
-- 
Holger Spielmann
Germany
phone/fax: +49-700-SPIELMANN

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Solution for pserver problem (was: Re: CVS with pserver: Binary files get corrupted)
  2002-02-12 17:10       ` Holger Spielmann
@ 2002-02-13 11:44         ` Holger Spielmann
  0 siblings, 0 replies; 4+ messages in thread
From: Holger Spielmann @ 2002-02-13 11:44 UTC (permalink / raw)
  To: cygwin

Hello,

here's the solution: The problem was that the working directory from
which imports and adds where done resided on a text mount. After
mounting it in binary mode and starting a fresh repository,
everything's fine.
Maybe this should go into the documentation.

CU
-- 
Holger Spielmann
Germany
phone/fax: +49-700-SPIELMANN

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2002-02-13 19:44 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <87wuxiikt1.fsf@shambler.spielmann.net>
2002-02-12 13:00 ` CVS with pserver: Binary files get corrupted Charles Wilson
     [not found]   ` <87r8nqid9s.fsf@shambler.spielmann.net>
2002-02-12 14:17     ` Charles Wilson
2002-02-12 17:10       ` Holger Spielmann
2002-02-13 11:44         ` Solution for pserver problem (was: Re: CVS with pserver: Binary files get corrupted) Holger Spielmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).