Demo Discussion
Forum Config Examples Contributions Vulnerabilities
  Discussion forum about ELOG, Page 1 of 237  Not logged in ELOG logo
icon4.gif   Webserver authentication may cause redirect loop, posted by Arjan Hulsbosch on Thu Jan 23 11:32:05 2025 

If

  1. Elog is configured to use webserver authentication, and
  2. the user reported by the webserver does not exist in the password file, and
  3. the "Guest Menu commands" configuration is set in "elogd.cfg", and
  4. a logbook is accessed,

then Elog returns with a redirect (302) to the logbook itself, causing the loop.

The fix here is to remove the "Guest Menu commands" configuration from "elogd.cfg".

Source code location: https://bitbucket.org/ritt/elog/src/30ada1df634529c8011c27275c52a05b01b7b3d6/src/elogd.cxx#lines-27599

icon1.gif   Segfault on elog-3.1.5-1 when uploading file., posted by gary holman on Thu Dec 12 18:45:49 2024 elog-3.1.5-1-segfault-valgrind.txt

I am receiving a segfault whenever I attempt to upload a file.   Please see attached .txt for valgrind output.   This occurs in version elog-3.1.5-1.   I reverted back to version elog-3.1.4-3 and the segfault does not occur.

Segfault occurs in Elog version: elog-3.1.5-1

System:

Virtualization: kvm
Operating System: Ubuntu 24.04.1 LTS
Kernel: Linux 6.8.0-49-generic
Architecture: x86-64
Hardware Vendor: QEMU
Hardware Model: Standard PC _Q35 + ICH9, 2009_
Firmware Version: 1.15.0-1
Firmware Date: Tue 2014-04-01
Firmware Age: 10y 8month 1w 5d
 

Valgrind command:   valgrind -v --leak-check=full --track-origins=yes ./elogd  -s /usr/local/elog -c /var/www/elog/he6/elogd.cfg -f /var/run/elog/he6.pid

Steps to reproduce:

1. Login elog

2. Create new logbook entry

3. Attachement 1:  Select Browse

4.  Select any file.

5.  Select Upload

    icon2.gif   Re: Segfault on elog-3.1.5-1 when uploading file., posted by gary holman on Thu Dec 12 19:01:39 2024 

Looks like duplicate report to https://elog.psi.ch/elogs/Forum/69826

gary holman wrote:

I am receiving a segfault whenever I attempt to upload a file.   Please see attached .txt for valgrind output.   This occurs in version elog-3.1.5-1.   I reverted back to version elog-3.1.4-3 and the segfault does not occur.

Segfault occurs in Elog version: elog-3.1.5-1

System:

Virtualization: kvm
Operating System: Ubuntu 24.04.1 LTS
Kernel: Linux 6.8.0-49-generic
Architecture: x86-64
Hardware Vendor: QEMU
Hardware Model: Standard PC _Q35 + ICH9, 2009_
Firmware Version: 1.15.0-1
Firmware Date: Tue 2014-04-01
Firmware Age: 10y 8month 1w 5d
 

Valgrind command:   valgrind -v --leak-check=full --track-origins=yes ./elogd  -s /usr/local/elog -c /var/www/elog/he6/elogd.cfg -f /var/run/elog/he6.pid

Steps to reproduce:

1. Login elog

2. Create new logbook entry

3. Attachement 1:  Select Browse

4.  Select any file.

5.  Select Upload

 

       icon2.gif   Re: Segfault on elog-3.1.5-1 when uploading file., posted by Stefan Ritt on Thu Dec 12 19:46:02 2024 

A statement like "core dumped" does not help much. Same with valgrind memory leaks. I need a full strack trace with all parameters when the segment violation occurs. The easiest is when you run elogd vom inside gdb, and once you get the signal, do a "where" to see th full stack trace.

As you can see from this forum, there is absolutely no crash when you upload any file, so it must have to do with your config file or anything whcih is special in yoru environment. We have to find what this is so that I can reproduce it here.

Stefan

          icon2.gif   Re: Segfault on elog-3.1.5-1 when uploading file., posted by gary holman on Thu Dec 12 20:29:40 2024 

Thanks for further instructions here is full stack trace:

Program received signal SIGABRT, Aborted.
__pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:44
warning: 44     ./nptl/pthread_kill.c: No such file or directory
(gdb) where
#0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:44
#1  __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
#2  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#3  0x00007ffff764526e in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#4  0x00007ffff76288ff in __GI_abort () at ./stdlib/abort.c:79
#5  0x00007ffff76297b6 in __libc_message_impl (fmt=fmt@entry=0x7ffff77ce765 "*** %s ***: terminated\n") at ../sysdeps/posix/libc_fatal.c:132
#6  0x00007ffff7736c19 in __GI___fortify_fail (msg=msg@entry=0x7ffff77ce74c "buffer overflow detected") at ./debug/fortify_fail.c:24
#7  0x00007ffff77365d4 in __GI___chk_fail () at ./debug/chk_fail.c:28
#8  0x00007ffff7738019 in __strlcpy_chk (s1=<optimized out>, s2=<optimized out>, n=<optimized out>, s1len=<optimized out>) at ./debug/strlcpy_chk.c:28
#9  0x000055555557ac8a in strlcpy (__n=356, __src=0x89ab3c42edf52f00 <error: Cannot access memory at address 0x89ab3c42edf52f00>, __dest=0x7ffffffd5370 "agarcia") at /usr/include/x86_64-linux-gnu/bits/string_fortified.h:156
#10 el_submit_attachment (lbs=lbs@entry=0x5555566873d8, afilename=afilename@entry=0x7ffffffd57e0 "pfSense-UDP4-1194-yuhaosun-config.ovpn",
    buffer=buffer@entry=0x5555566bba67 "dev tun\npersist-tun\npersist-key\ndata-ciphers AES-256-GCM:AES-128-GCM:CHACHA20-POLY1305:AES-256-CBC\ndata-ciphers-fallback AES-256-CBC\nauth SHA256\ntls-client\nclient\nresolv-retry infinite\nremote pfsense."...,
    buffer_size=buffer_size@entry=5265, full_name=full_name@entry=0x7ffffffd58e0 "") at src/elogd.cxx:4547
