Demo Discussion
Forum Config Examples Contributions Vulnerabilities
  Discussion forum about ELOG, Page 37 of 805  Not logged in ELOG logo
New entries since:Thu Jan 1 01:00:00 1970
ID Date Icondown Author Author Email Category OS ELOG Version Subject
  69788   Sat Apr 20 18:47:37 2024 Warning David PilgramDavid.Pilgram@epost.org.ukInfoLinux3.1.4Re: Extendable list of numeric items
I have replied to this entry, because, for some reason I don't understand, if I reply to your latest entry, I am
automatically logged out.  I tried this multiple times, and also on many other entries and had no issues other than
entry 69787 - any reason for this, Stefan?

Anyway, what about MOptions? That appears to do what your example, and needs two lines in elog.cfg file:

Moptions WaferID = 1001, 1002, 1003, 1004, 1005
Extendable Options = WaferID

I've done a couple of quick tests on a test logbook I keep for such experimentation, and it appears to do all 
you have asked of it.  I added a new option 1006.  However, I found that one has to add that new one on its own, 
let the entry become proper, and then edit the entry to add the other, existing, values.   If you tick entries and 
also add a new one, then your new entry is all those listed on their own, that is you would get and new entry
in the config file such as "1002 | 1004 | 1006", rather than just 1006

This is probably an result of an unexpected use of Moptions and extendable options, rather than a bug per se.

> Hey, 
> 
> thanks for your answer. I completely get your point. However, I think my question as not precise enough.
> 
> I would like to have a numeric input, but many at the same time. When I make a new post, I would like to have an attribute 'wafer_IDs' that specifies the list of wafers this process has been performed with. So for a single post I would like to have a list like this:
> 
> wafer_IDs = numeric value, numeric value, numeric value, extendable
> 
> Note: I am not referring here to the option. The numeric values are freely chooses numbers, the only this that varies from post to post is the number of numeric values put.
> 
> Let me make an example (If the attribute were a string this would be the equivalent):
> 
> 1st post: A process that was run with 3 wafers (ID: 1000, ID: 1001 and ID: 1002):
> wafer IDs = 1000, 1001, 1002
> 
> 2nd post: A process that is run with 2 wafers (ID: 1000 and ID: 1002):
> wafer IDs = 1000, 1002
> 
> The string solves the issue, but is not as nice as having directly a list of integers.
> 
> Thanks for your help!
> 
> Best,
> 
> Nick
  69793   Wed May 15 01:07:12 2024 Warning Konstantin Olchanskiolchansk@triumf.caBug reportLinuxcommit 2eba8869elog sprintf() buffer overflows on ubuntu-22
I get the following compiler warnings about sprintf() buffer overflows. I suggest sprintf() should be replaced by std::string msprintf() from 
midas. K.O.

