Demo Discussion
Forum Config Examples Contributions Vulnerabilities
  Discussion forum about ELOG, Page 775 of 808  Not logged in ELOG logo
New entries since:Thu Jan 1 01:00:00 1970
ID Date Icon Author Author Email Categorydown OS ELOG Version Subject
  702   Wed Sep 15 04:08:46 2004 Reply Stefan Rittstefan.ritt@psi.chBug fixLinux2.5.4Re: text display of ascii files not a good idea
> So a configurable size limit seems appropriate, from which on 
> only 'Display attachment' is displayed.  And/Or, for files
> exceeding this limit, the first N (new config option) lines could be displayed.

Ok, I changed elogd such that only the first 1000 lines of inline attachments are
displayed, with a note of how many lines are truncated. By clicking on the attachment
name, one can still download the complete attachment. I guess the number of lines do
not have to be configurable, but if someone is not happy with the 1000 lines that could
be added.
  807   Wed Nov 24 00:44:09 2004 Warning Rich Persauddev2id at yahoo dot comBug fixLinux2.5.4-6Konqueror and Calendar widget
Date selection from the calendar widget does not work in Konqueror.  

Clicking on a date results in year being populated, but month and day are 
blank.
  815   Wed Nov 24 14:19:01 2004 Warning Stefan Rittstefan.ritt@psi.chBug fixLinux2.5.4-6Re: Konqueror and Calendar widget
> Date selection from the calendar widget does not work in Konqueror.  
> 
> Clicking on a date results in year being populated, but month and day are 
> blank.

I use following Javascript to populate the date:

function submit_day(day)
{
  opener.document.form1.d3.value = "24";
  opener.document.form1.m3.value = "11";
  opener.document.form1.y3.value = "2004";
  window.close();
}

which workes everywhere except in Konqueror. If you tell me how to convince
Konqueror to accept this, I'm happy to put it into the elog code.
  924   Tue Feb 8 15:41:55 2005 Agree Emiliano GabrielliAlberT@SuperAlberT.itBug fixLinux2.5.6Re: erroneus encoding
the following patch corrects the problem, plz apply :


--- elogd.c     2005-02-03 16:46:10.000000000 +0100
+++ elogd_albert.c      2005-02-08 15:40:36.000000000 +0100
@@ -6178,7 +6178,7 @@
    if (getcfg("global", "charset", str, sizeof(str)))
       rsprintf("Content-Type: text/html;charset=%s\r\n", str);
    else