#11 0x00005555555f91ea in decode_post (logbook=logbook@entry=0x7fffffffbff0 "He6", lbs=lbs@entry=0x5555566873d8, string=<optimized out>,
    string@entry=0x5555566bb1c9 '-' <repeats 29 times>, "16417726823211458101306576170\r\nContent-Disposition: form-data; name=\"unm\"\r\n\r\ngholman\r\n", '-' <repeats 29 times>, "16417726823211458101306576170\r\nContent-Disposition: form"...,
    boundary=boundary@entry=0x7fffffffbef0 '-' <repeats 27 times>, "16417726823211458101306576170", length=length@entry=7649) at src/elogd.cxx:28662
#12 0x00005555555fb5cc in process_http_request (
    crequest=crequest@entry=0x555556656658 "POST /He6/ HTTP/1.0\r\nHost: xxx.xxx.xxx.xxx\r\nX-Real-IP: 192.168.101.2\r\nX-Forwarded-For: 192.168.101.2\r\nConnection: close\r\nContent-Length: 7649\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win6"...,
    i_conn=i_conn@entry=0) at src/elogd.cxx:29317
#13 0x00005555555ffc68 in server_loop () at src/elogd.cxx:30302
#14 0x000055555555b1b9 in main (argc=<optimized out>, argv=<optimized out>) at src/elogd.cxx:31327
(gdb)
 

Stefan Ritt wrote:

A statement like "core dumped" does not help much. Same with valgrind memory leaks. I need a full strack trace with all parameters when the segment violation occurs. The easiest is when you run elogd vom inside gdb, and once you get the signal, do a "where" to see th full stack trace.

As you can see from this forum, there is absolutely no crash when you upload any file, so it must have to do with your config file or anything whcih is special in yoru environment. We have to find what this is so that I can reproduce it here.

Stefan

 

             icon2.gif   Re: Segfault on elog-3.1.5-1 when uploading file., posted by Stefan Ritt on Fri Dec 13 15:11:08 2024 

Thanks to your stack trace, I found a case where a string might get overwritten, but only if the attachment file name is longer than 256 chars. I fixed the code and made a new RPM:

  https://www.dropbox.com/scl/fi/r37qx9aka5ytt3j7vn4km/elog-3.1.5-20241213.el8.x86_64.rpm?rlkey=knct99pdltggunrbmyr2hpfe5&st=pkre24aq&dl=0

Alternatively, you can compile from sources. Give it a try.

Stefan

                icon2.gif   Re: Segfault on elog-3.1.5-1 when uploading file., posted by gary holman on Fri Dec 13 19:40:57 2024 

Thanks Stefen!

I built from source (ELOG V3.1.5-3a5f2f00) and I confirmed as fixed.
 

Stefan Ritt wrote:

Thanks to your stack trace, I found a case where a string might get overwritten, but only if the attachment file name is longer than 256 chars. I fixed the code and made a new RPM:

  https://www.dropbox.com/scl/fi/r37qx9aka5ytt3j7vn4km/elog-3.1.5-20241213.el8.x86_64.rpm?rlkey=knct99pdltggunrbmyr2hpfe5&st=pkre24aq&dl=0

Alternatively, you can compile from sources. Give it a try.

Stefan

 

                   icon2.gif   Re: Segfault on elog-3.1.5-1 when uploading file., posted by Evinrude Motor on Tue Jan 7 20:35:23 2025 

When will the new source be in the standard download area ? I'm on ubuntu .

gary holman wrote:

Thanks Stefen!

I built from source (ELOG V3.1.5-3a5f2f00) and I confirmed as fixed.
 

Stefan Ritt wrote:

Thanks to your stack trace, I found a case where a string might get overwritten, but only if the attachment file name is longer than 256 chars. I fixed the code and made a new RPM:

  https://www.dropbox.com/scl/fi/r37qx9aka5ytt3j7vn4km/elog-3.1.5-20241213.el8.x86_64.rpm?rlkey=knct99pdltggunrbmyr2hpfe5&st=pkre24aq&dl=0

Alternatively, you can compile from sources. Give it a try.

Stefan

 

 

                      icon2.gif   Re: Segfault on elog-3.1.5-1 when uploading file., posted by Stefan Ritt on Tue Jan 7 20:41:13 2025 

It is in the usual download area which is referenced at https://elog.psi.ch/elog/download.html

Stefan

Evinrude Motor wrote:

When will the new source be in the standard download area ? I'm on ubuntu .

gary holman wrote:

Thanks Stefen!

I built from source (ELOG V3.1.5-3a5f2f00) and I confirmed as fixed.
 

Stefan Ritt wrote:

Thanks to your stack trace, I found a case where a string might get overwritten, but only if the attachment file name is longer than 256 chars. I fixed the code and made a new RPM:

  https://www.dropbox.com/scl/fi/r37qx9aka5ytt3j7vn4km/elog-3.1.5-20241213.el8.x86_64.rpm?rlkey=knct99pdltggunrbmyr2hpfe5&st=pkre24aq&dl=0

Alternatively, you can compile from sources. Give it a try.

Stefan

 

 

 

icon4.gif   Equation Editor does not work, posted by Dominic on Sun Sep 1 04:33:13 2024 

Hi!

I am not sure if this is a know issue: it seems that the equation editor does not work anymore. Is there any fix or alternative method to type latex formula in the log? 

Thank you!

    icon2.gif   Re: Equation Editor does not work, posted by Nick Sauerwein on Wed Sep 25 16:00:06 2024 

