I agree. Therefore, we are in the process of evaluating bug trackers, so it should be easier to keep track of these things in near future.
As we want a lightweight and simple solution, we'll probably end up with Mantis BT. Any comments/experiences are welcome. -Eystein On Tue, Dec 1, 2009 at 6:45 PM, Jean-Noël Rivasseau <elva...@gmail.com> wrote: > Ok, do you have a bugzilla? That would really be useful to track these kind > of things... > > On Tue, Dec 1, 2009 at 9:39 AM, Eystein Måløy Stenberg > <eystein.stenb...@gmail.com> wrote: >> >> This should be fixed in svn code a while ago, please try to upgrade. >> There will probably be a new release of Cfengine soon that includes a >> few of the recent bugfixes. >> >> -Eystein >> >> On 12/01/2009 06:27 PM, Jean-Noël Rivasseau wrote: >> > Hello, >> > >> > I am replying to this old thread (two monthes old only, actually) that I >> > found via Googling. I also have this problem and it is 100% reproducible >> > in my case. >> > >> > I am using Gentoo on both the server and the client, with version 3.0.2. >> > The version of OpenSSL is identical in both cases, 0.9.8l (note that it >> > also failed using 0.9.8l on the server and 0.9.8k on the client). >> > >> > This is my promises.cf <http://promises.cf>: >> > >> > bundle agent setupPhase >> > { >> > files: >> > "/srv/demo-phpbb/" copy_from => >> > fastCopyFromRemote("${global.OVERMIND_HOST}", >> > "${global.UNISON_REPOSITORY_PATH}demo-phpbb/"), depth_search => recurse, >> > perms => apache; >> > } >> > >> > body copy_from fastCopyFromRemote(server, path) >> > { >> > servers => {"${server}"}; >> > encrypt => "true"; >> > trustkey => "true"; >> > source => "${path}"; >> > compare => "digest"; >> > preserve => "false"; >> > purge => "true"; >> > copy_backup => "false"; >> > } >> > >> > body depth_search recurse >> > { >> > depth => "inf"; >> > } >> > >> > I am linking the demo-phpbb/ directory for you to reproduce the bug, as >> > I think it is somehow important (on other directories I am not hit by >> > this problem, so it is something strange in this directory that is >> > causing the bug, although I checked and everything seems normal...). It >> > is available at >> > >> > http://test.elvanor.net/bugs/demo-phpbb.zip >> > >> > I hope you can debug and fix this problem as it is quite critical IMHO >> > (not only it does not copy correctly the directory, it completely hangs >> > the cf-agent process while encountering garbage). >> > >> > Jean-Noel >> > >> > Mark, >> > >> > On the Ubuntu server I have OpenSSL 0.9.8g >> > On the Cygwin client I have OpenSSL 0.9.8k >> > >> > And on the Fedora client, I have OpenSSL 0.9.8k-fips >> > >> > So yes, it's more than likely that it is a OpenSSL issue since both >> > clients fails the same way, >> > >> > Regards, >> > Nicolas >> > >> > Mark Burgess a écrit : >> > >> > > Nicholas, >> > > >> > > I have been trying hard to reproduce this error but I have not >> > been able to. >> > > The problem is that encryption fails in the final transmission >> > causing file >> > > data >> > > to be apparent garbage. >> > >> > > >> > > I will try a few more things before giving up. May I ask what >> > kind of systems >> > > are running this? Do they have the same versions of OpenSSL? >> > > >> > > M >> > > >> > > >> > > Nicolas Charles wrote: >> > >> > > >> > >> Hi, >> > >> >> > >> I'm having a nasty behavior with the updating of promises when >> > having a >> > >> subfolder. >> > >> Here is myupdate.cf <http://update.cf> : >> > >> >> > >> > >> >> > >> # >> > >> # Define what an agent has to do when it updates >> > >> # its promises >> > >> # >> > >> >> > >> #simple copy method >> > >> body copy_from remote(server, path) { >> > >> > >> >> > >> servers => { >> > >> "${server}" >> > >> }; >> > >> encrypt => "true"; >> > >> trustkey => "true"; >> > >> source => "${path}"; >> > >> > >> compare => "digest"; >> > >> preserve => "false"; #preserver permissions >> > >> verify => "true"; >> > >> purge => "true"; >> > >> owners => {"slave"}; >> > >> > >> } >> > >> >> > >> #simple recurse method >> > >> >> > >> >> > >> bundle agent update { >> > >> vars: >> > >> any:: >> > >> "cfserved" string => "192.168.56.101"; #server IP >> > >> > >> "policy_files" string => "/srv/cf-served"; #directory where to >> > look for >> > >> promises in the server for that client >> > >> "server_inputs" string => "${policy_files}/inputs"; #actual >> > directory >> > >> > >> with promises, just to show the use of variables >> > >> "client_inputs" string => "${sys.workdir}/inputs"; #where to >> > put the >> > >> files on the client when downloaded >> > >> >> > >> > >> files: >> > >> any:: >> > >> "${client_inputs}" #that's a loop on each files in >> > client_inputs >> > >> copy_from => remote("${cfserved}","${server_inputs}"), >> > >> depth_search => recurse_visible("inf"); >> > >> > >> } >> > >> >> > >> >> > >> >> > >> On my server, I have >> > >> /srv/cf-served/inputs : the promises >> > >> /srv/cf-served/inputs/resources : variables, resources, etc >> > >> If resources folder is empty (or better, doesn't exist), it is >> > great >> > >> > >> If there is one empty file, it works great >> > >> >> > >> But if /srv/cf-served/inputs/resources contains a file (let's >> > call it >> > >> simple_its.txt) containing"foo baz" (or whatever), here is the >> > update >> > >> > >> behavior : >> > >> cf3 ========================================================= >> > >> cf3 files in bundle update (1) >> > >> cf3 ========================================================= >> > >> cf3 >> > >> > >> cf3 Verifying SQL table promises is only available with Cfengine >> > Nova or >> > >> above >> > >> cf3 >> > >> cf3 ......................................................... >> > >> cf3 Promise handle: >> > >> > >> cf3 Promise made by: /var/cfengine/inputs >> > >> cf3 ......................................................... >> > >> cf3 >> > >> cf3 -> Handling file existence constraints on >> > /var/cfengine/inputs >> > >> > >> cf3 -> Copy file /var/cfengine/inputs from >> > /srv/cf-served/inputs check >> > >> cf3 Found address (192.168.56.101) for host 192.168.56.101 >> > >> cf3 Found address (192.168.56.101) for host 192.168.56.101 >> > >> > >> cf3 No existing connection to 192.168.56.101 is established... >> > >> cf3 Set cfengine port number to 5308 = 5308 >> > >> cf3 Connect to 192.168.56.101 = 192.168.56.101, port = >> > (5308=5308) >> > >> cf3 LastSaw host 192.168.56.101 now >> > >> > >> cf3 Found address (192.168.56.101) for host 192.168.56.101 >> > >> cf3 Loaded /var/cfengine/ppkeys/root-192.168.56.101.pub >> > >> cf3 >> > .....................[.h.a.i.l.]................................. >> > >> > >> cf3 Strong authentication of server=192.168.56.101 connection >> > confirmed >> > >> cf3 Found address (192.168.56.101) for host 192.168.56.101 >> > >> cf3 !! (Destination purging enabled) >> > >> cf3 ->> Entering /srv/cf-served/inputs >> > >> > >> (snip) >> > >> cf3 -> Destination file /var/cfengine/inputs/site.cf >> > <http://site.cf> already exists >> > >> cf3 -> File permissions on /var/cfengine/inputs/site.cf >> > <http://site.cf> as promised >> > >> > >> cf3 -> File /var/cfengine/inputs/site.cf <http://site.cf> is >> > an up to date copy of source >> > >> cf3 -> /var/cfengine/inputs/update.cf <http://update.cf>~ >> > wasn't at destination (copying) >> > >> > >> cf3 -> Copying from >> > 192.168.56.101:/srv/cf-served/inputs/update.cf <http://update.cf>~ >> > >> cf3 -> Copy of regular file succeeded >> > /srv/cf-served/inputs/update.cf <http://update.cf>~ >> > >> > >> to /var/cfengine/inputs/update.cf <http://update.cf>~.cfnew >> > >> cf3 ?? Final verification of transmission ... >> > >> cf3 -> New file /var/cfengine/inputs/update.cf >> > <http://update.cf>~.cfnew transmitted >> > >> > >> correctly - verified >> > >> cf3 -> Group of /var/cfengine/inputs/update.cf >> > <http://update.cf>~ was 513, setting to 0 >> > >> cf3 -> File permissions on /var/cfengine/inputs/update.cf >> > <http://update.cf>~ as promised >> > >> > >> cf3 -> Updated file from >> > 192.168.56.101:/srv/cf-served/inputs/update.cf <http://update.cf>~ >> > >> cf3 ->> Entering /var/cfengine/inputs/resources >> > >> cf3 -> File permissions on /var/cfengine/inputs/resources as >> > promised >> > >> > >> cf3 -> Destination file >> > /var/cfengine/inputs/resources/simple_ips.txt~ >> > >> already exists >> > >> cf3 -> File permissions on >> > >> /var/cfengine/inputs/resources/simple_ips.txt~ as promised >> > >> > >> cf3 -> File /var/cfengine/inputs/resources/simple_ips.txt~ is >> > an up to >> > >> date copy of source >> > >> cf3 -> /var/cfengine/inputs/resources/simple_ips.txt wasn't at >> > >> destination (copying) >> > >> > >> cf3 -> Copying from >> > >> 192.168.56.101:/srv/cf-served/inputs/resources/simple_ips.txt >> > >> cf3 !! Copy from >> > >> 192.168.56.101:/srv/cf-served/inputs/resources/simple_ips.txt >> > failed >> > >> > >> cf3 !! Purging >> > /var/cfengine/inputs/resources/simple_ips.txt.cfnew in >> > >> copy dest directory >> > >> cf3 Transmission refused or failed statting >> > >> /srv/cf-served/inputs/ocsi-agent.cf <http://ocsi-agent.cf> >> > >> > >> Got: ÉòÞˆ¡Íäí >> > >> cf3 !! (Can't stat /srv/cf-served/inputs/ocsi-agent.cf >> > <http://ocsi-agent.cf>) >> > >> cf3 !!! System error for cf_stat:"Operation not permitted" >> > >> cf3 -> Destination file /var/cfengine/inputs/promises.cf >> > <http://promises.cf> already exists >> > >> > >> cf3 !! Image file /var/cfengine/inputs/promises.cf >> > <http://promises.cf> has a wrong MD5 >> > >> checksum (should be copy of /srv/cf-served/inputs/promises.cf >> > <http://promises.cf>) >> > >> > >> cf3 -> Updated /var/cfengine/inputs/promises.cf >> > <http://promises.cf> from source >> > >> /srv/cf-served/inputs/promises.cf <http://promises.cf> on >> > 192.168.56.101 >> > >> cf3 Was not able to copy /srv/cf-served/inputs/promises.cf >> > <http://promises.cf> to >> > >> > >> /var/cfengine/inputs/promises.cf <http://promises.cf> >> > >> cf3 I: Report relates to a promise with handle"" >> > >> cf3 I: Made in version'not specified' of >> > >> '/var/cfengine/inputs/update.cf <http://update.cf>' near line >> > 37 >> > >> > >> cf3 -> Destination file /var/cfengine/inputs/library.cf >> > <http://library.cf> already exists >> > >> cf3 !! Image file /var/cfengine/inputs/library.cf >> > <http://library.cf> has a wrong MD5 >> > >> > >> checksum (should be copy of /srv/cf-served/inputs/library.cf >> > <http://library.cf>) >> > >> cf3 -> Updated /var/cfengine/inputs/library.cf >> > <http://library.cf> from source >> > >> /srv/cf-served/inputs/library.cf <http://library.cf> on >> > 192.168.56.101 >> > >> > >> cf3 -> Copy of regular file succeeded >> > /srv/cf-served/inputs/library.cf <http://library.cf> >> > >> to /var/cfengine/inputs/library.cf.cfnew >> > >> cf3 !! New file /var/cfengine/inputs/library.cf.cfnew seems to >> > have been >> > >> > >> corrupted in transit (sizes 1304 and 0), aborting! >> > >> cf3 Was not able to copy /srv/cf-served/inputs/library.cf >> > <http://library.cf> to >> > >> /var/cfengine/inputs/library.cf <http://library.cf> >> > >> > >> cf3 I: Report relates to a promise with handle"" >> > >> cf3 I: Made in version'not specified' of >> > >> '/var/cfengine/inputs/update.cf <http://update.cf>' near line >> > 37 >> > >> > >> cf3 -> Destination file /var/cfengine/inputs/update.cf >> > <http://update.cf> already exists >> > >> cf3 !! Image file /var/cfengine/inputs/update.cf >> > <http://update.cf> has a wrong MD5 >> > >> > >> checksum (should be copy of /srv/cf-served/inputs/update.cf >> > <http://update.cf>) >> > >> cf3 -> Updated /var/cfengine/inputs/update.cf >> > <http://update.cf> from source >> > >> /srv/cf-served/inputs/update.cf <http://update.cf> on >> > 192.168.56.101 >> > >> > >> cf3 -> Copy of regular file succeeded >> > /srv/cf-served/inputs/update.cf <http://update.cf> to >> > >> /var/cfengine/inputs/update.cf.cfnew >> > >> cf3 ?? Final verification of transmission ... >> > >> > >> cf3 -> New file /var/cfengine/inputs/update.cf.cfnew >> > transmitted >> > >> correctly - verified >> > >> cf3 -> Group of /var/cfengine/inputs/update.cf >> > <http://update.cf> was 513, setting to 0 >> > >> > >> cf3 -> Object /var/cfengine/inputs/update.cf >> > <http://update.cf> had permission 600, changed >> > >> it to 644 >> > >> cf3 -> Destination file /var/cfengine/inputs/failsafe.cf >> > <http://failsafe.cf> already exists >> > >> > >> cf3 !! Image file /var/cfengine/inputs/failsafe.cf >> > <http://failsafe.cf> has a wrong MD5 >> > >> checksum (should be copy of /srv/cf-served/inputs/failsafe.cf >> > <http://failsafe.cf>) >> > >> > >> cf3 -> Updated /var/cfengine/inputs/failsafe.cf >> > <http://failsafe.cf> from source >> > >> /srv/cf-served/inputs/failsafe.cf <http://failsafe.cf> on >> > 192.168.56.101 >> > >> cf3 Was not able to copy /srv/cf-served/inputs/failsafe.cf >> > <http://failsafe.cf> to >> > >> > >> /var/cfengine/inputs/failsafe.cf <http://failsafe.cf> >> > >> cf3 I: Report relates to a promise with handle"" >> > >> cf3 I: Made in version'not specified' of >> > >> '/var/cfengine/inputs/update.cf <http://update.cf>' near line >> > 37 >> > >> > >> cf3 Transmission refused or failed statting >> > >> /srv/cf-served/inputs/cf-served.cf <http://cf-served.cf> >> > >> Got: CFD_TRUE >> > >> cf3 !! (Can't stat /srv/cf-served/inputs/cf-served.cf >> > <http://cf-served.cf>) >> > >> > >> cf3 !!! System error for cf_stat:"Operation not permitted" >> > >> cf3 -> Destination file /var/cfengine/inputs/yum.cf >> > <http://yum.cf> already exists >> > >> cf3 -> File permissions on /var/cfengine/inputs/yum.cf >> > <http://yum.cf> as promised >> > >> > >> cf3 -> File /var/cfengine/inputs/yum.cf <http://yum.cf> is an >> > up to date copy of source >> > >> cf3 Transmission refused or failed statting >> > >> /srv/cf-served/inputs/virtual-machines.cf >> > <http://virtual-machines.cf> >> > >> > >> Got: ŒFÚðQCa• >> > >> cf3 !! (Can't stat /srv/cf-served/inputs/virtual-machines.cf >> > <http://virtual-machines.cf>) >> > >> cf3 !!! System error for cf_stat:"Operation not permitted" >> > >> > >> cf3 -> Destination file /var/cfengine/inputs/exim4.cf >> > <http://exim4.cf> already exists >> > >> cf3 !! Image file /var/cfengine/inputs/exim4.cf >> > <http://exim4.cf> has a wrong MD5 checksum >> > >> > >> (should be copy of /srv/cf-served/inputs/exim4.cf >> > <http://exim4.cf>) >> > >> cf3 -> Updated /var/cfengine/inputs/exim4.cf <http://exim4.cf> >> > from source >> > >> /srv/cf-served/inputs/exim4.cf <http://exim4.cf> on >> > 192.168.56.101 >> > >> > >> cf3 Was not able to copy /srv/cf-served/inputs/exim4.cf >> > <http://exim4.cf> to >> > >> /var/cfengine/inputs/exim4.cf <http://exim4.cf> >> > >> cf3 I: Report relates to a promise with handle"" >> > >> > >> cf3 I: Made in version'not specified' of >> > >> '/var/cfengine/inputs/update.cf <http://update.cf>' near line >> > 37 >> > >> cf3 !! Purging /var/cfengine/inputs/exim4.cf.cfnew in copy dest >> > directory >> > >> > >> cf3 !! Purging /var/cfengine/inputs/failsafe.cf.cfnew in copy >> > dest directory >> > >> cf3 !! Purging /var/cfengine/inputs/library.cf.cfnew in copy >> > dest directory >> > >> cf3 !! Purging /var/cfengine/inputs/promises.cf.cfnew in copy >> > dest directory >> > >> > >> cf3 !! Purging /var/cfengine/inputs/update.cf.cfsaved in copy >> > dest directory >> > >> cf3 Performance(Copy(192.168.56.101:/srv/cf-served/inputs> >> > >> /var/cfengine/inputs)): time=2.0000 secs, av=2.6912 +/- 0.8668 >> > >> > >> cf3 Existing connection just became free... >> > >> >> > >> Then files content are messed up (ending with content from one >> > file in >> > >> another one) >> > >> >> > >> Both client and server are the 3.0.2 release >> > >> > >> >> > >> Regards, >> > >> Nicolas >> > >> > >> > > _______________________________________________ Bug-cfengine mailing list Bug-cfengine@cfengine.org https://cfengine.org/mailman/listinfo/bug-cfengine