Rizwan Majeed wrote:
I was trying this out : $SomeVar =~ // ;$SomeVar =~ /''/ ;$SomeVar
=~ /\/ ;none of these works.
Need help
This list is for mod_perl questions. For beginner Perl questions, you
should try one of the mailing lists at http://lists.perl.org/ or post
your
Konstantin Yotov wrote:
MaxClients 150
MaxRequestsPerChild 0
You're probably running out of memory and going into swap, which will
give terrible performance. MaxClients 150 is really high, and you
should only set MaxRequestsPerChild to 0 if you're using
Apache::SizeLimit or
Gregory Matthews wrote:
Does this mean if each user has to use a unique username/password to
OPEN the database?
Yes, eaxctly.
My prog will use the same database:username:password
for all connection requests opened with a
db_connect($database,$user,$password) call, however, each user
Gregory Matthews wrote:
Yes, my prog checks for valid username/password requests and issues the
proper response. So it sounds like Apache::DBI is a good solution then
since all users will be working under the same handle?
Yes, that's correct.
Konstantin Yotov wrote:
On my
development machine everything was ok, but when I move
to productional server the mod_perl version works
twice slower than mod_cgi.
Start by making sure you really have mod_perl installed and your scripts
are running under it, and not mod_cgi. You can verify
mire wrote:
I have code like this:
RewriteEngine On
RewriteLog /var/site/rewrite.log
RewriteMaplb prg:/tmp/lb
RewriteRule ^/trta$ http://${lb:prvi|drugi} [proxy,last]
and a perl script (a copy from mod_proxy manual) but it doesn't work,
Stathy G. Touloumis wrote:
You need to do some more debugging. Problems with Apache::Session are
usually due to scoping, so put in some debug statements to see that the
session objects for the IDs having trouble are getting properly cleaned
up (i.e. DESTROY is getting called). It is possible
F.Xavier Noria wrote:
I am writing a web application that uses Apache modules and core classes
in a MVC style. AFAICT using $r-log-debug() is the standard way to
print debug messages in Apache modules, but which would be the right way
to print debug messages in the core classes provided both
Ken Williams wrote:
The idea is that I'd put a bunch of JPEGs on the
server at locations like foo/123.jpg , and then if a request came for
foo/123-medium.jpg , I'd catch that with a 404 ErrorDocument and
generate the resized image using Imager. If I wanted to, I could also
create the
Ken Williams wrote:
If you have the additional requirement that the unique values shouldn't
be easily *guessable*, that becomes a very hard problem, precisely
because random and unique are such poor friends. Usually people
just cheat by generating a large random ID such that the
[EMAIL PROTECTED] wrote:
I've been following this conversation and I'd like to clarify whether my
idea (since I and others want to do this as well) would be use an
incrementing counter for uniqueness. Then also store a bit of secret
randomness, concatenate both values together and create a
Richard Clarke wrote:
I use mod_perl/apache/soap::lite to create an internal application server
so that I can distribute processing load from the public webserver.
That would be a lot more efficient if you just used vanilla HTTP. Less
wasted overhead. This is the same principal at work when
David Jacobs wrote:
I'm converting a few CGI scripts that used the PID as a cyclical unique
number (in concert with TIMESTAMP - so it was TIMESTAMP.PID).
Our goal is to find a replacement function that is extremely cheap
(cheaper than say, random(100)) and will never repeat. Any
OCNS Consulting wrote:
Check your Programming in PERL book. Specifically, the srand function.
'random' ne 'unique'
A random function could return the same number 10 times in a row. It's
very unlikely, but it could happen. That's the definition of random.
- Perrin
Ernest Lergon wrote:
So I turned it around:
$col holds now 18 arrays with 14000 entries each and prints the correct
results:
...
and gives:
SIZE RSS SHARE
12364 12M 1044
Wow, 2 MB saved ;-))
That's pretty good, but obviously not what you were after.
I tried using the pre-size
Lihn, Steve wrote:
How do you use cron to do scheduling, yet calls Apache/mod_perl to
do the processing?
Your cron script just uses LWP to call a module running in mod_perl.
Consider cron does not exist in Win32, maybe an all-Apache solution
will be simpler and more elegant!?
Cron does
$foo-{$i} = [ record ];
You're creating 14000 arrays, and references to them (refs take up space
too!). That's where the memory is going.
See if you can use a more efficient data structure. For example, it
takes less space to make 4 arrays with 14000 entries in each than to
make 14000 arrays
Lihn, Steve wrote:
[Thu Apr 25 15:32:15 2002] [error] Bareword Apache::OK not allowed while
strict subs in use at C:\Apache2/blib/lib/Apache2/Apache/Echo.pm line 25.
Compilation failed in require at (eval 2) line 3.
What do I miss?
Try Apache::OK() instead. Damn these faux constants!
Oops, that's right, it's in the Apache::Constants package. Changing
your code to say Apache::Constants::OK should do it. No need to import
all of that stuff unless you want to.
Jon Robison wrote:
maybe a use Apache::Constants qw/ :common /;
--Jon Robison
Lihn, Steve wrote:
Hi,
Martin Haase-Thomas wrote:
forwarding is a term that i borrowed from the JSP concept - which i'm
currently trying to implement in perl.
JSP forward is directly equivalent to an internal redirect. It's just
an include that doesn't return. In short, it's a GOTO statement. Thank
you Sun.
-
Nigel Hamilton wrote:
I would love to run 250 Apache children on my linux server but I
just don't have enough memory (50 children max).
thread still needs its own perl interpreter.Then you probably won't
have enough memory with Apache 2 either. There is some additional
memory
Peter Bi wrote:
Well, I changed it back to HTML::Template.
No template flame wars, please. HTML::Template is not unique (it has
much in common with Template Toolkit and dozens of other less famous
modules from CPAN), and Embperl::Object is really pretty cool. Your
original point about
Issac Goldstand wrote:
Reposting a question (and the answer) that geoff and I discussed in the
IRC room, as I think it's worthwhile to mention...
I had the following line of code (actually many of the sort):
$r-custom_response(FORBIDDEN=File size exceeds quota.);
And kept getting errors
Per Einar Ellefsen wrote:
Well, this one is exported by Apache::Constants, so if you don't want to do
$FORBIDDEN = FORBIDDEN;
somewhere at the top of your code, you're bound to continue using
constants, right?
That's still safer. I used the constants pragma on a big project and I
saw
Per Einar Ellefsen wrote:
I suppose Apache::Constants could have been extended to return globals
if requested... But is there really any gain in that?
Only in that people will not get tripped up by the possible bugs that
using subroutines as constants causes. I guess Apache::Constants is
F. Xavier Noria wrote:
The fact is that developers in my team have Apache under /usr/local in
Linux machines, but we would prefer to develop as normal users, not as
www or nobody, though that will be the user in production.
What is the standard way to configure things for that? We have
Paul Lindner wrote:
But while I have your attention, why are you using Apache::DB at all? The
Apache::DProf docs just have:
PerlModule Apache::DProf
Legacy knowledge :)
I think it may have been required in the past, or perhaps I had some
problems with my INC paths long-long ago..
Nigel Hamilton wrote:
I'm looking for a two-way cipher to obfuscate URL parameters
safely and succinctly (not too many extra characters).
Try Crypt::CBC.
- Perrin
Benjamin Elbirt wrote:
Well, lets assume that I were to go with
the shared memory option anyway... what would the pitfalls be / concerns?
As mentioned before, you'd probably be better off with MLDBM::Sync or
Cache::Cache. You can try IPC::Shareable, but a lot of people seem to
have trouble
Abstracting access to data is only half of the storythe more
challenging
part is race conditions and lock management...
All of the data sharing tools take the logistics of multi-process
read/write situations into account, although they do it in different
ways. Some use file locking,
Florence Dardenne wrote:
Does mod_perl 1.26 includes the 'PerlRequire' functionality or do I need
higher version ?
All versions of mod_perl have that feature. You must not have mod_perl
compiled into that server. See this entry in the guide:
[EMAIL PROTECTED] wrote:
I am a newbie and had developed a proof-of-concept application on Apache
1.3.23/Mod_Perl-1.26-dev. We are researching into moving away from ASP/IIS
Webapplications to Apache/Mod_Perl. I am stuck with the latest Apache 2.0.35 with the
following problems.
Do you really
Sam Tregar wrote:
On Tue, 16 Apr 2002, Sam Tregar wrote:
On 16 Apr 2002, Garth Winter Webb wrote:
Sam, try getting rid of the 'PerlModule Apache::DB' line. I've used
Apache::DProf w/o any problems by including only the one PerlModule
line. Since they both want to use perl debugging
Fran Fabrizio wrote:
Unfortunately, there's some terminology muddling...AuthCookie calls it a
session when it establishes that a user is a valid user and sets a
cookie on their browser. Apache::Session considers a session a series
of page hits from the same user. It assumes you've
Daniel W. Burke wrote:
We have an application we're serving by using the same
set of source code, and setting up different Location
sections in the virtual host to set different variables
and path aliases based on who the customer is...
...
What I'd like to do (if even possible!), is have
Tatsuhiko Miyagawa wrote:
Announcing new Apache module (written in C):
mod_log_sqlite is an Apache logging module for sqlite database. It
allows you to log your HTTP stats into sqlite, then you can do queries
using sqlite's SQL feature (including subselects, views) to HTTP
statistics.
The
[EMAIL PROTECTED] wrote:
On Fri, 12 Apr 2002, Stas Bekman wrote:
But if talk about futuristic Solar variables (perl globals shared
between threads). what if a solar variable is a reference to CODE? Can
this be shared? If so, will reloading this variable in one interpreter
affect others?
Sreeji K Das wrote:
Thanx for the reply (I hardly get replies for subjects
with restart :-( I guess I'm the only one using
PerlFreshRestart (sic !).
Hopefully you are the only one!
My requirement is to do a neat kill of children and
then do a complete restart. I don't want any existing
mire wrote:
1) what happens when you set an alarm for lets say 30 seconds and the request
finishes in 20 ?
You are supposed to unset the alarm if the event you were timing
finishes before it goes off.
2) does apache child die when you issue die; from perl code (mod_perl
ofcourse) ?
No,
Please kill this thread. Some people are not good at dealing with
mailing lists. At least this guy was polite.
- Perrin
Mark Fowler wrote:
Sounds like you're getting confused between [% %] for template code
and [% PERL %] ... [% END %] for actual real perl code
Agreed. Also, any significant Mason component is likely to use Mason's
built-in object model, which is not part of TT. You will probably have
to
Ged Haywood wrote:
Hi there,
On Tue, 2 Apr 2002, [iso-8859-1] Sreeji K Das wrote:
I use PerlFreshRestart on to reload my modules.
[snip]
However, here my modules are getting loaded before the
PerlRequire'd is loaded (since %INC is a hash).
First, can some1 suggest a solution for
Ged Haywood wrote:
I'd suggest setting MaxRequestsPerChild to a low value (I generally
use something in the range of 50-100 but Perrin will tell you that's
*very* low... :) to avoid leak problems.
A setting of 0 is fine, as long as you are using Apache::SizeLimit or
Apache::GTopLimit. In
Rafiq Ismail (ADMIN) wrote:
It's just the fact that in spite of my specifying that it should use
inline_perl, it didn't interpolate the inline code which uses custom
modules in mason tags. I've got it to try and interpolate now, however it
seems to warn that $VARNAME's are odd symbols.
If
John Kolvereid wrote:
Thanks for all your help, but I am NOT able to
install mod_perl. It's probably something that is not
installed on my particular server - I'll never know.
I suspect you were just trying to do too much at once on your first try
by throwing PHP and SSL in the mix. I
Rasoul Hajikhani wrote:
Has anyone purchased the mod_perl cook book from this list? If so, what
do you think of it? Is it a good buy?
Yes. Go get it.
- Perrin
[EMAIL PROTECTED] wrote:
I know alot of you must do this.
I want build a simple APP framework to chain the output of all my content
handlers, which would live in many different PM's for easy code management.
for example:
APP::Header
APP::Footer
APP::Content
APP::Chemical_entry
Mike808 wrote:
Don't know if you can run a JServ+mod_perl or JPerl hybrid, though.
You can, but it would be the biggest memory hog every created, since it
would be running a JVM in addition to the Perl interpreters.
- Perrin
Franck PORCHER wrote:
So my question narrows down to :
How to flush on disk the cache of a tied DBM (DB_File) structure
in a way that any concurrent process accessing it in *read only* mode
would automatically get the new values as soon as they
are published (synchronisation)
You have to
Isn't that just as simple as
tied(%dbm_array)-sync();
I believe that's not enough, because the reader may read data during
the
write, resulting in corrupted data read.
Not only that, there's also the issue with at least some dbm
implementations that they cache part of the file in memory
Eric Frazier wrote:
I also still don't see how a connection can be reconnected at such a high
level.
It can't, unless your database specifically supports the command
reauthenticate. Oracle does, which is what he wrote this for, but I
don't think it's a standard part of SQL syntax so it will
Also, I read about issues of database handlers becoming
unstable across forks. So should I place this initialization
information into a perl child init handler?
See the connect_on_init() method in the Apache::DBI docs.
We use PerlSetVar's for this where I work.
That's how I would do it
Christopher H. Laco wrote:
If I use the module in startup.pl, and have it load all of it's data at
startup, it that the instance all child processes will use?
Yes, that's the best way to do it.
On a side note, I'm fairly comfortable with Perl/OOP at the
batch/command/cgi level, but the
In my limited understanding then, in the startup.pl, one could do the
following:
use strict;
use MyMod::Config();
MyMod::Config::load();
Yes. Then you can have a function for accessing the config variables,
or put them in globals ($MyMod::Config::database_password), or various
other
i would like to prevent any of my mod_perl scripts from running longer
than
5 seconds. is there an elegant way to make a general timeout that
does not
require changing all my scripts? i run both Registry and Mason
scripts in
my environment.
You could try setting an alarm in a fixup
My first thoughts were to use mod_proxy to forward requests for
/protected/login to the backend, where the authentication will be
done.
Then, just redirect the request to another URL behind /protected. The
authentication information should be passed as part of the request,
should
it not?
Maybe i have been searching for the wrong keywords or been looking in
the wrong places
You have. Try this:
http://search.cpan.org/search?mode=distquery=astro
- Perrin
Bob Pickles wrote:
I've been hacking at this a couple days. At first I really wanted to
get mod_perl working as a DSO. Got everything compiled, and added lines
to httpd.conf. Died on startup if I had AddModule mod_perl.c.
Following a tip on this list, I gave up on DSO and went static
Stas Bekman wrote:
Arh, I mean to use the hints how to get the core dump backtrace.
Hang on, this guy is just trying to do an install. He shouldn't need to
troubleshoot at that low a level.
John, who built this server and why is it DSO? If you have control of
this system, I would recommend
Sorry you're having so much trouble with the install. It goes pretty
smoothly for most people, but you are complicating things a bit by
putting PHP and SSL in the mix on your first try.
Perrin, I have no idea if DSO is still involved
Apache will not build DSO unless you tell it to.
Your
Ernest Lergon wrote:
just throwing a glance I found:
http://thingy.kcilink.com/modperlguide/modules/Apache_PerlVINC_Allows_Module.html
Not a good idea for production use. It will slow things down. Handy
for development with multiple projects using separate virtual hosts though.
- Perrin
Ed Grimm wrote:
First, I'll suggest that there are hopefully other areas you can look at
optimizing that will get you a bigger bang for your time - in my test
environment (old hardware), it takes 7.4 ms per
disconnect/reconnect/rebind and 4.8 ms per rebind. Admittedly, I'm
dealing with LDAP
Wouldn't it thus be simpler and more convenient
for 1st times like myself if the guide download were
simply the already created html pages which appear
online.
Frankly, hardly anyone does that. Most people refer to the guide
on-line. I've used mod_perl for years, referred to the guide
Im curious as to the difference in performance when using perl scripts
with
Apache::Registry or writing complete Apache Modules in Perl that
conform to
the API?
Check the list archives for benchmarks by Joshua Chamas. Note that
there are other reasons to use handlers instead of Registry,
Stas Bekman wrote:
Moreover the memory doesn't
get unshared
when the parent pages are paged out, it's the reporting tools that
report the wrong
information and of course mislead the the size limiting modules which
start killing
the processes.
Apache::SizeLimit just reads /proc on Linux.
Kee Hinckley wrote: 1. *Why* are the apache config files executed twice (completely
with
loading and unloading all the modules)?
This is a core apache thing. Apache does it to verify that a restart is
safe. See
Kee Hinckley wrote:
At Embperl 2.0b6 Gerald switched to a new architecture. The previous
version was just a plain Perl module loaded as a handler by mod_perl.
This version is also an Apache module.
Okay, if it's only in the recent betas then it's possible that only a
few people have
David Brown wrote:
All good and well I thought.. But erm.. nothing is being created in the
dprof directory in the server-root.
When you call the script, do you get segfaults in the error log?
Make sure that you do the DProf stuff, including Apache::DB-init(),
before you load any of your
John Michael wrote:
Any idea as to how it got on my server.
Someone found a serious security hole in something you're running. You
have to assume that your server has been completely compromised and that
the entire world now has root access to it through a hundred backdoors
they installed.
Please, please, please KILL THIS THREAD!
Dan Wilga wrote:
If I either use DB 3.x or even run this from the commandline (bypassing
mod_perl) under DB 4 the problem goes away: only one locker is allocated
per loop, and therefore the total number used does not increase
unexpectedly.
This sort of begs the question: why not use DB
Dan Wilga wrote:
What surprises me is that all I have to do to introduce the problem is
run it under mod_perl. It acts normally when run from the commandline.
Well, let's see, what would be different...
Is it possible that the problem is concurrency from multiple mod_perl
processes? What
In addition to the techniques Stas mentioned (which I've always found to
be more than adequate), there are tons of configuration modules on CPAN.
AppConfig, Config::* modules, etc. Just make sure you choose one that
can do layered configs, so that you can specify a configuration that's
shared
I am in front of a security issue. We are running several site using
modperl. Last days, a hacker used a script to call some script of our
sites
for bad purpose. He needed to be authenticated, but we are only using
session cookies. Then, once he was loged in, he could retrieve this id
and
Andre Terroux wrote:
Hi Team, new subscriber here hoping someone can help me out. I'm getting a
weird behavior with Apache: after running for a while, always two httpd
processes have to be restarted because they use up around 8% of CPU each.
This is probably caused by a bug in your perl code.
Georgy Vladimirov wrote:
The Java people escaped from the underscore and started
capitalization.
underscores_are_much_easier_to_read ThanSomeSillyCapitalizationScheme.
Underscores are the standard for Perl variable names, and for good reason.
Anyway, it's a moot point because the name isn't
mire wrote:
Beta contains new code and www is old code. We were calling www but once a
while beta would pop in. We noticed error messages that were giving whole
stack trace (caller) but those error messages were not present in www code,
they are implemented as a change in beta code.
Are you
Parag R Naik wrote:
We have installed perl 5.6 but we are
not able to figure out how to instruct apache to use that version of
perl(5.6
You have to re-compile mod_perl.
Is the our directive used in some of files new to perl 5.6 because we
could not find that directive in the most of
Andrew Green wrote:
In particular, I'm
looking for reassurance that passing a reference to a hash doesn't copy
the hash itself into memory in any way, and that the memory overhead is
only as large as the largest $item.
That's basically correct, but some dbm implementations will use their
Jauder Ho wrote:
Another application (commercial) is Mercury Interactive's LoadRunner.
My experience with commercial load-testing apps is that they are
outrageously expensive, a pain to program, don't really scale all that
well, and mostly have to run on Windows with someone sitting at the
Could you describe the actual nature of the error? How can you tell
that the response you're getting is from the wrong virtual host and what
is different about the virtual hosts' setup that causes the difference
in responses?
- Perrin
Geoffrey Young wrote:
I don't have a copy of the Eagle book in front of me
The API chapter is online and it talks about print() and timeouts:
http://modperl.com:9000/book/chapters/ch9.html
- Perrin
Paul Lindner wrote:
You'll find that $r-internal_redirect() is the mod_perl equivalent.
Also Apache::ASP containts the Transfer() method which accomplishes
the same thing.
Personally, I always thought this was sort of a strange part of JSP. It
really shows the page-centric thinking behind
Elizabeth Mattijsen wrote:
Since Perl is basically all data, you would need to find a way of
localizing all memory that is changing to as few memory chunks as
possible.
That certainly would help. However, I don't think you can do that in
any easy way. Perl doesn't try to keep compiled
Nico Erfurth wrote:
Today i had a big problem, and i don't know how to track it down.
After changing one of my tool-modules apache segfaults on startup.
So, how can i debug something like this?
Do you know exactly what you changed? In that case, you have a small
amount of code to look
Bill Marrs wrote:
But... recently, something happened, and things have changed. After
some random amount of time (1 to 40 minutes or so, under load), the
parent httpd suddenly loses about 7-10mb of share between it and any new
child it spawns.
One possible reason is that a perl memory
Ray Recendez wrote:
I am new to perl/mod_perl and I am trying to implement secure
authentication with expirable ticket/cookies on our website (Apache
1.3.9-Solaris 2.8). I am trying to use Apache::TicketAccess with Apache
1.3.9, modssl, openssl, and mod_ssl installed but I am having
Bill Marrs wrote:
When I install the recent Redhat 7.2 updates for glibc:
glibc-2.2.4-19.3.i386.rpm
glibc-common-2.2.4-19.3.i386.rpm
glibc-devel-2.2.4-19.3.i386.rpm
It breaks my Apache GTop-based Perl modules, in a way that I don't
understand.
[...]
Anyone have a clue about what I'd
Ray Recendez wrote:
Yes I have MD5 installed. However, MD5.pm is located in the following
locations: /usr/local/lib/perl5/site_perl/5.6.1/sun4-solaris/MD5.pm ;
/usr/local/lib/perl5/site_perl/5.6.1/sun4-solaris/MD5/MD5.pm ; and
/usr/local/lib/perl5/site_perl/5.6.1/MD5.pm. Which one is correct?
Chris Allen wrote:
In desperation, I have switched to Cache::FileCache - which
works fine, but I would be interested to know, for a system
that handles several hundred database queries per minute:
- What is the performance difference between SharedMemoryCache
and FileCache?
You can test
Ray Recendez wrote:
Running it from the command line seems to work:
rift_rootperl -MMD5 -e 'print ok\n;'
ok
Is it possible that you may have installed this module using a different
compiler from the one you used for mod_perl? or maybe built mod_perl
against a different perl installation?
Wilfred Chan wrote:
I am fairly new at
this and I just wanted to ask what you guys think the differences are
between running apache on Windows VS on linux.
The bottom line is that mod_perl has better performance on Linux because
of threading issues on Windows. There's a link to a writeup
Mike Martinet wrote:
Can anyone tell me if $Response-Debug from Apache::ASP is implemented
in ActiveState Perl under IIS?
Since your questions is about Microsoft ASP, you might want to ask it on
a Microsoft ASP list. You already know that Apache::ASP supports it.
- Perrin
Cahill, Earl wrote:
I would not be opposed to calling a different,
more standard function to check the cache (set up in a more standard way),
and then fetch accordingly.
Look at how the Memoize module does it. You may be able to do something
similar that would allow caching to be added
Gordon Henriksen wrote:
I see three options open to me:
1. static mod_perl w/ PerlFreshRestart
Reloads %INC.
downside: Heresay claims historical instablity.
2. dynamic mod_perl
Tears down cleans up Perl interpreter on graceful restart.
downside: Heresay
Geoffrey Young wrote:
we do that frequently here - 7 servers behind a BigIP. I've always
wondered, though, whether this approach is foolproof for major
upgrades for applications that maintain state - since a user might
have a session created using a new-code box, then hit an old-code box
on
We had been using Option 1 for a long time we had
absolutely no problems
But doesn't it totally wreck your shared memory? For me that would make
it unusable. I usually get a pretty large percentage of memory to be
shared and count on that for getting maximum capacity from each box.
-
Rafael Caceres wrote:
I'm facing a dilemma here. We are testing an Oracle 9iAS installation
(Apache 1.3.19, mod_ssl 2.8.1, mod_perl 1.25 as DSO, Perl 5.005_03) on
Red Hat Linux 7.2, which itself came with Perl 5.6.0, and from your
comments, that's bad..
First of all, if it's working for
Fulko Hew wrote:
Hang on. I just found it (by way of Slashdot)... it was about eToys,
October 17, 2001, its web 5 pages long, and mentions Randal Schwartz
and Damian Conway. I knew I wasn't dreamming!
Um, that was my article, and it certainly doesn't say anything like but
in the end the
Kurt Hansen wrote:
What I really want to know is: what ever happened to that eToys jingle that was on
the commercials?
That song is by Hawaiian performer Israel Kamakawiwo`ole. Here's a link
to the CD:
http://album.yahoo.com/shop?d=haid=1804600529cf=10intl=us
- Perrin
501 - 600 of 1288 matches
Mail list logo