We have observed the same issue. Did the CodeCogs api change? 

Thanks for the help.

Dominic wrote:

Hi!

I am not sure if this is a know issue: it seems that the equation editor does not work anymore. Is there any fix or alternative method to type latex formula in the log? 

Thank you!

 

    icon2.gif   Re: Equation Editor does not work, posted by Dominic on Tue Nov 5 15:51:26 2024 

is there any update on this bug? Has anyone else observed the same problem?

Dominic wrote:

Hi!

I am not sure if this is a know issue: it seems that the equation editor does not work anymore. Is there any fix or alternative method to type latex formula in the log? 

Thank you!

 

       icon2.gif   Re: Equation Editor does not work, posted by Stefan Ritt on Mon Jan 6 14:59:06 2025 

Apparently Codecogs have changed their URL. I tried the update from 

  https://editor.codecogs.com/depr/CK_Editor_v4x.php

but it did not help. The CK Editor v5 is quite different from v4 (like they require node.js to install it), so putting it into elog would be some major work. 

Stefan

Dominic wrote:

is there any update on this bug? Has anyone else observed the same problem?

Dominic wrote:

Hi!

I am not sure if this is a know issue: it seems that the equation editor does not work anymore. Is there any fix or alternative method to type latex formula in the log? 

Thank you!

 

 

icon1.gif   Author special characters changed when saving as draft, posted by Víctor M. Nouvilas on Mon Dec 16 15:26:26 2024 

Hello, I have installed ELOG in an Ubuntu 22.04 machine and is working great, but I have found a small bug with Author names.

I have the config set like this for the Author attribute:

Preset Author = $long_name
Locked Attributes = Author

For context, my name is Víctor, which includes the accented "í". When creating a new entry and submitting immediately seems to work well. However, if I create a new entry, save it as draft, go back to the list, and then go to the draft entry, the accented "í" has transformed into "Ã". If I repeat the process, it turns into "ÃÂ", and so on. As I have configured the Author to not be editable, the user cannot fix this manually.

I found a way around this bug by setting

Subst Author = $long_name

Which is okay for us, but might not be for everyone.

In fact I saved this entry as a draft and then on another tab tried to edit it and it wouldn't let me edit because the author name now did not match.

icon5.gif   no availability of el8 and el9 rpm, posted by scott on Wed Feb 21 10:39:21 2024 

Hi,

I checked the RPM download page and found that there is no RPM available to install ELOG on el8 and el9 based OS.

Can someone upload the RPM for el8 and el9 on the download page of ELOG?

 

    icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Wed Feb 21 11:15:38 2024 

Hi,

EPEL retired the ELOG package for security reason.

You can build from GIT source as described in elog:Forum/69732 .

As SPECfile don't manage el8/9, you have to activate manually service thru "systemctl enable elogd" then "systemctl start elogd".

 

scott wrote:

Hi,

I checked the RPM download page and found that there is no RPM available to install ELOG on el8 and el9 based OS.

Can someone upload the RPM for el8 and el9 on the download page of ELOG?

 

 

       icon2.gif   Re: no availability of el8 and el9 rpm, posted by Konstantin Olchanski on Wed Feb 21 21:20:56 2024 
> EPEL retired the ELOG package for security reason

no, this is not what happened, we (I) requested removal of elog packages from epel, debian and ubuntu because they had obsolete pre-cve (insecure) 
versions that should not be used. they were very pleasant, quick and efficient dealing with this. (but obviously they could not retroactively 
remove elog from old versions of ubuntu and debian).

we opted to not reclaim ownership of these packages (original person who created these packages had drifted away) because
none of us know how to create debian packages and all of us (speaking for myself) know how much PITA is building RPM packages.
plus I do not know if Stefan has access to el8 and el9 machines (I do not, we are moving to ubuntu/debian wholesale).

I recommend building elog from git sources. it is simple, two commands (git clone + make) vs one command (rpm install),
it ensures you always have the latest version available, it is easy to update (git pull + make) and you do not
get any surprise updates (from nightly apt update/upgrade).

K.O.
          icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Thu Feb 22 00:53:26 2024 
> > EPEL retired the ELOG package for security reason
> 
> no, this is not what happened, we (I) requested removal of elog packages from epel, debian and ubuntu because they had obsolete pre-cve (insecure) 
> versions that should not be used. they were very pleasant, quick and efficient dealing with this. (but obviously they could not retroactively 
> remove elog from old versions of ubuntu and debian).

