Skip to Content.
Sympa Menu

en - Re: [sympa-users] Are plus sign (+) valid in lists name?

Subject: The mailing list for listmasters using Sympa

List archive

Chronological Thread  
  • From: "Michael L. Hitch" <address@concealed>
  • To: address@concealed
  • Subject: Re: [sympa-users] Are plus sign (+) valid in lists name?
  • Date: Thu, 5 Apr 2012 10:06:52 -0600 (MDT)

On Wed, 4 Jan 2012, address@concealed wrote:

I'm experiencing wwsympa.pl freeze when browsing on the administration pages
of a list using plus signs (+) in its name. The first administration page
displays correctly, but then wwsympa.pl seems to enter an infinite loop (the
process continues to run) and any subsequent request is dropped.

It takes more than restarting the web server to recover from this crash, the
identification cookie on the user side needs to be deleted too. Probably the
list name is still present in one session variable. Renaming the list and
removing all + signs solved the problem.

But the list creation interface doesn't prevent new list to use the plus sign
again. Is this a valid character to be used in list names? If not, then why
is not caught by the list creating interface?

We're using the 6.0.1 Debian version of Sympa with the fastCGI module. The
list behaved correctly in the 5.x Sympa serie. Do any of you have experienced
this behaviour? Looking at the Changelog file, I don't see any sign of a bug
of this kind being solved in the newer versions, should I fill a bug report?

I had a similar problem when I was working on converting our old lists to Sympa a couple of years ago. I was using Sympa 6.0, and was using the original email addresses modified so I wouldn't accidentally send out test messages. The addresses were something like address@concealed. When I'd select an email address from a review, it would display the editsubscriber page fine, but anything after that would error out, and there would be a wwsympa.fcgi process spinning. If I cleared my browser session cookie, I could log back in and continue.

I later looked at the session_table entry and noticed that the redirect_url entry in the data_session included the email address in the url. I don't remember the exact details, but it appeared to be a problem with the encoding (or failure to encode) of the '+' character [I had a few addresses that also used the '/' character that caused the same behaviour]. If I reset the redirect_url part of the data_session data, I was usually able to continue after that without the wwsympa.fcgi process looping. After poking around the redirect_url handling, I came up with a patch that seemed to fix it for me at the time. For some reason I did not apply that patch when I upgraded to 6.1, and have not run into that problem again. I just verified that I can't reproduce the problem I originally had.

I don't know if the Sympa upgrade made it go away, or perhaps an apache server upgrade fixed it.

My patch was to use the REQUEST_URI instead of the PATH_INFO environment variable (the escaping of certain characters was done differently between the two). The patch I was using at the time in case you want to try it:

--- /home/sympa/bin/wwsympa.fcgi.orig 2010-04-04 10:42:29.000000000 -0600
+++ /home/sympa/bin/wwsympa.fcgi 2010-04-03 16:21:27.000000000 -0600
@@ -1253,7 +1253,8 @@ my $birthday = time ;
## POST is not handled
## A lot of other methods where used in the past (before session was
introduced in Sympa). We must clean all.
unless ($temporary_actions{$action} || $ENV{'REQUEST_METHOD'} ne 'GET')
{
- $session->{'redirect_url'} =
$param->{'base_url'}.$param->{'path_cgi'}.$ENV{'PATH_INFO'};
+## $session->{'redirect_url'} =
$param->{'base_url'}.$param->{'path_cgi'}.$ENV{'PATH_INFO'};
+ $session->{'redirect_url'} =
$param->{'base_url'}.$ENV{'REQUEST_URI'};
}

$action ||= &Conf::get_robot_conf($robot, 'default_home');


---
Michael L. Hitch address@concealed
Operations Consulting, Information Technology Center
Montana State University, Bozeman, MT USA


  • Re: [sympa-users] Are plus sign (+) valid in lists name?, Michael L. Hitch, 04/05/2012

Archive powered by MHonArc 2.6.19+.

Top of Page