iris00:~/packages> git clone https://bitbucket.org/ritt/elog --recursive
Cloning into 'elog'...
remote: Enumerating objects: 18297, done.
remote: Counting objects: 100% (18297/18297), done.
remote: Compressing objects: 100% (7710/7710), done.
remote: Total 18297 (delta 11462), reused 16637 (delta 10243), pack-reused 0 (from 0)
Receiving objects: 100% (18297/18297), 14.56 MiB | 17.14 MiB/s, done.
Resolving deltas: 100% (11462/11462), done.
Submodule 'mxml' (https://bitbucket.org/tmidas/mxml) registered for path 'mxml'
Cloning into '/home/iris/packages/elog/mxml'...
remote: Enumerating objects: 356, done.        
remote: Counting objects: 100% (356/356), done.        
remote: Compressing objects: 100% (242/242), done.        
remote: Total 356 (delta 162), reused 265 (delta 112), pack-reused 0 (from 0)        
Receiving objects: 100% (356/356), 85.65 KiB | 10.71 MiB/s, done.
Resolving deltas: 100% (162/162), done.
Submodule path 'mxml': checked out '4d4b4cf17bec323a76b8a87605efec6a4822bebf'
iris00:~/packages> cd elo
elog/      elog-2012/ 
iris00:~/packages> cd elog
iris00:~/packages/elog> make
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -c -o mxml.o mxml/mxml.cxx
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -w -c -o crypt.o 
src/crypt.cxx
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -c -o strlcpy.o 
mxml/strlcpy.cxx
type git &> /dev/null; if [ $? -eq 1 ]; then REV="unknown" ;else REV=`git log -n 1 --pretty=format:"%ad - %h"`; fi; echo \#define GIT_REVISION 
\"$REV\" > src/git-revision.h
git is /bin/git
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -o elog src/elog.cxx 
mxml.o crypt.o strlcpy.o -lssl
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -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 -o elogd src/elogd.cxx 
auth.o mxml.o crypt.o strlcpy.o -lssl
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:4960:47: warning: ‘%s’ directive writing up to 149999 bytes into a region of size between 100103 and 250102 [-Wformat-overflow=]
 4960 |       sprintf(message + strlen(message), "%s: %s\n", attr_name[i], attrib[i]);
      |                                               ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 4 and 300002 bytes into a destination of size 
250104
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void show_edit_form(LOGBOOK*, int, BOOL, BOOL, BOOL, BOOL, BOOL, BOOL)’:
src/elogd.cxx:9659:28: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3993 [-Wformat-overflow=]
 9659 |       sprintf(str, "Preset %s", attr_list[index]);
      |                            ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 8 and 150007 bytes into a destination of size 
4000
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:9680:43: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3978 [-Wformat-overflow=]
 9680 |       sprintf(str, "Preset on first reply %s", attr_list[index]);
      |                                           ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 23 and 150022 bytes into a destination of size 
4000
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:9701:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9701 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                     ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 17 and 150016 bytes into a destination of size 
4000
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:9701:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9701 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                     ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 17 and 150016 bytes into a destination of size 
4000
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:9701:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9701 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                     ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 17 and 150016 bytes into a destination of size 
4000
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:9701:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9701 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                     ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 17 and 150016 bytes into a destination of size 
4000
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:9721:36: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3985 [-Wformat-overflow=]
 9721 |       sprintf(str, "Preset on edit %s", attr_list[index]);
      |                                    ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 16 and 150015 bytes into a destination of size 
4000
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:9741:41: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3980 [-Wformat-overflow=]
 9741 |       sprintf(str, "Preset on duplicate %s", attr_list[index]);
      |                                         ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 21 and 150020 bytes into a destination of size 
4000
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:9762:22: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3999 [-Wformat-overflow=]
 9762 |       sprintf(str, "p%s", attr_list[index]);
      |                      ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 2 and 150001 bytes into a destination of size 
4000
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:9780:31: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3993 [-Wformat-overflow=]
 9780 |          sprintf(str, "Preset %s", attr_list[index]);
      |                               ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 8 and 150007 bytes into a destination of size 
4000
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:9801:40: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9801 |          sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                        ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 17 and 150016 bytes into a destination of size 
4000
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:9821:44: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3980 [-Wformat-overflow=]
 9821 |          sprintf(str, "Preset on duplicate %s", attr_list[index]);
      |                                            ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 21 and 150020 bytes into a destination of size 
4000
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void show_elog_list(LOGBOOK*, int, int, int, BOOL, char*)’:
src/elogd.cxx:20448:43: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1587 [-Wformat-overflow=]
20448 |                sprintf(str, "Icon comment %s", attrib[i]);
      |                                           ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 14 and 150013 bytes into a destination of size 
1600
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:20495:33: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
20495 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                                 ^~
src/elogd.cxx:20495:32: note: directive argument in the range [0, 99]
20495 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                                ^~~~~~~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 3 and 150003 bytes into a destination of size 
1600
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:20459:33: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
20459 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                                 ^~
src/elogd.cxx:20459:32: note: directive argument in the range [0, 99]
20459 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                                ^~~~~~~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 3 and 150003 bytes into a destination of size 
1600
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:21041:30: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
21041 |                sprintf(str, "%s_%d", attr_list[i], j);
      |                              ^~
src/elogd.cxx:21041:29: note: directive argument in the range [0, 99]
21041 |                sprintf(str, "%s_%d", attr_list[i], j);
      |                             ^~~~~~~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 3 and 150003 bytes into a destination of size 
1600
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:21527:45: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1588 [-Wformat-overflow=]
21527 |                   sprintf(str, "Time format %s", attr_list[i]);
      |                                             ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 13 and 150012 bytes into a destination of size 
1600
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx:21512:45: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1588 [-Wformat-overflow=]
21512 |                   sprintf(str, "Date format %s", attr_list[i]);
      |                                             ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 13 and 150012 bytes into a destination of size 
1600
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void submit_elog(LOGBOOK*)’:
src/elogd.cxx:23282:38: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 2034 [-Wformat-overflow=]
23282 |          sprintf(str, "Subst on edit %s", attr_list[index]);
      |                                      ^~
In file included from /usr/include/stdio.h:894,
                 from src/elogd.h:42,
                 from src/elogd.cxx:38:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 15 and 150014 bytes into a destination of size 
2048
   38 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   39 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   40 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -o elconv src/elconv.cxx -
lssl
iris00:~/packages/elog> git log
commit 2eba8869bb72561f3f19f9b675ec74ba738f2443 (HEAD -> master, origin/master, origin/HEAD)
Author: Stefan Ritt <stefan.ritt@psi.ch>
Date:   Fri May 3 16:04:21 2024 +0200

    Removed unused variables

commit 8f942d1d18cc7d4d9b12f049dfd67284e3289963
Author: Stefan Ritt <stefan.ritt@psi.ch>
Date:   Fri May 3 15:50:17 2024 +0200

    Disabled attachment file retrieval to prevent poxy mis-use

commit 3020557a2b52cc9c460b80313c7c61c3ee014896
Author: Stefan Ritt <stefan.ritt@psi.ch>
Date:   Tue Apr 16 13:29:35 2024 +0200

    Fixed typos

commit 3876ffa2cc22a355cad8da642cb6f5a35884597a
Author: Stefan Ritt <stefan.ritt@psi.ch>
Date:   Mon Apr 15 18:04:52 2024 +0200

    Fixed line break

commit a644db7f2c14210e8014dc2a3dc9960e1382ccc1
Author: Stefan Ritt <stefan.ritt@psi.ch>
Date:   Mon Apr 15 18:00:54 2024 +0200

    Updated MacOSX command

commit fe60aaf0c41dcfafa50042e415f576faf82b1d4b
Author: Stefan Ritt <stefan.ritt@psi.ch>
Date:   Thu Mar 14 21:17:01 2024 +0100

    Fixed wrong number of attachments display

Broken pipe
iris00:~/packages/elog> 
  69824   Sun Sep 1 04:33:13 2024 Warning Dominicanonymous@gmail.comBug reportLinux | Windows | Mac OSXELOG V3.1.5Equation Editor does not work

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!

  69826   Thu Sep 12 10:42:08 2024 Warning jaro mrazekjaromrax@gmail.comBug reportLinux3fb85fa6Crash on attachment upload

I am on ubuntu 24.04.1, I needed to git clone, make and make install,

HEAD is 3fb85fa6 - (HEAD -> master, origin/master, origin/HEAD) Fixed compiler warning (3 weeks ago)

It crashes on every attachment:  thank you. Jaro


 

root@vaio:~# systemctl status elogd
× elogd.service - The ELOG Server
     Loaded: loaded (/usr/lib/systemd/system/elogd.service; enabled; preset: ena>
     Active: failed (Result: core-dump) since Thu 2024-09-12 10:39:23 CEST; 3s a>
   Duration: 5.402s
       Docs: man:elogd(8)
             man:elog(8)
    Process: 724285 ExecStart=/usr/local/sbin/elogd -D -c /usr/local/elog/elogd.>
   Main PID: 724286 (code=dumped, signal=ABRT)
        CPU: 32ms

Sep 12 10:39:18 vaio systemd[1]: Starting elogd.service - The ELOG Server...
Sep 12 10:39:18 vaio elogd[724286]: elogd 3.1.5 built Sep 11 2024, 17:02:36
Sep 12 10:39:18 vaio elogd[724286]: revision 3fb85fa6
Sep 12 10:39:18 vaio elogd[724286]: File "/var/run/elogd.pid" exists, overwritin>
Sep 12 10:39:18 vaio systemd[1]: Started elogd.service - The ELOG Server.
Sep 12 10:39:18 vaio elogd[724286]: CKeditor detected
Sep 12 10:39:18 vaio elogd[724286]: ImageMagick detected
Sep 12 10:39:18 vaio elogd[724286]: Server listening on port 9000 ...
Sep 12 10:39:23 vaio systemd[1]: elogd.service: Main process exited, code=dumped>
Sep 12 10:39:23 vaio systemd[1]: elogd.service: Failed with result 'core-dump'.
root@vaio:~# systemctl restart elogd
 

  69838   Tue Nov 5 15:44:57 2024 Warning Dominicdominic@nowhere.co Bug reportLinux3fb85fa6Re: Crash on attachment upload

Does this issue occur only on Ubuntu systems? as I've experienced the same on my Raspberry Pi 5 running Ubuntu too ...

jaro mrazek wrote:

I am on ubuntu 24.04.1, I needed to git clone, make and make install,

HEAD is 3fb85fa6 - (HEAD -> master, origin/master, origin/HEAD) Fixed compiler warning (3 weeks ago)

It crashes on every attachment:  thank you. Jaro


 

root@vaio:~# systemctl status elogd
× elogd.service - The ELOG Server
     Loaded: loaded (/usr/lib/systemd/system/elogd.service; enabled; preset: ena>
     Active: failed (Result: core-dump) since Thu 2024-09-12 10:39:23 CEST; 3s a>
   Duration: 5.402s
       Docs: man:elogd(8)
             man:elog(8)
    Process: 724285 ExecStart=/usr/local/sbin/elogd -D -c /usr/local/elog/elogd.>
   Main PID: 724286 (code=dumped, signal=ABRT)
        CPU: 32ms

Sep 12 10:39:18 vaio systemd[1]: Starting elogd.service - The ELOG Server...
Sep 12 10:39:18 vaio elogd[724286]: elogd 3.1.5 built Sep 11 2024, 17:02:36
Sep 12 10:39:18 vaio elogd[724286]: revision 3fb85fa6
Sep 12 10:39:18 vaio elogd[724286]: File "/var/run/elogd.pid" exists, overwritin>
Sep 12 10:39:18 vaio systemd[1]: Started elogd.service - The ELOG Server.
Sep 12 10:39:18 vaio elogd[724286]: CKeditor detected
Sep 12 10:39:18 vaio elogd[724286]: ImageMagick detected
Sep 12 10:39:18 vaio elogd[724286]: Server listening on port 9000 ...
Sep 12 10:39:23 vaio systemd[1]: elogd.service: Main process exited, code=dumped>
Sep 12 10:39:23 vaio systemd[1]: elogd.service: Failed with result 'core-dump'.
root@vaio:~# systemctl restart elogd
 

 

  69843   Fri Dec 6 09:39:44 2024 Warning Olivier MARTINamande.olive@yahoo.frQuestionLinux3.1.5Probleme TLS
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 ?

  69864   Thu Jan 23 11:32:05 2025 Warning Arjan HulsboschArjan.Hulsbosch@ext.esa.intBug reportLinux | Windows | Mac OSX | All | Other3.1.5Webserver authentication may cause redirect loop

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

  69871   Wed Apr 2 13:01:34 2025 Warning Liam Gaffneyliam.gaffney@liverpool.ac.ukBug reportLinuxcommit 30ada1dfNew elog from template should update the subdir

Hello. We are using explicity subdir names on our elog server to manage a large number of "Top groups" and sub "groups". When we create a new logbook from a template in the same group, it would be beneficial to automatically give a new subdir based on the previous one. At the very least, it should not reuse the same parameter as the template (see below).

At the moment, it copies the subdir parameter from the template logbook, which results in the new logbook writing to the same location as the template. That is very confusing and has the potential to be harmful as people can (and recently did) decide to delete these "duplicate" entries. But they are not duplicates, they are the exact same entries as the template logbook and deleting them removes them forever!

The way around this at the moment is to manually update the subdir after copying, but then the logbooks need to be re-indexed before the new logbook will display correctly. That requires a manual restart of the elogd process, which is less than ideal. 

ELOG V3.1.5-3fb85fa6