Yep i remind now. Finally the result was the same :-(
if CVEs had been fixed in repo, you should make a new official ELOG version and update download site with tarball, .exe and RPMS. Almost End-users do not use git repo...

> we opted to not reclaim ownership of these packages (original person who created these packages had drifted away) because
> none of us know how to create debian packages and all of us (speaking for myself) know how much PITA is building RPM packages.
> plus I do not know if Stefan has access to el8 and el9 machines (I do not, we are moving to ubuntu/debian wholesale).
 
I spent one hour yesterday to install almalinux in VM on my laptop, clone repo, rebuild ELOG RPM, install the new rpm and start elogd. 
You should have several VM on a shield for that :-P 

> I recommend building elog from git sources. it is simple, two commands (git clone + make) vs one command (rpm install),
> it ensures you always have the latest version available, it is easy to update (git pull + make) and you do not
> get any surprise updates (from nightly apt update/upgrade).

The problem of building ELOG is that it needs a development machine with C++ and dependencies installed. This is not present (or forbidden) in production machine/VM...
End users need simple package (rpm/pkg/*) to install it as all other products, with the confidence that this package has been testing...
Also, "git clone and make" should be surprising, as the devs use a particular environment that should be different from user's one. 

The future is maybe something more universal as Flatpak/SNAP/... 

Btw thanks for ELOG program and support.

Bye
Laurent
             icon2.gif   Re: no availability of el8 and el9 rpm, posted by Stefan Ritt on Thu Feb 22 08:12:28 2024 
> I spent one hour yesterday to install almalinux in VM on my laptop, clone repo, rebuild ELOG RPM, install the new rpm and start elogd. 
> You should have several VM on a shield for that :-P 

Right. One hour to install linux X, another hour for linux Y. Building RPMs is a constant challenge taking lots of time. If we 
find someone who volunteers to build the RPMs and EXEs from the sources and takes over the responsibility for the next years, 
I would be more than happy to upload the resulting files. I simply don't have time for that given all my other responsibilities.

Best,
Stefan
                icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Thu Feb 22 11:59:03 2024 
> > I spent one hour yesterday to install almalinux in VM on my laptop, clone repo, rebuild ELOG RPM, install the new rpm and start elogd. 
> > You should have several VM on a shield for that :-P 
> 
> Right. One hour to install linux X, another hour for linux Y. Building RPMs is a constant challenge taking lots of time. If we 
> find someone who volunteers to build the RPMs and EXEs from the sources and takes over the responsibility for the next years, 
> I would be more than happy to upload the resulting files. I simply don't have time for that given all my other responsibilities.
> 
> Best,
> Stefan

Hi Stephan,

I understand your time problem. In fact, the "One hour" is the kickstart. Update is poweron VM, dnf update, git clone & rpmbuild x.y.z, then scp *.rpm to website. 10 mins. It could be scripted on your dev server if any VM manager is available from it.

You can also use automatic build plaform as COPR (https://copr.fedorainfracloud.org/) for RPM, and Bitbucket for Debian/Ubuntu (native). Bitbucket accepts OSS projects for Free.

With BitBucket, it's possible to configure personal runners for CI/CD (systems with pipeline client installed, as RHEL, Fedora, Windows, etc...). The pipeline scripts can build, test and generate the packages automatically, depend on system runners. 
As CI/CD, the process is automatically done after commits in git repo... A lot of work to make it in place, but when it's running, the delivery process is done
This is also possible with GitLab and other big platorms.

Maybe you should try. 

For my curiosity, I've just clone ELOG repo on Bitbucket to try the process. That's pity : pipelines are currently broken (incident traced in status page https://status.atlassian.com/). 
The goal is to build elog and pkg file for Ubuntu (docker images list : https://status.atlassian.com/). Next steps should to create a AlmaLinux VM to try RPM builds. 

Have nice day,
Laurent
                   icon2.gif   Re: no availability of el8 and el9 rpm, posted by Stefan Ritt on Fri Feb 23 08:40:26 2024 bitbucket-pipelines.yml
> For my curiosity, I've just clone ELOG repo on Bitbucket to try the process. That's pity : pipelines are currently broken (incident traced in status page https://status.atlassian.com/). 
> The goal is to build elog and pkg file for Ubuntu (docker images list : https://status.atlassian.com/). Next steps should to create a AlmaLinux VM to try RPM builds. 

I fixed the bitbucket pipeline. I compiled it for an (old) GCC 6.3, and even if I installed cmake there, it was not running (maybe I needed cmake3?). Anyhow, I switched GCC 10.2 and now it's fine.

> With BitBucket, it's possible to configure personal runners for CI/CD (systems with pipeline client installed, as RHEL, Fedora, Windows, etc...). The pipeline scripts can build, test and generate the packages automatically, depend on system runners. 
> As CI/CD, the process is automatically done after commits in git repo... A lot of work to make it in place, but when it's running, the delivery process is done
> This is also possible with GitLab and other big platorms.

As you saw I use the bitbucket pipeline for CI/CD. The current bitbucket-pipelines.yml is pretty simple (see attachment). If you make me one which does the rpmbuild automatically, I'm more than happy to upload and use it. The downside there is that it only works for so long. As you saw at the 
error above, the pipeline worked a few years ago when I installed it. But in meantime things changed apparently and need to be fixed. ELOG is around since last century (literally!), and I'm kind of tired to fix things every once in a while. If somebody else could take over the responsibility to 
deliver the RPMs I would be more than delighted.

Stefan
                      icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Fri Feb 23 18:00:41 2024 elog-EL7_c11_patch.diffBitbucket_pipeline_with_elx.pngBitbucket_access_to_artifacts.pngbitbucket-pipelines.yml

Hi Stefan,

> As you saw I use the bitbucket pipeline for CI/CD. The current bitbucket-pipelines.yml is pretty simple (see attachment). If you make me one which does the rpmbuild automatically, I'm more than happy to upload and use it. The downside there is that it only works for so long. As you saw at the
> error above, the pipeline worked a few years ago when I installed it. But in meantime things changed apparently and need to be fixed. ELOG is around since last century (literally!), and I'm kind of tired to fix things every once in a while. If somebody else could take over the responsibility to
> deliver the RPMs I would be more than delighted.

Good news ! I thought the bitbucket-pipelines.yml was automatically added when importing the repo :-P

Btw, i try to update it as enclosed :

  • first step : build, install, start and test Web connection
  • build on ELx in // with artifacts
    • on centos7
    • on centos8
    • on centos-stream-9
  • automatic deployment on ... where you want. You can push to your website the files by sftp/scp using dedicated account/key using secrets in bitbuckket...

 

Manually, the artifacts (rpm files) are also available from website in pipeline's steps, Artifacts tab and download button.

 

NB : The ELOG version is statically set in pipeline script (3.1.5) so this script need to be updated with git one by bitbuecket vars or script command to retrieve it from src.

 

One more thing : the elog.spec.template must be patched to build last ELOG source on EL7. Without, an error occurs on nullptr usage and C++ must be set to C11 rules... See enclosed elog-EL7_c11_patch.diff .

Now, the Debian/Ubuntu PKGs generation have to be added. Need google as I do not do that for 20 years :-P

Bye

Laurent

 

                         icon2.gif   Re: no availability of el8 and el9 rpm, posted by Stefan Ritt on Mon Feb 26 17:39:56 2024 

Many thanks for your files and instructions. I integrated this into the official elog pipeline, so now the RPMs can be downloaded from https://elog.psi.ch/elog/download.html and they will be updated automatically after each commit. If you succeed with any Debian/Ubunto I'm happy to add that. What's missing now is an easy way to compile for Windows (which I don't have anymore).

Stefan

                            icon2.gif   Re: no availability of el8 and el9 rpm, posted by Antonio Bulgheroni on Mon Feb 26 21:18:23 2024 

+1 for a Windows pipeline!

 

Stefan Ritt wrote:

Many thanks for your files and instructions. I integrated this into the official elog pipeline, so now the RPMs can be downloaded from https://elog.psi.ch/elog/download.html and they will be updated automatically after each commit. If you succeed with any Debian/Ubunto I'm happy to add that. What's missing now is an easy way to compile for Windows (which I don't have anymore).

Stefan

 

                            icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Mon Feb 26 22:23:05 2024 

Hi Stefan,

Nice to have up to date RPMs.

For .DEB, I contact the Ubuntu maintainer for its build script, and cool, he replied that he's searching for it. That's could help me to generate the deb more rapidly...

For Windows target, It's supported in Bitbucket but only with private agent :-(

So I tried to build using docker hub MSVC image (abrarov/msvc-2019) but pipeline fails to retrieve the image. Maybe I need to swipe on alternative images, or these images with MS software are unaccepted from Atlassian...

Also, I tried to crosscompiling ELOG Win32 from Linux with g++-mingw-w64-x86-64, but Makefile/sources need to be patched to manage this 'platform'... For the moment, it fails. :-(

Next solution : use Wine in Debian image to build Elog with mingwin as I know that it works (under Windows :-)). Will be tested after all...

.

Laurent

Stefan Ritt wrote:

Many thanks for your files and instructions. I integrated this into the official elog pipeline, so now the RPMs can be downloaded from https://elog.psi.ch/elog/download.html and they will be updated automatically after each commit. If you succeed with any Debian/Ubunto I'm happy to add that. What's missing now is an easy way to compile for Windows (which I don't have anymore).

Stefan

 

                               icon2.gif   Re: no availability of el8 and el9 rpm, posted by Antonio Bulgheroni on Tue Feb 27 06:59:06 2024 

Many thanks for all your efforts!

Laurent Jean-Rigaud wrote:

Hi Stefan,

Nice to have up to date RPMs.

For .DEB, I contact the Ubuntu maintainer for its build script, and cool, he replied that he's searching for it. That's could help me to generate the deb more rapidly...

For Windows target, It's supported in Bitbucket but only with private agent :-(

So I tried to build using docker hub MSVC image (abrarov/msvc-2019) but pipeline fails to retrieve the image. Maybe I need to swipe on alternative images, or these images with MS software are unaccepted from Atlassian...

Also, I tried to crosscompiling ELOG Win32 from Linux with g++-mingw-w64-x86-64, but Makefile/sources need to be patched to manage this 'platform'... For the moment, it fails. :-(

Next solution : use Wine in Debian image to build Elog with mingwin as I know that it works (under Windows :-)). Will be tested after all...

.

Laurent

Stefan Ritt wrote:

Many thanks for your files and instructions. I integrated this into the official elog pipeline, so now the RPMs can be downloaded from https://elog.psi.ch/elog/download.html and they will be updated automatically after each commit. If you succeed with any Debian/Ubunto I'm happy to add that. What's missing now is an easy way to compile for Windows (which I don't have anymore).

Stefan

 

 

                               icon2.gif   Re: no availability of el8 and el9 rpm, posted by Stefan Ritt on Tue Feb 27 07:35:15 2024 
Laurent Jean-Rigaud wrote:

For Windows target, It's supported in Bitbucket but only with private agent :-(

So I tried to build using docker hub MSVC image (abrarov/msvc-2019) but pipeline fails to retrieve the image. Maybe I need to swipe on alternative images, or these images with MS software are unaccepted from Atlassian...

Also, I tried to crosscompiling ELOG Win32 from Linux with g++-mingw-w64-x86-64, but Makefile/sources need to be patched to manage this 'platform'... For the moment, it fails. :-(

Next solution : use Wine in Debian image to build Elog with mingwin as I know that it works (under Windows :-)). Will be tested after all...

For Windows it's more than just getting the .exe. Users want an installer. I used the Nullsoft Scriptable Installer (NSI), but I have no clue if this still works today. But there is still the elog.nsi script in the repository. Next, users want elogd as a service running in the background as a "service". I'm pretty sure the old way of doing that has changed and one would at least have to test this. Unfortunatley I switched to MacOSX about ten years ago (actually most of ELOG has been developed under Windows, but these days are gone), so I'm kind of illiterate in the Windows world now and don't have any time to change that.

Stefan

 

                                  icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Tue Feb 27 16:55:39 2024 

Elogd for windows has an option -install which normally does it. Is it working on last Windows version (or the one enclosed in elog:Forum/69664) ?

If Yes, a simple install-as-a-service.bat can be added to archive :-)

.

Laurent

 

Stefan Ritt wrote:
Laurent Jean-Rigaud wrote:

For Windows target, It's supported in Bitbucket but only with private agent :-(

So I tried to build using docker hub MSVC image (abrarov/msvc-2019) but pipeline fails to retrieve the image. Maybe I need to swipe on alternative images, or these images with MS software are unaccepted from Atlassian...

Also, I tried to crosscompiling ELOG Win32 from Linux with g++-mingw-w64-x86-64, but Makefile/sources need to be patched to manage this 'platform'... For the moment, it fails. :-(

Next solution : use Wine in Debian image to build Elog with mingwin as I know that it works (under Windows :-)). Will be tested after all...

For Windows it's more than just getting the .exe. Users want an installer. I used the Nullsoft Scriptable Installer (NSI), but I have no clue if this still works today. But there is still the elog.nsi script in the repository. Next, users want elogd as a service running in the background as a "service". I'm pretty sure the old way of doing that has changed and one would at least have to test this. Unfortunatley I switched to MacOSX about ten years ago (actually most of ELOG has been developed under Windows, but these days are gone), so I'm kind of illiterate in the Windows world now and don't have any time to change that.

Stefan

 

 

                                  icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Mon Mar 4 10:10:50 2024 Build_started.txt

Hi Stefan,

Some updates for Windows version.

I spent last WE to try to build ELOG on Windows from MSVCODE, MSCV, crosschain tool under linux etc, but in vain.

ELOG MSVC projects file are obsolete for last MS C++, and after migration, so much error or missing libs for SSL/Ldap/krb5 which should be built... I drop the sponge :-P

With mingw64 under Linux (docker/Debian), the code has also to be updated (C++11), but I don't get a build after all (also libs missing and must be built).

Finally, I can build Windows version from Windows with CygWin gcc-c++ as I did in the past. All the dependencies are available from CygWin installer. I got problems with strlcpy file missing, need to drop inlcude from elog.c and elogd.h as mxml doesn't include it anymore...

I find a Win64 CI/CD solution on AppVeyor which is free for OSS project. After creating account and add link to my ELOG test Bitbucket repo, ad new files (appveyor.yml, buildming script, update NSIS script for CygWin DDL, add tool for service), it builds automatically an elog-ver-release.exe artifact : (current build from GIT with SSL/LDAP/KRB5 available on month up to March 3, 2024 : https://ci.appveyor.com/api/buildjobs/logp7r8f0kcjq9pp/artifacts/elog-3.1.5-a720145.exe)

I installed this NSIS bundle on my PC and it's starting fine as a service.

The link info from EXE :

$ ldd /cygdrive/c/Program\ Files\ \(x86\)/ELOG/elogd.exe
        ntdll.dll => /cygdrive/c/Windows/SYSTEM32/ntdll.dll (0x7ffdb1fb0000)
        KERNEL32.DLL => /cygdrive/c/Windows/System32/KERNEL32.DLL (0x7ffdb0dc0000)
        KERNELBASE.dll => /cygdrive/c/Windows/System32/KERNELBASE.dll (0x7ffdaf950000)
        cygwin1.dll => /cygdrive/c/Program Files (x86)/ELOG/cygwin1.dll (0x7ffcedc30000)
        cygkrb5-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygkrb5-3.dll (0x3fe0a0000)
        cyglber-2.dll => /cygdrive/c/Program Files (x86)/ELOG/cyglber-2.dll (0x3fe040000)
        cygldap-2.dll => /cygdrive/c/Program Files (x86)/ELOG/cygldap-2.dll (0x3fdf20000)
        cygssl-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygssl-3.dll (0x3fd0d0000)
        cyggcc_s-seh-1.dll => /cygdrive/c/Program Files (x86)/ELOG/cyggcc_s-seh-1.dll (0x3ff1d0000)
        cygstdc++-6.dll => /cygdrive/c/Program Files (x86)/ELOG/cygstdc++-6.dll (0x3fcee0000)
        cygk5crypto-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygk5crypto-3.dll (0x3fe170000)
        cygkrb5support-0.dll => /cygdrive/c/Program Files (x86)/ELOG/cygkrb5support-0.dll (0x3fe080000)
        cygcom_err-2.dll => /cygdrive/c/Program Files (x86)/ELOG/cygcom_err-2.dll (0x3ffe90000)
        cygintl-8.dll => /cygdrive/c/Program Files (x86)/ELOG/cygintl-8.dll (0x3fe450000)
        cygcrypto-1.1.dll => /cygdrive/c/Program Files (x86)/ELOG/cygcrypto-1.1.dll (0x3ffbc0000)
        cygsasl2-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygsasl2-3.dll (0x3fd3e0000)
        cygssl-1.1.dll => /cygdrive/c/Program Files (x86)/ELOG/cygssl-1.1.dll (0x3fd170000)
        cygcrypto-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygcrypto-3.dll (0x3ff800000)
        cygiconv-2.dll => /cygdrive/c/Program Files (x86)/ELOG/cygiconv-2.dll (0x3fe540000)
        cygz.dll => /cygdrive/c/Program Files (x86)/ELOG/cygz.dll (0x3fc790000)

I will send you the files/patchs if AppVeyor could be used for Windows CI/CD in your project.

Bye,

Laurent

NB: the AppVeyor build log enclosed, need some cleanup...

 

Stefan Ritt wrote:
Laurent Jean-Rigaud wrote:

For Windows target, It's supported in Bitbucket but only with private agent :-(

So I tried to build using docker hub MSVC image (abrarov/msvc-2019) but pipeline fails to retrieve the image. Maybe I need to swipe on alternative images, or these images with MS software are unaccepted from Atlassian...

Also, I tried to crosscompiling ELOG Win32 from Linux with g++-mingw-w64-x86-64, but Makefile/sources need to be patched to manage this 'platform'... For the moment, it fails. :-(

Next solution : use Wine in Debian image to build Elog with mingwin as I know that it works (under Windows :-)). Will be tested after all...

For Windows it's more than just getting the .exe. Users want an installer. I used the Nullsoft Scriptable Installer (NSI), but I have no clue if this still works today. But there is still the elog.nsi script in the repository. Next, users want elogd as a service running in the background as a "service". I'm pretty sure the old way of doing that has changed and one would at least have to test this. Unfortunatley I switched to MacOSX about ten years ago (actually most of ELOG has been developed under Windows, but these days are gone), so I'm kind of illiterate in the Windows world now and don't have any time to change that.

Stefan

 

 

                                     icon2.gif   Re: no availability of el8 and el9 rpm, posted by Stefan Ritt on Tue Dec 10 15:34:41 2024 

People are keeping me asking for a Windows installer. Is this now properly working, also under Windows 11? If you send me the executable, I could upload it to the distribution.

Do people have to install cygwin before they can use it, or will the executable runn just by itself? If I understand correctly, the MinGW package would not require a runtime library, right?

Best,
Stefan

Laurent Jean-Rigaud wrote:

Hi Stefan,

Some updates for Windows version.

I spent last WE to try to build ELOG on Windows from MSVCODE, MSCV, crosschain tool under linux etc, but in vain.

ELOG MSVC projects file are obsolete for last MS C++, and after migration, so much error or missing libs for SSL/Ldap/krb5 which should be built... I drop the sponge :-P

With mingw64 under Linux (docker/Debian), the code has also to be updated (C++11), but I don't get a build after all (also libs missing and must be built).

Finally, I can build Windows version from Windows with CygWin gcc-c++ as I did in the past. All the dependencies are available from CygWin installer. I got problems with strlcpy file missing, need to drop inlcude from elog.c and elogd.h as mxml doesn't include it anymore...

I find a Win64 CI/CD solution on AppVeyor which is free for OSS project. After creating account and add link to my ELOG test Bitbucket repo, ad new files (appveyor.yml, buildming script, update NSIS script for CygWin DDL, add tool for service), it builds automatically an elog-ver-release.exe artifact : (current build from GIT with SSL/LDAP/KRB5 available on month up to March 3, 2024 : https://ci.appveyor.com/api/buildjobs/logp7r8f0kcjq9pp/artifacts/elog-3.1.5-a720145.exe)

I installed this NSIS bundle on my PC and it's starting fine as a service.

The link info from EXE :

$ ldd /cygdrive/c/Program\ Files\ \(x86\)/ELOG/elogd.exe
        ntdll.dll => /cygdrive/c/Windows/SYSTEM32/ntdll.dll (0x7ffdb1fb0000)
        KERNEL32.DLL => /cygdrive/c/Windows/System32/KERNEL32.DLL (0x7ffdb0dc0000)
        KERNELBASE.dll => /cygdrive/c/Windows/System32/KERNELBASE.dll (0x7ffdaf950000)
        cygwin1.dll => /cygdrive/c/Program Files (x86)/ELOG/cygwin1.dll (0x7ffcedc30000)
        cygkrb5-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygkrb5-3.dll (0x3fe0a0000)
        cyglber-2.dll => /cygdrive/c/Program Files (x86)/ELOG/cyglber-2.dll (0x3fe040000)
        cygldap-2.dll => /cygdrive/c/Program Files (x86)/ELOG/cygldap-2.dll (0x3fdf20000)
        cygssl-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygssl-3.dll (0x3fd0d0000)
        cyggcc_s-seh-1.dll => /cygdrive/c/Program Files (x86)/ELOG/cyggcc_s-seh-1.dll (0x3ff1d0000)
        cygstdc++-6.dll => /cygdrive/c/Program Files (x86)/ELOG/cygstdc++-6.dll (0x3fcee0000)
        cygk5crypto-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygk5crypto-3.dll (0x3fe170000)
        cygkrb5support-0.dll => /cygdrive/c/Program Files (x86)/ELOG/cygkrb5support-0.dll (0x3fe080000)
        cygcom_err-2.dll => /cygdrive/c/Program Files (x86)/ELOG/cygcom_err-2.dll (0x3ffe90000)
        cygintl-8.dll => /cygdrive/c/Program Files (x86)/ELOG/cygintl-8.dll (0x3fe450000)
        cygcrypto-1.1.dll => /cygdrive/c/Program Files (x86)/ELOG/cygcrypto-1.1.dll (0x3ffbc0000)
        cygsasl2-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygsasl2-3.dll (0x3fd3e0000)
        cygssl-1.1.dll => /cygdrive/c/Program Files (x86)/ELOG/cygssl-1.1.dll (0x3fd170000)
        cygcrypto-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygcrypto-3.dll (0x3ff800000)
        cygiconv-2.dll => /cygdrive/c/Program Files (x86)/ELOG/cygiconv-2.dll (0x3fe540000)
        cygz.dll => /cygdrive/c/Program Files (x86)/ELOG/cygz.dll (0x3fc790000)

I will send you the files/patchs if AppVeyor could be used for Windows CI/CD in your project.

Bye,

Laurent

NB: the AppVeyor build log enclosed, need some cleanup...

 

Stefan Ritt wrote:
Laurent Jean-Rigaud wrote:

For Windows target, It's supported in Bitbucket but only with private agent :-(

So I tried to build using docker hub MSVC image (abrarov/msvc-2019) but pipeline fails to retrieve the image. Maybe I need to swipe on alternative images, or these images with MS software are unaccepted from Atlassian...

Also, I tried to crosscompiling ELOG Win32 from Linux with g++-mingw-w64-x86-64, but Makefile/sources need to be patched to manage this 'platform'... For the moment, it fails. :-(

Next solution : use Wine in Debian image to build Elog with mingwin as I know that it works (under Windows :-)). Will be tested after all...

For Windows it's more than just getting the .exe. Users want an installer. I used the Nullsoft Scriptable Installer (NSI), but I have no clue if this still works today. But there is still the elog.nsi script in the repository. Next, users want elogd as a service running in the background as a "service". I'm pretty sure the old way of doing that has changed and one would at least have to test this. Unfortunatley I switched to MacOSX about ten years ago (actually most of ELOG has been developed under Windows, but these days are gone), so I'm kind of illiterate in the Windows world now and don't have any time to change that.

Stefan

 

 

 

                                        icon2.gif   Re: no availability of el8 and el9 rpm, posted by Konstantin Olchanski on Tue Dec 10 19:23:32 2024 
> People are keeping me asking for a Windows installer

My Windows-11 laptop may free up in January and I could look at builds of elog and midas, but I know nothing about making Windows installers...

K.O.
icon4.gif   Probleme TLS, posted by Olivier MARTIN on Fri Dec 6 09:39:44 2024 
Hello,
I would like to notify by email as soon as an entry is created or modified.
I declared my SMTP which uses TLS security.
The following error message appears : Erreur d'envoi de mail via "smtp.xxxx.xxx.xxx.fr": 5.7.0 Must issue a STARTTLS command first
Is there a solution ?

    icon2.gif   Re: Probleme TLS, posted by Stefan Ritt on Fri Dec 6 10:59:52 2024 

TSL is not implemented in ELOG. Maybe I find time some day to do that, but if we have any volunteers in our community who could help me with that I would appreciate.

Stefan

Olivier MARTIN wrote:
Hello,
I would like to notify by email as soon as an entry is created or modified.
I declared my SMTP which uses TLS security.
The following error message appears : Erreur d'envoi de mail via "smtp.xxxx.xxx.xxx.fr": 5.7.0 Must issue a STARTTLS command first
Is there a solution ?

 

       icon2.gif   Re: Probleme TLS, posted by Olivier MARTIN on Mon Dec 9 10:23:32 2024 

Thanks,

Does email notification from a Gmail address work? It is noted that port 465 must be used for SSL use? Is this correct :


SMTP host : smtp.gmail.com

SMTP port = 465

SMTP username = monadresse@gmail.com

And, should I enter the password attached to my Gmail email and where?

Thanks in advance.

 

Stefan Ritt wrote:

TSL is not implemented in ELOG. Maybe I find time some day to do that, but if we have any volunteers in our community who could help me with that I would appreciate.

Stefan

Olivier MARTIN wrote:
Hello,
I would like to notify by email as soon as an entry is created or modified.
I declared my SMTP which uses TLS security.
The following error message appears : Erreur d'envoi de mail via "smtp.xxxx.xxx.xxx.fr": 5.7.0 Must issue a STARTTLS command first
Is there a solution ?

 

 

          icon2.gif   Re: Probleme TLS, posted by Konstantin Olchanski on Mon Dec 9 21:55:53 2024 
What Stefan meant to say is that Elog does not implement sending email using encrypted SMTP over TLS.

In theory it could be implemented, but if you try to use it, you may find that most
destinations will reject you unless you have configured correct SPF records.

https://en.wikipedia.org/wiki/Sender_Policy_Framework

Even if you do everything right, joints like gmail may still reject you because
their AI decides you are a spammer, or just because they do not like you, and good
luck making them change their mind.

At TRIUMF, we configure elog to use unencrypted and unauthenticated SMTP
to smtp.triumf.ca, which has special rules to accept our email (no questions asked),
and our Microsoft email instance is configured to accept and forward email from
smpt.triumf.ca. Everything is done right, but we still see Fermilab's Microsoft
rejecting TRIUMF's Microsoft email once in a while.

K.O.
icon3.gif   Reuqest to extract X-Forwarded-Name and X-Forwarded-Email when using webserver, posted by Liam Gaffney on Sun Dec 8 22:00:32 2024 

When using the Webserver authentication in combination with "File" and "Self register = 3", it is possible to keep track of registrations and control access still. This is very useful, and upon clicking on the logbook for the first time, the user is asked to register by typing their username, full name and email address.

First issue here is that they can still edit the box with their username, which might cause confusion if somebody decides to choose a different username and is then surprised about why they cannot automatically login again. Is it possible to lock this field from being edited?

The second issue is more minor, but the user has to manually type their name and email address, even though the webserver may already be able to provide this information in the headers. Specifically, it would be useful to read the name from the X-Forwarded-Name header and email address from the X-Forwarded-Email header. 

My config file snippet is below:

Authentication = Webserver, File
allow password change = 0
Password file = webserver.passwords
Self register    = 3
 

icon1.gif   Global change of links/file path, posted by Dr Marta Divall on Mon Dec 2 10:36:41 2024 

Dear All, 

 We have been using the ELOG for several years and had inserted hyper-links instead of whole files in order to save storage space. From this month our server is moved to a new location with a new address. Is there a way for me to retrospectivelly replace all addresses with the new server file pass?

Thanks in advance, 

Best regards,

 Marta

    icon2.gif   Re: Global change of links, posted by Stefan Ritt on Fri Dec 6 10:58:57 2024 

You would have to access the raw elgo database files (which are pure ASCII files) and write some script which goes through all files and changes the URLs. 

Stefan

Dr Marta Divall wrote:

Dear All, 

 We have been using the ELOG for several years and had inserted hyper-links instead of whole files in order to save storage space. From this month our server is moved to a new location with a new address. Is there a way for me to retrospectivelly replace all addresses with the new server file pass?

Thanks in advance, 

Best regards,

 Marta

 

       icon2.gif   Re: Global change of links, posted by Dr Marta Divall on Fri Dec 6 11:06:28 2024 

Thanks!

Stefan Ritt wrote:

You would have to access the raw elgo database files (which are pure ASCII files) and write some script which goes through all files and changes the URLs. 

Stefan

Dr Marta Divall wrote:

Dear All, 

 We have been using the ELOG for several years and had inserted hyper-links instead of whole files in order to save storage space. From this month our server is moved to a new location with a new address. Is there a way for me to retrospectivelly replace all addresses with the new server file pass?

Thanks in advance, 

Best regards,

 Marta

 

 

ELOG V3.1.5-3fb85fa6