Demo Discussion
Forum Config Examples Contributions Vulnerabilities
  Discussion forum about ELOG, Page 684 of 808  Not logged in ELOG logo
ID Date Icon Author Author Email Categorydown OS ELOG Version Subject
  66640   Mon Dec 7 21:25:23 2009 Reply David Spindlerdsspindler@gmail.comBug reportWindows2.7.7 2246Re: 2.7.6 and 2.7.7 crash upon opening logbook that runs on 2.7.5

David Spindler wrote:

David Spindler wrote:

Stefan Ritt wrote:

David Spindler wrote:

I upgraded 2.7.5 rev 2175 to 2.7.7 rev 2246 last Thursday. I tested it with several logbooks with no problems. However I received a rep[ort today that it was down. I discovered whenever I tried to open a logbook entitled "Equipment Reservation" in the folder "EquipmentReservations" Elog would crash. I checked the elog.log file with no entries in it other than showing when it was restarted. I backed up to 2.7.5 and had no porblems with the same logbook. I repeated the upgrade to 2.7.7 with the crash problem returning. I am now back on 2.7.5 with no problems.

 

I just decided to try 2.7.6 rev 2239 and had the same results as 2.7.7.

 

This is running under Win2K with SP4 as an automatic service on port 80.

 

I am also running Elog V2.7.4-2118 on a different port (8080) simultaneously with no problems.

 

If you wish I will send the elog.cfg file. Anything else I can do to help, please let me know.

I need to reproduce your problem. Therefore I need the configuration and the xxxxxxa.log file containing the offending entries. You can strip it down to the minimum needed to do the crash. 

 In the process of trying to reduce it to a minimum I discovered that the entry that appears to be causing the crash is this:


 

Sorry for the delay.

 

1: The offending log file.

 

 

I know it looks like I am totally inept. I apologize. Obviously I was in a hurry the last couple of posts.

 

Ok, let's try this again.

 

The offending log file:

  66651   Thu Dec 10 16:05:59 2009 Question Cliff Shawcliff.shaw@stratosglobal.comBug reportWindows2.7.8Elogd crashes when submitting replies

Hi Stefan,

I recently installed the latest Elog 2.7.8 revision 2277 after running Elog 2.7.7 revision 2246 for several months without any problems. However once I submit an entry by using the Reply command Elog crashes and Windows XP reports an error message screen. This also stops the elogd service.

I have pinpointed it down to the command "subst on reply Subject = $Subject" by removing my whole configuration file and just added the line "subst on reply Subject = $Subject" to your demo configuration file.

Elog seems to also stops the elogd service with any "subst on reply" command.

Do you have any suggestions?

Thank you,

Regards

Cliff Shaw

  66652   Thu Dec 10 18:12:19 2009 Reply David Spindlerdsspindler@gmail.comBug reportWindows2.7.7 2246Re: 2.7.6 and 2.7.7 crash upon opening logbook that runs on 2.7.5

David Spindler wrote:

David Spindler wrote:

David Spindler wrote:

Stefan Ritt wrote:

David Spindler wrote:

I upgraded 2.7.5 rev 2175 to 2.7.7 rev 2246 last Thursday. I tested it with several logbooks with no problems. However I received a rep[ort today that it was down. I discovered whenever I tried to open a logbook entitled "Equipment Reservation" in the folder "EquipmentReservations" Elog would crash. I checked the elog.log file with no entries in it other than showing when it was restarted. I backed up to 2.7.5 and had no porblems with the same logbook. I repeated the upgrade to 2.7.7 with the crash problem returning. I am now back on 2.7.5 with no problems.

 

I just decided to try 2.7.6 rev 2239 and had the same results as 2.7.7.

 

This is running under Win2K with SP4 as an automatic service on port 80.

 

I am also running Elog V2.7.4-2118 on a different port (8080) simultaneously with no problems.

 

If you wish I will send the elog.cfg file. Anything else I can do to help, please let me know.

I need to reproduce your problem. Therefore I need the configuration and the xxxxxxa.log file containing the offending entries. You can strip it down to the minimum needed to do the crash. 

 In the process of trying to reduce it to a minimum I discovered that the entry that appears to be causing the crash is this:


 

Sorry for the delay.

 

1: The offending log file.

 

 

I know it looks like I am totally inept. I apologize. Obviously I was in a hurry the last couple of posts.

 

Ok, let's try this again.

 

The offending log file:

 

 Ok, I am now assuming the offending log file has been removed. Correct?

  66653   Thu Dec 10 19:06:18 2009 Reply Stefan Rittstefan.ritt@psi.chBug reportWindows2.7.7 2246Re: 2.7.6 and 2.7.7 crash upon opening logbook that runs on 2.7.5

David Spindler wrote:

 

 Ok, I am now assuming the offending log file has been removed. Correct?

No, you never submitted any file. It was missing in all your posts. In worst case send it by email to me. 

  66656   Sat Dec 12 20:30:35 2009 Reply Stefan Rittstefan.ritt@psi.chBug reportWindows2.7.8Re: Elogd crashes when submitting replies

Cliff Shaw wrote:

Hi Stefan,

I recently installed the latest Elog 2.7.8 revision 2277 after running Elog 2.7.7 revision 2246 for several months without any problems. However once I submit an entry by using the Reply command Elog crashes and Windows XP reports an error message screen. This also stops the elogd service.

I have pinpointed it down to the command "subst on reply Subject = $Subject" by removing my whole configuration file and just added the line "subst on reply Subject = $Subject" to your demo configuration file.

Elog seems to also stops the elogd service with any "subst on reply" command.

Do you have any suggestions?

Thank you,

Regards

Cliff Shaw

Thanks for reporting that problem. I finally found the bug and fixed it. I made a new elog278-2 for you to download. 

  66660   Wed Jan 6 22:17:49 2010 Question Aaron Coutureacouture@lanl.govBug reportLinuxrev2280Problem with CRYPT+SSL and elog command line entries

I am in the process of setting up a new ELOG logbook.  I checked out rev2280 from svn.savannah.psi.ch.  I knew I wanted to encrypt passwords, so when I compiled, I used flags

 

USE_SSL=1

and

USE_CRYPT=1

 

I am running Red Hat enterprise linux 3, glibc-devel-2.3.2-95.50, openssl-devel-0.9.7a-33.25

Everything seemed to be working fine--I was able to set up logbooks using both a password file as well as write passwords and make entries to the logs.  Then I tried to use the command line 'elog' to make an entry which failed to both logbooks.

 

/opt/elog/pro/elogd -c /opt/elog/pro/dansce_fancy.cfg -l Demo1 -w <mypassword>

Would change the password in dansce_fancy.cfg and I could make entries through the web interface, but

 

elog -h acouture -s -p 8081 -w <mypassword> -l Demo1 -a Author="Aaron Couture" -a Type=Routine  -m Sampleinfo.txt -x -n 1

failed with

Error: Invalid user name or password

I got the same behaviour when I used a logbook with a user/password pair defined in a password file.

 

When I looked at the output from running elogd with the -v flag, I could see that everything was being received on the server side, but that the password did not agree with the write password in dansce_fancy.cfg

I then recompiled elog with

USE_SSL=1

USE_CRYPT=

And then the elog command line entries worked, both with write passwords and a password file (after recreating the password file and the write password).  Looking at the elog.c source code, it appears that it does not know to use crypt rather then base64_encode when USE_CRYPT is true.  elogd.c defined different behaviour if USE_CRYPT is defined.

 

Thanks,

 

Aaron Couture

 

 

  66661   Thu Jan 7 21:22:09 2010 Reply Aaron Coutureacouture@lanl.govBug reportLinuxrev2280Re: Problem with CRYPT+SSL and elog command line entries

I Aaron Couture wrote:

I have attached a possible patch--basically pirated from elogd.c  Because strlcpy needed for the crypt cares about size, do_crypt needed the size, which had not been a concern for base64_encode in elog.c   As a result, base64_encode changed slightly as well.  I think the implementation places a limit of 32 characters on passwords, which seemed to already be the limit in elogd.c  The elog.c limit appeared to be 80 characters.  I tested both SSL and SSL+CRYPT for commandline elog entries with both a logbook specific write password as well as username/password combo in a password file.

 

AJC

 

 

I am in the process of setting up a new ELOG logbook.  I checked out rev2280 from svn.savannah.psi.ch.  I knew I wanted to encrypt passwords, so when I compiled, I used flags

 

USE_SSL=1

and

USE_CRYPT=1

 

I am running Red Hat enterprise linux 3, glibc-devel-2.3.2-95.50, openssl-devel-0.9.7a-33.25

Everything seemed to be working fine--I was able to set up logbooks using both a password file as well as write passwords and make entries to the logs.  Then I tried to use the command line 'elog' to make an entry which failed to both logbooks.

 

/opt/elog/pro/elogd -c /opt/elog/pro/dansce_fancy.cfg -l Demo1 -w <mypassword>

Would change the password in dansce_fancy.cfg and I could make entries through the web interface, but

 

elog -h acouture -s -p 8081 -w <mypassword> -l Demo1 -a Author="Aaron Couture" -a Type=Routine  -m Sampleinfo.txt -x -n 1

failed with

Error: Invalid user name or password

I got the same behaviour when I used a logbook with a user/password pair defined in a password file.

 

When I looked at the output from running elogd with the -v flag, I could see that everything was being received on the server side, but that the password did not agree with the write password in dansce_fancy.cfg

I then recompiled elog with

USE_SSL=1

USE_CRYPT=

And then the elog command line entries worked, both with write passwords and a password file (after recreating the password file and the write password).  Looking at the elog.c source code, it appears that it does not know to use crypt rather then base64_encode when USE_CRYPT is true.  elogd.c defined different behaviour if USE_CRYPT is defined.

 

Thanks,

 

Aaron Couture

 

 

 

Attachment 1: elogc.patch
64c64
< void base64_encode(char *s, char *d)
---
> void base64_encode(unsigned char *s, unsigned char *d, int size)
66a67
>    unsigned char *p;
68c69
<    pad = 3 - strlen(s) % 3;
---
>    pad = 3 - strlen((char *) s) % 3;
70a72
>    p = d;
86a89,90
>       if (d - p >= size - 3)
>         return;
92a97,106
> void do_crypt(char *s, char *d, int size)
> {
> #ifdef HAVE_CRYPT
>    strlcpy(d, crypt(s, "el"), size);
> #else
>    base64_encode((unsigned char *) s, (unsigned char *) d, size);
> #endif
> }
> 
> 
382c396
<    char str[256], *ph, *ps;
---
>    char str[256], encrypted_passwd[32], *ph, *ps;
422,423c436,437
<       base64_encode(passwd, str);
<       sprintf(request + strlen(request), "wpwd=%s;", str);
---
>       do_crypt(passwd, encrypted_passwd, sizeof(encrypted_passwd) );
>       sprintf(request + strlen(request), "wpwd=%s;", encrypted_passwd);
439,440c453,454
<       base64_encode(upwd, str);
<       sprintf(request + strlen(request), "upwd=%s;", str);
---
>       do_crypt(upwd, encrypted_passwd, sizeof(encrypted_passwd) );
>       sprintf(request + strlen(request), "upwd=%s;", encrypted_passwd);
628c642
<    char host_name[256], boundary[80], str[80], *p, *old_encoding;
---
>    char host_name[256], boundary[80], str[80], encrypted_passwd[32], *p, *old_encoding;
801c815
<       base64_encode(upwd, str);
---
>       do_crypt(upwd, encrypted_passwd, sizeof(encrypted_passwd) );
803c817
<               "%s\r\nContent-Disposition: form-data; name=\"upwd\"\r\n\r\n%s\r\n", boundary, str);
---
>               "%s\r\nContent-Disposition: form-data; name=\"upwd\"\r\n\r\n%s\r\n", boundary, encrypted_passwd);
885,886c899,900
<       base64_encode(passwd, str);
<       sprintf(request + strlen(request), "Cookie: wpwd=%s\r\n", str);
---
>       do_crypt(passwd, encrypted_passwd, sizeof(encrypted_passwd) );
>       sprintf(request + strlen(request), "Cookie: wpwd=%s\r\n", encrypted_passwd);
  66663   Fri Jan 8 18:26:56 2010 Reply Aaron Coutureacouture@lanl.govBug reportLinuxrev2280Re: Problem with CRYPT+SSL and elog command line entries

