Demo Discussion
Forum Config Examples Contributions Vulnerabilities
  Discussion forum about ELOG, Page 101 of 806  Not logged in ELOG logo
ID Date Icon Authordown Author Email Category OS ELOG Version Subject
  67006   Fri Feb 4 00:11:09 2011 Question T. Ribbrockemgaron+elog@ribbrock.orgQuestionOther2.8.1Strange problem with dates - need debugging help

I have just installed elog 2.8.1 on my OpenBSD 4.8 server (I've added the necessary Makefile patch to "Contributions"). Everything seems to work fine, however, I ran into a very odd problems with the dates of the logbook entries: When I start a new entry, the current date/time is displayed correctly. When I submit the entry and look at it again, the date has changed to some value in 1996 . I've checked the actual logbook file and there, the entry has a Date line like this:

Date: Thu, 03 Feb 2011 23:53:28 -13049141
 

The "-13049141" looks very suspicious to me - but I have no idea whatsoever why this happens. I had elogd running with -v, but that did not give me any hints. Any ideas how to debug/resolve this would be much appreciated...

 

  67008   Fri Feb 4 11:52:45 2011 Agree T. Ribbrockemgaron+elog@ribbrock.orgQuestionOther2.8.1Re: Strange problem with dates - need debugging help

Stefan Ritt wrote:

The problem is most probably related to the time zone. elogd contains a function:

/* workaround for wong timezone under MAX OSX */
long my_timezone()
{
#if defined(OS_MACOSX) || defined(__FreeBSD__)
   time_t tp;
   time(&tp);
   return -localtime(&tp)->tm_gmtoff;
#else
   return timezone;
#endif
}
 
from which you can see that there is a different behavior between different Linux flavors and OSX/FreeBSD. Maybe you need an additional
 
|| defined(__OpenBSD__)
 
if the pre-compiler directive __FreeBSD__ is not defined on your system.
[...]
 

 BINGO! That was it - thank you! I've added the || defined(__OpenBSD__) in the place you described above and now the dates are correct. While I was at it, I also had a look at what other ifdefs there are for FreeBSD and the only other one I found was also in elogd.c:

#if defined (_BSD_VA_LIST_) && defined (__FreeBSD__)

I'm far from being a C programmer, but I did some quick and dirty compile tests with various ifdefs set and apparently, _BSD_VA_LIST_ is not set on OpenBSD, so I guess that this statement does not need modification. I will keep my eyes peeled for strange behaviour, though...

Cheerio,

Thomas

P.S.: One thing I noticed is that the OpenBSD variant of gcc throws these warnings when compiling elogd.c:

gcc -g -funroll-loops -fomit-frame-pointer -W -Wall -DHAVE_SSL -I../mxml -o elogd src/elogd.c crypt.o regex.o mxml.o strlcpy.o -lcrypto -lssl
/tmp//ccHhMZfy.o(.text+0xd2f): In function `int_vasprintf':
src/elogd.c:826: warning: vsprintf() is often misused, please use vsnprintf()
/tmp//ccHhMZfy.o(.text+0xae8): In function `xstrdup':
src/elogd.c:736: warning: strcpy() is almost always misused, please use strlcpy()
/tmp//ccHhMZfy.o(.text+0x13c7): In function `my_shell':
src/elogd.c:1197: warning: sprintf() is often misused, please use snprintf()
/tmp//ccHhMZfy.o(.text+0xf0ae): In function `el_correct_links':
src/elogd.c:5178: warning: strcat() is almost always misused, please use strlcat()

I'm not certain whether this is specific to this gcc variant, but I seem to remember that the OpenBSD folks added some extra warnings and suchlike as part of their overall code audit, so I thought I'd mention it.

  67009   Fri Feb 4 23:48:54 2011 Warning T. Ribbrockemgaron+elog@ribbrock.orgBug reportOther2.9.0-2384Odd bug with conditional and required attributes

I just ran into an odd bug with conditional attributes: If I add a certain attribute to "Required Attributes", none of the conditionals will work anymore. I have tried to create a small logbook definition that will demonstrate the problem (the original logbook is more complex and uses two sets of conditionals, both of which will be disabled when the bug hits):

; General settings
Menu commands = List, New, Edit, Duplicate, Delete, Reply, Select, Move to, Download, Find, Logout, Help, Config,Admin
List Menu commands = New, Select, Find, Logout, Help, Config, Admin, Import, Download
Date Format = %d/%m/%Y
List conditions = 1
List display = Edit, Type, Created, StatusA, StatusB, Archived, Test Text, Public?

; Attributes
Attributes = Type, Created, StatusA, StatusB, Archived, Test Text, Public?
Required Attributes = Type

; Attribute Types
Type Created = date
Type Archived = date

; Options & Tooltips
Options Type = Type1{0}, Type2{1}
Options StatusA = Status-A-red, Status-A-orange, Status-A
Options StatusB = Status-B-red, Status-B-orange, Status-B
Options Public? = yes,no

; Conditionals
{0}Show Attributes Edit = Type, Created, StatusA, StatusB, Archived, Test Text, Public?
{1}Show Attributes Edit = Type, Created, StatusA, Archived, Test Text, Public?

The above logbook definition works. However, if I replace the Required Attributes = Type with Required Attributes = Type, Public?, the conditionals will no longer work. I can see the difference in the reactions of the browser - with the extra attribute, nothing happens when I change "Type". Without, the browser will spring into action and reload as soon as I change "Type". I've tested this with both Firefox 3.6.13 and Konqueror 4.4.5 on Kubuntu 10.04 as clients. Fortunately, this is not a showstopper for me, as it is not mandatory to have this attribute defined as required, but I find it a weird issue nonetheless.

Cheerio,

Thomas

P.S.: I'm currently running the latest SVN version of elogd on OPenBSD as I ran into the same problem as described in Message 66984. The above problem also happens with the 2.8.1 I was using before. Some feedback: The SVN version compiled and ran without any further intervention on OpenBSD - very nice!

  67013   Mon Feb 7 17:26:26 2011 Reply T. Ribbrockemgaron+elog@ribbrock.orgBug reportOther2.9.0-2384Re: Odd bug with conditional and required attributes

Stefan Ritt wrote:

 

Your problem is the "?" in the attribute Public?.  Attributes may only contain ordinary characters. Unfortunately I did not document this so far. Therefore I put some fix in SVN revision 2387 which allows your attribute Public?, but I'm not 100% sure if this works in all places. The safest is just to remove the question mark.

 Thanks Stefan, I'll try that. It's strange, though: At work, we're running 2.7.6 (and have used older versions in the past) and we have several logbooks with each at least one or two attributes with '?' and never had a problem with conditionals. Hence my surprise when this suddenly hit me with 2.8.1+ at home. Removing the '?' would be quite some work, as I'd have to change all logbooks and the associated data (the latter could probably be done with "rpl", I hope). I'll think about it.

  67314   Mon Aug 20 21:48:08 2012 Question Szu-Ching Pecknerspeckner@nd.eduBug reportLinux2.9.2kerberos authentication

Hello, I have

authentication = kerberos

kerberos Realm = xxx

I ran tcpdump and know elogd server did attempt to contact kerberos server. I could run kinit username@realm_name, and klist shows my ticket fine. 

I receive "kerberos error 256: Decrypt integrity check failed. Please check your kerberos configuration" when I entered my password wrong purposely on login page.

I receive "Invalid user name or password!' when I entered my correct password. 

Please advise. 

 

 

  67315   Mon Aug 20 22:11:21 2012 Reply Szu-Ching Pecknerspeckner@nd.eduBug reportLinux2.9.2Re: kerberos authentication

Szu-Ching Peckner wrote:

Hello, I have

authentication = kerberos

kerberos Realm = xxx

I ran tcpdump and know elogd server did attempt to contact kerberos server. I could run kinit username@realm_name, and klist shows my ticket fine. 

I receive "kerberos error 256: Decrypt integrity check failed. Please check your kerberos configuration" when I entered my password wrong purposely on login page.

I receive "Invalid user name or password!' when I entered my correct password. 

Please advise. 

 

 

I forgot to mention, I also have Password file line in elogd.cfg file. Because without password file line, I wouldn't get login screen. I know my test account is not in the main.pwd file. I believe elogd does go to kerberos server to compare password. I just don't get why I get invalid username and password when I entered correct password, while kerberos error (expected) when I enter wrong password.  

Authentication = Kerberos

Kerberos Realm = xxx

Password file = main.pwd

  67316   Tue Aug 21 17:16:19 2012 Agree Szu-Ching Pecknerspeckner@nd.eduBug reportLinux2.9.2Re: kerberos authentication

Szu-Ching Peckner wrote:

Szu-Ching Peckner wrote:

Hello, I have

authentication = kerberos

kerberos Realm = xxx

I ran tcpdump and know elogd server did attempt to contact kerberos server. I could run kinit username@realm_name, and klist shows my ticket fine. 

I receive "kerberos error 256: Decrypt integrity check failed. Please check your kerberos configuration" when I entered my password wrong purposely on login page.

I receive "Invalid user name or password!' when I entered my correct password. 

Please advise. 

 

 

I forgot to mention, I also have Password file line in elogd.cfg file. Because without password file line, I wouldn't get login screen. I know my test account is not in the main.pwd file. I believe elogd does go to kerberos server to compare password. I just don't get why I get invalid username and password when I entered correct password, while kerberos error (expected) when I enter wrong password.  

Authentication = Kerberos

Kerberos Realm = xxx

Password file = main.pwd

 It's resolved.  I read the documentation again, and found out my mistake. I didnt have username defined on password file. 

  67319   Tue Aug 28 22:48:47 2012 Question Szu-Ching Pecknerspeckner@nd.eduQuestionLinuxlatestshow permitted individual logbooks on selection page

How do I make selection page show only list of logbooks that logged on user has access to? 

Right now, say I have 4 logbooks, and I have access to 2 of them. I turned on Protect Selection page = 1. So when I go to home page, I need to logon first, then I am given selection page. I am given list of 4 logbooks, I can only click into 2, which is expected.  

Instead of given list of 4 logbooks, I would like to know if there is a way to make selection page only contains 2 logbooks which I have access to?

 

 

ELOG V3.1.5-3fb85fa6