-      rsprintf("Content-Type: text/html;charset=%S\r\n", DEFAULT_HTTP_CHARSET);
+      rsprintf("Content-Type: text/html;charset=%s\r\n", DEFAULT_HTTP_CHARSET);

    if (use_keepalive) {
       rsprintf("Connection: Keep-Alive\r\n");
@@ -11267,7 +11267,7 @@
    rsprintf("Server: ELOG HTTP %s\r\n", VERSION);
    rsprintf("Accept-Ranges: bytes\r\n");
    rsprintf("Connection: close\r\n");
-   rsprintf("Content-Type: text/plain;charset=%S\r\n", DEFAULT_HTTP_CHARSET);
+   rsprintf("Content-Type: text/plain;charset=%s\r\n", DEFAULT_HTTP_CHARSET);
    rsprintf("Pragma: no-cache\r\n");
    rsprintf("Expires: Fri, 01 Jan 1983 00:00:00 GMT\r\n\r\n");
  925   Tue Feb 8 17:40:54 2005 Idea Emiliano GabrielliAlberT@SuperAlberT.itBug fixAll2.5.6 cvs[patch]: fixed wrong extention check
current version uses strstr() to check if the file has the expected ascii
text extension ... this is buggy becouse this way a file named
".txt_hidden_file" or "foo.config.dat" are both seen as .txt files.

the following patch fixes the problem, plz apply to cvs:



#######################################################################
--- elogd_orig.c        2005-02-03 16:46:10.000000000 +0100
+++ elogd_extchk_fix.c  2005-02-08 17:32:21.000000000 +0100
@@ -1160,6 +1160,28 @@

 #define my_toupper(_c)    ( ((_c)>='a' && (_c)<='z') ? ((_c)-'a'+'A') : (_c) )

+static BOOL chkext(const char *str, const char *ext)
+{
+   int extl, strl;
+   char c1, c2;
+
+   if (ext == NULL || str == NULL)
+      return FALSE;
+
+   extl = strlen(ext);
+   strl = strlen(str);
+   if (extl >= strl)
+      return FALSE;
+   str = str+strl-extl;
+   while (*str) {
+      c1 = *str++;
+      c2 = *ext++;
+      if (my_toupper(c1) != my_toupper(c2))
+         return FALSE;
+   }
+   return TRUE;
+}
+
 BOOL strieq(const char *str1, const char *str2)
 {
    char c1, c2;
@@ -1168,6 +1190,8 @@
       return TRUE;
    if (str1 == NULL || str2 == NULL)
       return FALSE;
+   if (strlen(str1)!=strlen(str2))
+      return FALSE;

    while (*str1) {
       c1 = *str1++;
@@ -13698,8 +13722,8 @@
                       ("<tr><td colspan=%d class=\"attachment\">%s %d: <a
href=\"%s\">%s</a>\n",
                        colspan, loc("Attachment"), index + 1, ref,
attachment[index] + 14);

-                  if ((strstr(str, ".TXT") || strstr(str, ".ASC") ||
strstr(str, ".CFG")
-                       || strstr(str, ".CONF")
+                  if ((chkext(str, ".TXT") || chkext(str, ".ASC") ||
chkext(str, ".CFG")
+                       || chkext(str, ".CONF")
                        || strchr(str, '.') == NULL) && show_attachments) {
                      /* display attachment */
                      rsprintf("</td></tr><tr><td colspan=%d
class=\"messagelist\"><pre>", colspan);
@@ -14779,7 +14803,7 @@
    regex_t re_buf[MAX_N_ATTR + 1];
    regmatch_t pmatch[10];

-   /* redirect if enpty parameters */
+   /* redirect if empty parameters */
    if (strstr(_cmdline, "=&")) {
       while ((pt1 = strstr(_cmdline, "=&")) != NULL) {
          pt2 = pt1;
#######################################################################
  934   Sat Feb 12 17:45:39 2005 Reply Stefan Rittstefan.ritt@psi.chBug fixAll2.5.6 cvsRe: [patch]: fixed wrong extention check
> current version uses strstr() to check if the file has the expected ascii
> text extension ... this is buggy becouse this way a file named
> ".txt_hidden_file" or "foo.config.dat" are both seen as .txt files.

I added your routine chkext() to the code, but actually use it differently. I
display now ASCII files not by their extension, but the code checks for each file
to contain non-printable characters. If it contains all printable letters, and does
not have the extension PDF, PS or EPS, it's shown inline.
  948   Wed Feb 16 08:48:52 2005 Smile Emiliano GabrielliAlberT@SuperAlberT.itBug fixAll2.5.6 cvsRe: [patch]: fixed wrong extention check
> > current version uses strstr() to check if the file has the expected ascii 
> > text extension ... this is buggy becouse this way a file named 
> > ".txt_hidden_file" or "foo.config.dat" are both seen as .txt files. 
>  
> I added your routine chkext() to the code, but actually use it differently. I 
> display now ASCII files not by their extension, but the code checks for each file 
> to contain non-printable characters. If it contains all printable letters, and does 
> not have the extension PDF, PS or EPS, it's shown inline. 
 
I totally agree with you choice :-) 
  953   Sat Feb 19 18:39:52 2005 Entry Heiko Scheith.scheit@mpi-hd.mpg.deBug fixLinux2.5.7Problem with 'Show Attributes' option
There is a problem with the 'Show Attributes' option
causing the 'Format ...' options to be ignored.

See attachment for patch.
Attachment 1: patch
--- elogd.c_20050219    Sat Feb 19 18:15:09 2005
+++ elogd.c     Sat Feb 19 18:25:55 2005
@@ -8169,7 +8169,7 @@
       if (format_flags[index] & AFF_SAME_LINE)
          /* if attribute on same line, do nothing */
          rsprintf("");
-      else if (index < n_attr - 1 && (format_flags[index + 1] & AFF_SAME_LINE)) {
+      else if (aindex < n_disp_attr - 1 && (format_flags[attr_index[aindex + 1]] & AFF_SAME_LINE)) {
          /* if next attribute on same line, start a new subtable */
          rsprintf("<tr><td colspan=2><table width=\"100%%\" cellpadding=0 cellspacing=0><tr>");
          subtable = 1;
@@ -8469,7 +8469,7 @@
          }
       }
 
-      if (index < n_attr - 1 && (format_flags[index + 1] & AFF_SAME_LINE) == 0) {
+      if (aindex < n_disp_attr - 1 && (format_flags[attr_index[aindex + 1]] & AFF_SAME_LINE) == 0) {
          /* if next attribute not on same line, close row or subtable */
          if (subtable) {
             rsprintf("</table></td></tr>\n");
@@ -8479,7 +8479,7 @@
       }
 
       /* if last attribute, close row or subtable */
-      if (index == n_attr - 1) {
+      if (aindex == n_disp_attr - 1) {
          if (subtable) {
             rsprintf("</table></td></tr>\n");
             subtable = 0;
ELOG V3.1.5-3fb85fa6