Aaron Couture wrote:

I Aaron Couture wrote:

There was some sloppiness in the original patch--__USE_XOPEN wasn't defined, but worked when elog wasn't compiled alone.  Now the appropriate ifndef/define statements are in elog.c

 

I have attached a possible patch--basically pirated from elogd.c  Because strlcpy needed for the crypt cares about size, do_crypt needed the size, which had not been a concern for base64_encode in elog.c   As a result, base64_encode changed slightly as well.  I think the implementation places a limit of 32 characters on passwords, which seemed to already be the limit in elogd.c  The elog.c limit appeared to be 80 characters.  I tested both SSL and SSL+CRYPT for commandline elog entries with both a logbook specific write password as well as username/password combo in a password file.

 

AJC

 

 

I am in the process of setting up a new ELOG logbook.  I checked out rev2280 from svn.savannah.psi.ch.  I knew I wanted to encrypt passwords, so when I compiled, I used flags

 

USE_SSL=1

and

USE_CRYPT=1

 

I am running Red Hat enterprise linux 3, glibc-devel-2.3.2-95.50, openssl-devel-0.9.7a-33.25

Everything seemed to be working fine--I was able to set up logbooks using both a password file as well as write passwords and make entries to the logs.  Then I tried to use the command line 'elog' to make an entry which failed to both logbooks.

 

