Demo Discussion
Forum Config Examples Contributions Vulnerabilities
  Discussion forum about ELOG, Page 459 of 808  Not logged in ELOG logo
ID Date Icon Author Author Emaildown Category OS ELOG Version Subject
  69580   Fri Oct 21 17:09:37 2022 Reply Laurent Jean-Rigaudlollspam@free.frRequestWindows3-1-4Re: Up to date windows version
Hi Finn,

I've just tested the same archive on new laptop with Windows 11. 
I unzip it and double-click elogd.exe file, bypass defender warning and the server is running.
To test, i open localhost:8080 on web client and it displays the demo logbook.

Btw i didn't test it as a service. What are the 2 libs you said it misses ?

.
Laurent

> 
> Hi Laurent
> 
> I've found the attached zip files in post 69491. The one containing the ELOG probgram libary won't run on my test laptop - the service wont start
> There is in the same thread a post from Just Keijser containing only the executables, and it won't start either. Starting the elog.exe though gives me that the exe is missing 2 dll files which can be downloaded seperately.
> It is not easy cause there are several versions of the 2 dll files and only one working, but now my elog reports version ELOG V3.1.4-1ebfd06c
> 
> But this cant be the solution - if so the windows version is put to the grave
> 
> Kind Regards Finn
  69588   Fri Dec 2 14:02:49 2022 Warning Laurent Jean-Rigaudlollspam@free.frBug reportLinux3.14 EL7 EPELcustom css not loaded

Hi,

I use some CSS for each elog to resize column correcly and it seems that current ELOG version 3.14 available from EPEL for EL7 has a problem (maybe others also).

The browser console displays an error when loading ELOG logbook page (french locale ):

La feuille de style https:/xxxxx.xxx.xx/elog/MCO/1130_171749_REUNION_20221130_Q01.jpgelog-mco.css n’a pas été chargée car son type MIME, « text/html », n’est pas « text/css ».

It seems ELOG server send the css link with enclosure path (https:/xxxxx.xxx.xx/elog/MCO/1130_171749_REUNION_20221130_Q01.jpg) + css file (elog-mco.css) ?!?