/opt/elog/pro/elogd -c /opt/elog/pro/dansce_fancy.cfg -l Demo1 -w <mypassword>

Would change the password in dansce_fancy.cfg and I could make entries through the web interface, but

 

elog -h acouture -s -p 8081 -w <mypassword> -l Demo1 -a Author="Aaron Couture" -a Type=Routine  -m Sampleinfo.txt -x -n 1

failed with

Error: Invalid user name or password

I got the same behaviour when I used a logbook with a user/password pair defined in a password file.

 

When I looked at the output from running elogd with the -v flag, I could see that everything was being received on the server side, but that the password did not agree with the write password in dansce_fancy.cfg

I then recompiled elog with

USE_SSL=1

USE_CRYPT=

And then the elog command line entries worked, both with write passwords and a password file (after recreating the password file and the write password).  Looking at the elog.c source code, it appears that it does not know to use crypt rather then base64_encode when USE_CRYPT is true.  elogd.c defined different behaviour if USE_CRYPT is defined.

 

Thanks,

 

Aaron Couture

 

 

 

 

Attachment 1: elogc.patch
26a27,30
> #ifndef __USE_XOPEN
> #define __USE_XOPEN             /* needed for crypt() */
> #endif
> 
64c68
< void base64_encode(char *s, char *d)
---
> void base64_encode(unsigned char *s, unsigned char *d, int size)
66a71
>    unsigned char *p;
68c73
<    pad = 3 - strlen(s) % 3;
---
>    pad = 3 - strlen((char *) s) % 3;
70a76
>    p = d;
86a93,94
>       if (d - p >= size - 3)
>         return;
92a101
> 
182a192,201
> 
> void do_crypt(char *s, char *d, int size)
> {
> #ifdef HAVE_CRYPT
>    strlcpy(d, crypt(s, "el"), size);
> #else
>    base64_encode((unsigned char *) s, (unsigned char *) d, size);
> #endif
> }
> 
382c401
<    char str[256], *ph, *ps;
---
>    char str[256], encrypted_passwd[32], *ph, *ps;
422,423c441,442
<       base64_encode(passwd, str);
<       sprintf(request + strlen(request), "wpwd=%s;", str);
---
>       do_crypt(passwd, encrypted_passwd, sizeof(encrypted_passwd) );
>       sprintf(request + strlen(request), "wpwd=%s;", encrypted_passwd);
439,440c458,459
<       base64_encode(upwd, str);
<       sprintf(request + strlen(request), "upwd=%s;", str);
---
>       do_crypt(upwd, encrypted_passwd, sizeof(encrypted_passwd) );
>       sprintf(request + strlen(request), "upwd=%s;", encrypted_passwd);
628c647
<    char host_name[256], boundary[80], str[80], *p, *old_encoding;
---
>    char host_name[256], boundary[80], str[80], encrypted_passwd[32], *p, *old_encoding;
801c820
<       base64_encode(upwd, str);
---
>       do_crypt(upwd, encrypted_passwd, sizeof(encrypted_passwd) );
803c822
<               "%s\r\nContent-Disposition: form-data; name=\"upwd\"\r\n\r\n%s\r\n", boundary, str);
---
>               "%s\r\nContent-Disposition: form-data; name=\"upwd\"\r\n\r\n%s\r\n", boundary, encrypted_passwd);
885,886c904,905
<       base64_encode(passwd, str);
<       sprintf(request + strlen(request), "Cookie: wpwd=%s\r\n", str);
---
>       do_crypt(passwd, encrypted_passwd, sizeof(encrypted_passwd) );
>       sprintf(request + strlen(request), "Cookie: wpwd=%s\r\n", encrypted_passwd);
ELOG V3.1.5-3fb85fa6