I tryed to rebuild the last source from git under EL7 but it fails with LDAP libs (C++ regression already reported in elog:forum/69478). :-(

 

Thanks for help.

Laurent

  69589   Fri Dec 2 14:12:35 2022 Warning Laurent Jean-Rigaudlollspam@free.frBug fixLinux3.14 gitBuildrpm / copy .cxx in place of .c

Hi Stefan,

It seems buildrpm should be updated to take care of cpp files. Plz replace "cp <blahblah>.c ..." by "cp <blahblah>.cxx ..." .

Also, uncomment the hostname test witch activates all authentification options by default. It should be done by adding options as follow : buildrpm ver rel -ldap -ker ...

By default, i can not build elog with LDAP.

 

After that mods, rpms are builded under EL7 (w/o LDAP support which is not useful for me).

 

Bye

Laurent

  69590   Fri Dec 2 14:44:46 2022 Idea Laurent Jean-Rigaudlollspam@free.frBug reportLinux3.14 EL7 EPELRe: custom css not loaded

Update : i tryed with last git, w/o ldap support and it seems the problem is solved with CCS URL on same machine (just replace the elogd binary from EPEL by new one just build w/o LDAP support and fallback on File to login for testing).

So my problem is the error during build with LDAP auth (since using C++) :-(

...

+ cd elog-3-14
+ make USE_SSL=1 USE_LDAP=1 USE_KRB5=1 'CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml'
c++ -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -c -o mxml.o mxml/mxml.cxx
c++ -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -w -c -o crypt.o src/crypt.cxx
c++ -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -c -o strlcpy.o mxml/strlcpy.cxx
c++ -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -o elog src/elog.cxx mxml.o crypt.o strlcpy.o -lssl -lkrb5 -lldap -llber
c++ -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -w -c -o auth.o src/auth.cxx
src/auth.cxx: In function 'int auth_verify_password_ldap(LOGBOOK*, const char*, const char*, char*, int)':
src/auth.cxx:283:60: error: 'ldap_simple_bind_s' was not declared in this scope
    bind = ldap_simple_bind_s(ldap_ld, ldap_bindDN, password);
                                                            ^
src/auth.cxx:290:26: error: 'ldap_unbind' was not declared in this scope
       ldap_unbind(ldap_ld);
                          ^
src/auth.cxx:295:23: error: 'ldap_unbind' was not declared in this scope
    ldap_unbind(ldap_ld);
                       ^
src/auth.cxx: In function 'int ldap_adduser_file(LOGBOOK*, const char*, const char*, char*, int)':
src/auth.cxx:323:60: error: 'ldap_simple_bind_s' was not declared in this scope
    bind = ldap_simple_bind_s(ldap_ld, ldap_bindDN, password);
                                                            ^
src/auth.cxx:330:26: error: 'ldap_unbind' was not declared in this scope
       ldap_unbind(ldap_ld);
                          ^
src/auth.cxx:358:26: error: 'ldap_unbind' was not declared in this scope
       ldap_unbind(ldap_ld);
                          ^
src/auth.cxx:369:62: error: 'ldap_get_values' was not declared in this scope
          if((values = ldap_get_values(ldap_ld,entry,attribute)) != NULL ) {
                                                              ^
src/auth.cxx:378:35: error: 'ldap_value_free' was not declared in this scope
             ldap_value_free(values);
                                   ^
src/auth.cxx:386:23: error: 'ldap_unbind' was not declared in this scope
    ldap_unbind(ldap_ld);
                       ^
src/auth.cxx: In function 'int auth_verify_password(LOGBOOK*, const char*, const char*, char*, int)':
src/auth.cxx:593:73: error: invalid conversion from 'const char*' to 'char*' [-fpermissive]
          if (get_user_line(lbs, user, NULL, NULL, NULL, NULL, NULL, NULL) == 2) {
                                                                         ^
In file included from src/auth.cxx:30:0:
src/elogd.h:282:5: error:   initializing argument 2 of 'int get_user_line(LOGBOOK*, char*, char*, char*, char*, BOOL*, time_t*, int*)' [-fpermissive]
 int get_user_line(LOGBOOK * lbs, char *user, char *password, char *full_name, char *email,
     ^
make: *** [auth.o] Error 1
error: Bad exit status from /home/il/jeanrigaudl/rpmbuild/tmp/rpm-tmp.cKJL45 (%build)

 

Updated :

  1. from google (https://www.openldap.org/lists/openldap-technical/201104/msg00030.html), it seems it's necessary to add before "#include ldap.h" in src/auth.cxx
#define LDAP_DEPRECATED 1
  1. A cast must be added to src/auth.cxx:593 as already done somewhere with C++ commit :

         if (get_user_line(lbs, (char *) user, NULL, NULL, NULL, NULL, NULL, NULL) == 2) {
 

-> elogd builds now with ldap :-) .

I installed elogd binary and i could login and the css url problem is gone.

 

Thanks to update auth.cxx (2 mods) and buildrpm (2 mods) in git (sorry, no pull request).

 

NB : PAM can not be activated under EL7 with same type of error. I disabled the feature as i do not use it.

 

+ cd elog-3-14
+ make USE_SSL=1 USE_PAM=1 'CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml'
c++ -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_PAM -c -o mxml.o mxml/mxml.cxx
c++ -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_PAM -w -c -o crypt.o src/crypt.cxx
c++ -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_PAM -c -o strlcpy.o mxml/strlcpy.cxx
c++ -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_PAM -o elog src/elog.cxx mxml.o crypt.o strlcpy.o -lssl -lpam -llber
c++ -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_PAM -w -c -o auth.o src/auth.cxx
src/auth.cxx: In function 'int elog_conv(int, const pam_message**, pam_response**, void*)':
src/auth.cxx:452:59: error: invalid conversion from 'void*' to 'pam_response*' [-fpermissive]
    if((*resp = calloc(num_msg, sizeof(struct pam_response))) == NULL)
                                                           ^
src/auth.cxx:457:33: error: invalid conversion from 'void*' to 'const char*' [-fpermissive]
    if(!(resptok = strdup(my_data))) {
                                 ^
In file included from src/elogd.h:46:0,
                 from src/auth.cxx:30:
/usr/include/string.h:172:14: error:   initializing argument 1 of 'char* strdup(const char*)' [-fpermissive]
 extern char *strdup (const char *__s)
              ^
make: *** [auth.o] Error 1
error: Bad exit status from /home/il/jeanrigaudl/rpmbuild/tmp/rpm-tmp.V2LE4L (%build)

 

 

 

 

Laurent Jean-Rigaud wrote:

Hi,

I use some CSS for each elog to resize column correcly and it seems that current ELOG version 3.14 available from EPEL for EL7 has a problem (maybe others also).

The browser console displays an error when loading ELOG logbook page (french locale ):

La feuille de style https:/xxxxx.xxx.xx/elog/MCO/1130_171749_REUNION_20221130_Q01.jpgelog-mco.css n’a pas été chargée car son type MIME, « text/html », n’est pas « text/css ».

It seems ELOG server send the css link with enclosure path (https:/xxxxx.xxx.xx/elog/MCO/1130_171749_REUNION_20221130_Q01.jpg) + css file (elog-mco.css) ?!?

I tryed to rebuild the last source from git under EL7 but it fails with LDAP libs (C++ regression already reported in elog:forum/69478). :-(

 

Thanks for help.

Laurent

 

  69617   Mon Jan 16 20:18:12 2023 Question Laurent Jean-Rigaudlollspam@free.frQuestionLinuxV3.1.4-2e0f4719Fail to upload enclosure in ELOG

Hi,

I currently testing last ELOG version from git in a docker with LDAP activated (https://hub.docker.com/r/usinagaz/elog-ldap). The goal is to use it on Synology NAS server, associated with local LDAP server.

 

The reverse proxy is done by embedded DSM nginx, according to FDQN associated to ELOG service (elog.corp.com). In Docker, URL is set to elog.corp.com.

All is good, but when I post any enclosure in any elog post, the elogd exits and docker is automatically restarted. The browser shows an error 405 generated by nginx server.

 

Do you have any idea of the cause of this problem  ?

 

Thanks for help.

Laurent

  69631   Wed Jan 25 21:44:51 2023 Reply Laurent Jean-Rigaudlollspam@free.frQuestionLinux3.1.3Re: ssl certificate

Hi Giuseppe,

The new certificate files should be copy under ssl folder (/usr/local/elog/ssl or /usr/share/elog/ssl by example, closed to templates and script directories) in place of the embedded (autosigned) certificate files enclosed with ELOG source.

It seems that there is no parameter to set a custom path.

SSL = <0 | 1>
Turn on Secure Socket Layer transport. If SSL is on, one can connect via https://... to the elogd daemon. If the URL = directive is used, make sure to use https://... instead of http://... there. The ELOG distribution contains a simple self-signed certificate in the ssl subdirectory. One can replace this certificate and key with a real ceritficate to avoid browser pop-up windows warning about the self-signed certificate. The default for this option is 0.

 

 

Giuseppe Cucinotta wrote:

We obtained a certificate from let's encrypt in order to replace the self signed certificate provided with elog. We copied the new certificates replacing the older server.crt

The problem is that when restarted elog raises an error related to the fact it is looking for server.crt and it doesn't find it anymore.

I searched in elog config file in order to find a way to indicate the new certificate but I didn't find how to manage this issue.

Any suggestion?

 

  69643   Fri Feb 3 15:51:07 2023 Reply Laurent Jean-Rigaudlollspam@free.frQuestionLinux3.1.4Re: Installing Elog on Linux Oracle 9 and missing libssl.so.10

Hi Daniel,

The RPM has been build for EL7 so SSL share libs should be different with the one provided by EL9. :-)

Try to rebuild from tarball source with enclosed buildrpm script (or with elog srpms if you find any : rpm -i elog*.src.rpm && vim ~/rpmbuild/SPEC/elog.spec # update build options as SSL/LDAP/PAM... && rpmbuild -bb ~/rpmbuild/SPEC/elog.spec ).

Gûd luck

 

Daniel Sajdyk wrote:

Hello,

I  tried to install Elog 3.1.4 from rpm on Oracle Linux 9 with command:

sudo dnf localinstall elog-3.1.4-3.el7.x86_64.rpm

But I got error:

Last metadata expiration check: 0:08:06 ago on Thu 02 Feb 2023 10:35:13 CET.
Error:
 Problem: conflicting requests
  - nothing provides libssl.so.10()(64bit) needed by elog-3.1.4-3.el7.x86_64
  - nothing provides libssl.so.10(libssl.so.10)(64bit) needed by elog-3.1.4-3.el7.x86_64
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

Using dnf I installed libssl.so.11 (cannot find version 10) and it doesn't help. So my question is: can I use one of proposes by dnf solution as:

  1. --skip-broken
  2. --nobest

Does Elog will work stabilityy after that?

Best Regards

 

  69664   Wed Apr 12 00:09:08 2023 Reply Laurent Jean-Rigaudlollspam@free.frInfoLinux | Mac OSX3.1.5Re: New elog version 3.1.5

Hi,

It's possible to build elogd under windows with cygwin, but not sure that is the best as it requires a lot of dependencies that should be included to dist package to be runnable everywhere.

After

  • installation of dependencies (gcc-g++, make, libssl1.1, libssl-devel, opendlap-devel, libopenldap2, libkrb5-devel, libkrb5_3) using CygWin setup program,
  • instalkation of git tool and clone the git repo (git clone https://bitbucket.org/ritt/elog --recursive),
  • modification of Makefile to build with Kerberos/ldap/ssl support,

from cygwin bash under Windows 11, you can build elog :

/cygdrive/d/Devel/elog $ make
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -o elog src/elog.cxx mxml.o crypt.o strlcpy.o -lssl -lkrb5 -lldap -llber
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -w -c -o auth.o src/auth.cxx
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -o elogd src/elogd.cxx auth.o mxml.o crypt.o strlcpy.o -lssl -lkrb5 -lldap -llber
src/elogd.cxx:217:6: warning: ‘_timezone’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  217 | long _timezone;
      |      ^~~~~~~~~
src/elogd.cxx: In function ‘int el_submit(LOGBOOK*, int, BOOL, const char*, char (*)[1500], char (*)[1500], int, const char*, const char*, const char*, const char*, const char (*)[256], BOOL, const char*, const char*)’:
src/elogd.cxx:4963:47: warning: ‘%s’ directive writing up to 149999 bytes into a region of size between 100103 and 250102 [-Wformat-overflow=]
 4963 |       sprintf(message + strlen(message), "%s: %s\n", attr_name[i], attrib[i]);
      |                                               ^~
src/elogd.cxx:4963:14: note: ‘sprintf’ output between 4 and 300002 bytes into a destination of size 250104
 4963 |       sprintf(message + strlen(message), "%s: %s\n", attr_name[i], attrib[i]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void show_edit_form(LOGBOOK*, int, BOOL, BOOL, BOOL, BOOL, BOOL, BOOL)’:
src/elogd.cxx:9655:28: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3993 [-Wformat-overflow=]
 9655 |       sprintf(str, "Preset %s", attr_list[index]);
      |                            ^~
src/elogd.cxx:9655:14: note: ‘sprintf’ output between 8 and 150007 bytes into a destination of size 4000
 9655 |       sprintf(str, "Preset %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9676:43: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3978 [-Wformat-overflow=]
 9676 |       sprintf(str, "Preset on first reply %s", attr_list[index]);
      |                                           ^~
src/elogd.cxx:9676:14: note: ‘sprintf’ output between 23 and 150022 bytes into a destination of size 4000
 9676 |       sprintf(str, "Preset on first reply %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                     ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                     ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                     ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                     ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9717:36: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3985 [-Wformat-overflow=]
 9717 |       sprintf(str, "Preset on edit %s", attr_list[index]);
      |                                    ^~
src/elogd.cxx:9717:14: note: ‘sprintf’ output between 16 and 150015 bytes into a destination of size 4000
 9717 |       sprintf(str, "Preset on edit %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9737:41: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3980 [-Wformat-overflow=]
 9737 |       sprintf(str, "Preset on duplicate %s", attr_list[index]);
      |                                         ^~
src/elogd.cxx:9737:14: note: ‘sprintf’ output between 21 and 150020 bytes into a destination of size 4000
 9737 |       sprintf(str, "Preset on duplicate %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9758:22: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3999 [-Wformat-overflow=]
 9758 |       sprintf(str, "p%s", attr_list[index]);
      |                      ^~
src/elogd.cxx:9758:14: note: ‘sprintf’ output between 2 and 150001 bytes into a destination of size 4000
 9758 |       sprintf(str, "p%s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9776:31: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3993 [-Wformat-overflow=]
 9776 |          sprintf(str, "Preset %s", attr_list[index]);
      |                               ^~
src/elogd.cxx:9776:17: note: ‘sprintf’ output between 8 and 150007 bytes into a destination of size 4000
 9776 |          sprintf(str, "Preset %s", attr_list[index]);
      |          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9797:40: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9797 |          sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                        ^~
src/elogd.cxx:9797:17: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
 9797 |          sprintf(str, "Preset on reply %s", attr_list[index]);
      |          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9817:44: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3980 [-Wformat-overflow=]
 9817 |          sprintf(str, "Preset on duplicate %s", attr_list[index]);
      |                                            ^~
src/elogd.cxx:9817:17: note: ‘sprintf’ output between 21 and 150020 bytes into a destination of size 4000
 9817 |          sprintf(str, "Preset on duplicate %s", attr_list[index]);
      |          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void show_elog_list(LOGBOOK*, int, int, int, BOOL, char*)’:
src/elogd.cxx:20459:43: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1587 [-Wformat-overflow=]
20459 |                sprintf(str, "Icon comment %s", attrib[i]);
      |                                           ^~
src/elogd.cxx:20459:23: note: ‘sprintf’ output between 14 and 150013 bytes into a destination of size 1600
20459 |                sprintf(str, "Icon comment %s", attrib[i]);
      |                ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:20506:33: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
20506 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                                 ^~
src/elogd.cxx:20506:32: note: directive argument in the range [0, 99]
20506 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                                ^~~~~~~
src/elogd.cxx:20506:26: note: ‘sprintf’ output between 3 and 150003 bytes into a destination of size 1600
20506 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:20470:33: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
20470 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                                 ^~
src/elogd.cxx:20470:32: note: directive argument in the range [0, 99]
20470 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                                ^~~~~~~
src/elogd.cxx:20470:26: note: ‘sprintf’ output between 3 and 150003 bytes into a destination of size 1600
20470 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:21052:30: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
21052 |                sprintf(str, "%s_%d", attr_list[i], j);
      |                              ^~
src/elogd.cxx:21052:29: note: directive argument in the range [0, 99]
21052 |                sprintf(str, "%s_%d", attr_list[i], j);
      |                             ^~~~~~~
src/elogd.cxx:21052:23: note: ‘sprintf’ output between 3 and 150003 bytes into a destination of size 1600
21052 |                sprintf(str, "%s_%d", attr_list[i], j);
      |                ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:21538:45: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1588 [-Wformat-overflow=]
21538 |                   sprintf(str, "Time format %s", attr_list[i]);
      |                                             ^~
src/elogd.cxx:21538:26: note: ‘sprintf’ output between 13 and 150012 bytes into a destination of size 1600
21538 |                   sprintf(str, "Time format %s", attr_list[i]);
      |                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:21523:45: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1588 [-Wformat-overflow=]
21523 |                   sprintf(str, "Date format %s", attr_list[i]);
      |                                             ^~
src/elogd.cxx:21523:26: note: ‘sprintf’ output between 13 and 150012 bytes into a destination of size 1600
21523 |                   sprintf(str, "Date format %s", attr_list[i]);
      |                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void submit_elog(LOGBOOK*)’:
src/elogd.cxx:23293:38: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 2034 [-Wformat-overflow=]
23293 |          sprintf(str, "Subst on edit %s", attr_list[index]);
      |                                      ^~
src/elogd.cxx:23293:17: note: ‘sprintf’ output between 15 and 150014 bytes into a destination of size 2048
23293 |          sprintf(str, "Subst on edit %s", attr_list[index]);
      |          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:23323:39: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 2033 [-Wformat-overflow=]
23323 |          sprintf(str, "Subst on reply %s", attr_list[index]);
      |                                       ^~
src/elogd.cxx:23323:17: note: ‘sprintf’ output between 16 and 150015 bytes into a destination of size 2048
23323 |          sprintf(str, "Subst on reply %s", attr_list[index]);
      |          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -o elconv src/elconv.cxx -lssl -lkrb5 -lldap -llber

Copy to new dir :

  • the 3 binaries(elogd.exe, elog.exe & elconv.exe)
  • logbooks, scripts, ssl and themes folders from git clone.
  • elogd.cfg.example as elogd.cfg.

 

/cygdrive/d/Devel/elog/elog-win64 $ ldd elogd.exe
        ntdll.dll => /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll (0x7ff9796b0000)
        KERNEL32.DLL => /cygdrive/c/WINDOWS/System32/KERNEL32.DLL (0x7ff978050000)
        KERNELBASE.dll => /cygdrive/c/WINDOWS/System32/KERNELBASE.dll (0x7ff976af0000)
        cygwin1.dll => /usr/bin/cygwin1.dll (0x7ff925010000)
        cygkrb5-3.dll => /usr/bin/cygkrb5-3.dll (0x3fe4b0000)
        cygldap-2.dll => /usr/bin/cygldap-2.dll (0x3fdf70000)
        cyglber-2.dll => /usr/bin/cyglber-2.dll (0x3fe030000)
        cygssl-1.1.dll => /usr/bin/cygssl-1.1.dll (0x3ff4d0000)
        cygstdc++-6.dll => /usr/bin/cygstdc++-6.dll (0x3ff2f0000)
        cyggcc_s-seh-1.dll => /usr/bin/cyggcc_s-seh-1.dll (0x3ffc30000)
        cygk5crypto-3.dll => /usr/bin/cygk5crypto-3.dll (0x3fe600000)
        cygkrb5support-0.dll => /usr/bin/cygkrb5support-0.dll (0x3fe490000)
        cygintl-8.dll => /usr/bin/cygintl-8.dll (0x3ffa10000)
        cygcom_err-2.dll => /usr/bin/cygcom_err-2.dll (0x3fe9b0000)
        cygcrypto-1.1.dll => /usr/bin/cygcrypto-1.1.dll (0x3ffce0000)
        cygsasl2-3.dll => /usr/bin/cygsasl2-3.dll (0x3fdee0000)
        cygiconv-2.dll => /usr/bin/cygiconv-2.dll (0x3ffa30000)
        cygz.dll => /usr/bin/cygz.dll (0x3ff280000)

/cygdrive/d/Devel/elog/elog-win64 $ ls
elconv.exe  elog.exe  elogd.cfg  elogd.exe  logbooks  scripts  ssl  themes
 

/cygdrive/d/Devel/elog/elog-win64 $ ./elogd.exe
elogd 3.1.5 built Apr 12 2023, 00:01:15 revision 33884104
CKeditor detected
ImageMagick NOT detected. Image scaling will not work.
Indexing logbooks ... done
Server listening on port 8080 ...

With that, elogd starts and the site is usable.

NB: after installing imageMagick, elogd starts with activation of image manipulation features.

/cygdrive/d/Devel/elog/elog-win64 $ ./elogd.exe
elogd 3.1.5 built Apr 12 2023, 00:01:15 revision 33884104
CKeditor detected
ImageMagick detected
Indexing logbooks ... done
Server listening on port 8080 ...

For who as interested, I enclosed 2 zips, with (elog-win64_wDLL.zip) or without (elog-win64.zip) Cygwin DLL (licence: https://cygwin.com/COPYING). The build uses the current git version.

 

Regards,

Laurent

 

Finn Junker wrote:

Hi Stefan

Is there anything the community or forum can help you with or supply for creating a windows version?

Kind Regards Finn

Stefan Ritt wrote:

A new version 3.1.5 of elog has been released with all accumulated fixes over the past actually few years. I made a tar file, a RPM, but I could not compile yet a windows version.

https://elog.psi.ch/elog/download.html

Best,
Stefan

 

 

Attachment 1: elog-win64.zip
Attachment 2: elog-win64_wDLL.zip
ELOG V3.1.5-3fb85fa6