Accéder au contenu.
Menu Sympa

fr - [Patch] Nouveau paramètre log socket type (unix/inet)

Objet : Pour les administrateurs de serveurs de listes utilisant le logiciel Sympa

Archives de la liste

Chronologique Discussions  
  • From: Raphael Hertzog <adresse@cachée>
  • To: adresse@cachée
  • Subject: [Patch] Nouveau paramètre log socket type (unix/inet)
  • Date: Wed, 2 Sep 1998 15:26:40 +0200

Bonjour,

je joins un patch permettant d'ajouter un paramètre log_socket_type qui
contrôle le type de socket utilisé par sympa pour envoyer les logs à
syslogd. J'ai laissé par défaut 'inet' dans le fichier de configuration
mais les utilisateurs de Linux pourront avantageusement utiliser 'unix'
à la place. Cela leur évitera de rajouter "-r" au lancement de syslogd.

J'ai testé chez moi et j'ai pas vu de problèmes.

Je joins aussi quatre fichiers pods que j'ai rédigé pour la documentation
du paquet Debian. Ils peuvent servir à créer des pages de manuel
avec pod2man ou alors vous pouvez vous en servir pour élaborer une
documentation plus complète. Il y a deux fichiers pods français et deux
anglais.

Amicalement.
--
Hertzog Raphaël ¤ 0C4CABF1 ¤ http://www.mygale.org/~hra/
diff -u -r sympa-1.3.1.2.orig/doc/sympa.sgml sympa-1.3.1-2/doc/sympa.sgml
--- sympa-1.3.1.2.orig/doc/sympa.sgml Thu Jul 2 14:58:37 1998
+++ sympa-1.3.1-2/doc/sympa.sgml Wed Sep 2 12:10:41 1998
@@ -742,7 +742,14 @@
<p>Exemple :
sleep 1
</quote>
-
+
+ <item><tt>log_socket_type</tt><quote>
+ Type de socket utilisée pour envoyer les logs à syslogd. Peut prendre
+ la valeur 'unix' ou 'inet'.
+ <p>Exemple :
+ log_socket_type unix
+ </quote>
+
</itemize>

La distribution de sympa contient un exemple de ce fichier sympa.conf.
@@ -1922,7 +1929,8 @@
<item> Après avoir modifié la configuration du <bf>syslogd</bf> pour
qu'il
y ait des logs dans /var/log/sympa, vous devez redémarrer
<bf>syslogd</bf>
avec l'option <bf>-r</bf> pour qu'il accepte de recevoir des
messages
- via UDP.
+ via UDP. Ou alors vous devez modifier le paramètre
+ 'log_socket_type' de sympa.conf en 'unix' (au lieu de 'inet').

<item> La librairie PERL nécessite quelques corrections. Dans le module
<tt>Syslog.pm</tt> (/usr/lib/perl5/Sys/Syslog.pm), veuillez
remplacer
diff -u -r sympa-1.3.1.2.orig/sample/sympa.conf
sympa-1.3.1-2/sample/sympa.conf
--- sympa-1.3.1.2.orig/sample/sympa.conf Thu Jul 2 14:54:59 1998
+++ sympa-1.3.1-2/sample/sympa.conf Wed Sep 2 11:56:28 1998
@@ -84,4 +84,7 @@

## Attente entre chaque scan de la queue (ne jamais mettre zero)
sleep 5
-
+
+## Type de socket utilisé pour l'envoi des logs à syslogd
+## Peut prendre la valeur 'unix' ou 'inet'
+log_socket_type inet
diff -u -r sympa-1.3.1.2.orig/src/Conf.pm sympa-1.3.1-2/src/Conf.pm
--- sympa-1.3.1.2.orig/src/Conf.pm Wed Sep 2 12:05:19 1998
+++ sympa-1.3.1-2/src/Conf.pm Wed Sep 2 11:41:20 1998
@@ -21,6 +21,7 @@
queue queuedigest queuemod queueexpire queueauth
sleep
clean_delay_queue clean_delay_queuemod clean_delay_queueauth
+ log_socket_type
);
my %valid_options = ();
map { $valid_options{$_}++; } @valid_options;
diff -u -r sympa-1.3.1.2.orig/src/Log.pm sympa-1.3.1-2/src/Log.pm
--- sympa-1.3.1.2.orig/src/Log.pm Mon May 25 10:58:25 1998
+++ sympa-1.3.1-2/src/Log.pm Wed Sep 2 12:08:33 1998
@@ -42,7 +42,15 @@

sub do_openlog {
my $fac = shift;
+ my $log_socket_type = shift;

+ if ($log_socket_type !~ /^unix|inet$/i) {
+ carp "Parameter log_socket_type has a bad value ($log_socket_type) : "
.
+ "defaulting to 'inet'\n";
+ $log_socket_type = 'inet';
+ }
+ Sys::Syslog::setlogsock(lc($log_socket_type)) or
+ carp "Cannot use '$log_socket_type' socket for logging !\n";
openlog("sympa[$$]", 'ndelay', $fac);
}

diff -u -r sympa-1.3.1.2.orig/src/sympa.pl sympa-1.3.1-2/src/sympa.pl
--- sympa-1.3.1.2.orig/src/sympa.pl Mon Jul 6 16:09:54 1998
+++ sympa-1.3.1-2/src/sympa.pl Wed Sep 2 11:53:47 1998
@@ -68,7 +68,7 @@
Language::SetLang('default.cat') unless (-f $opt_l);

## Open the syslog and say we're read out stuff.
-do_openlog($Conf{'syslog'});
+do_openlog($Conf{'syslog'}, $Conf{'log_socket_type'});
do_log('debug', Msg(1, 6, 'Configuration file read'));

## Main program
@@ -99,7 +99,7 @@
do_log('debug', "Starting server, pid $_");
exit(0);
}
- do_openlog($Conf{'syslog'});
+ do_openlog($Conf{'syslog'}, $Conf{'log_socket_type'});
}

## Create and write the pidfile
=head1 NAME

F</etc/sympa.conf> - SYMPA configuration file

=head1 DESCRIPTION

The sympa.conf file is composed by lines like this :
keyword value

Any empty lines or beginning with "#" are ignored.

All those keywords are mandatory :

=over 5

=item * home

The directory containing general configuration files (e.g. expl/lists and
expl/helpfile) and the own directory of each mailing-list.
I<Example: home /var/lib/sympa/expl>

=item * pidfile

The file where the sympa process write its own process number (pid).
I<Example: pidfile /var/lib/sympa/sympa.pid>

=item * lists

The filename of the B<"lists"> file (located in $home) containing the
name of the mailing-lists announced by sympa (command LIST).
I<Example: lists lists>

=item * help

The filename of the B<"helpfile"> file (located in $home) containing the
help returned after an HELP command. I<Example: help helpfile>

=item * umask

The umask value used for the creation of all files. I<Example: umask 027>

=item * syslog

The facility used for emitting log messages. I<Example: syslog LOCAL1>

=item * nrcpt

The maximum number of recipients per sendmail process when they are in the
same domain. Sympa sorts the subscribers list by domain in order to
optimize the number of SMTP sessions used for spreading messages.
I<Example: nrcpt 30>

=item * avg

Number of recipients per sendmail process in the case of recipients in
different domains. I<Example: avg 15>

=item * sendmail

Path to the sendmail program. I<Example: sendmail /usr/sbin/sendmail>

=item * host

Hostname used for the From in answers to administrative requests.
I<Example: myhost.cru.fr>

=item * email

Username part of the e-mail adress used for answers to administrative
requests.
I<Example: sympa>

=item * tri

Priority order for sending mails of the queue. The sort is done on the
domain names. For example, we could prefer sendind mails in priority
of messages coming from B<.fr> and next B<.edu>, etc.
I<Example: tri fr,ca,be,ch,uk,edu,*,com>

=item * queue

The directory which will be the queue. It is used by the programs queue and
sympa.pl. I<Example: queue /var/spool/sympa/queue>

=item * clean_delay_queue

The number of days that bad messages (causing problems or badly formated)
are kept. I<Example: clean_delay_queue 1>

=item * queuemod

Queue of the messages to moderate. I<Example: queuemod
/var/spool/sympa/queuemod>

=item * clean_delay_queuemod

The number of days that messages to moderate are kept.
I<Example: clean_delay_queuemod 10>

=item * queuedigest

The directory used for the digest queue.
I<Example: queuedigest /var/spool/sympa/queuedigest>

=item * queueexpire

The directory used for the queue of the expiration process of the
subscriptions. I<Example: queueexpire /var/spool/sympa/queueexpire>

=item * queueauth

The directory used for the queue containing messages in waiting of
confirmation by their author. I<Example: queueauth /var/spool/sympa/queueauth>

=item * clean_delay_queueauth

The numbers of days that messages in waiting of a confirmation are kept.
I<Example: clean_delay_queueauth 3>

=item * sleep

Number of seconds waited before each queue scan (never use zero).
I<Example: sleep 5>.

=item * log_socket_type

Type of socket used for sending log to syslogd (can be unix or inet).
I<Example: log_socket_type unix>

=back

=head1 SEE ALSO

L<sympa(1)>

=head1 NAME

sympa (or sympa.pl) - Automatic Mailing System

=head1 SYNOPSIS

B<sympa> S<[ B<-l catalog.cat> ]>
S<[ B<-d> ] [ B<-f another.sympa.conf> ] [ B<-m> ] [ B<-F> ]>

=head1 DESCRIPTION

Sympa is a modern mailing-list manager. It supports a lot of useful
features :

=over 5

=item *

moderation

=item *

authentication

=item *

digest mode (or compilation mode)

=item *

archive management

=item *

multi-language support

=back

=head1 COMMANDS

Refer to F<helpfile> (look in F</etc/sympa.conf> for his location) which
describe the commands that Sympa currently support.

=head1 OPTIONS

=over 5

=item B<-d>

Enable debug mode.

=item B<-f another.sympa.conf>

Use F<another.sympa.conf> instead of F</etc/sympa.conf>.

=item B<-l message.cat>

Use another message catalog for sympa.

=item B<-m>

Log any invocation of sendmail.

=item B<-F>

Run in foreground and log to stderr.

=back

=head1 HOW TO CREATE A MAILING-LIST ?

We'll try to create a mailing-list named "toto". Four step are needed :

=head2 Adding aliases

For each mailing-list, you will need to add 3 aliases :

toto: "|/usr/lib/sympa/queue A toto"
toto-request: adresse@cachée
toto-owner: adresse@cachée

Don't forget to run B<newaliases> after editing F</etc/aliases>. This
must be done by root.

=head2 Modifying $HOME/$LISTS

The lists file (look in F</etc/sympa.conf> for his location) must be
modified in order to announce the list when a LISTs command is
submitted.

=head2 Creating list directory and config file

You have to create the F<$HOME/toto>
(something like F</var/lib/sympa/expl/toto>)
directory where all files for this mailing-list will be stored. Be sure
to do it with the sympa user in order to have good permissions.

Now you have to create F<$HOME/toto/config> file. You can use one of the
sample file from the F</usr/doc/sympa/sample> directory.

The file is composed by thoses entities :

=over 5

=item * B<Owner>

Example:
owner
email adresse@cachée
gecos C.R.U.
auth md5

=item * B<Editor (for moderated list)>

Example:
editor
email adresse@cachée
gecos Olivier GORGES licence d'info

=item * B<Subscription E<lt>open|owner|closed|authE<gt>>

=item * B<Unsubscribe E<lt>open|authE<gt>>

=item * B<Send
E<lt>public|publickey|private|privatekey|privateorpublickey|editor|editorkey|editorkeyonlyE<gt>>

=item * B<Reply-to E<lt>sender|listE<gt>>

=item * B<Review E<lt>public|private|ownerE<gt>>

=item * B<Archive E<lt>day|week|month|quarter|yearE<gt>> (optional)

=item * B<Max_size E<lt>number of bytesE<gt>> (optional)

=item * B<Host E<lt>domain.frE<gt>> (optional)

=item * B<Custom-Header E<lt>Header fieldE<gt>: E<lt>valueE<gt>> (optional)

Example:
Custom-Header X-URL: http://adresse@cachée

=item * B<Digest E<lt>daysE<gt> E<lt>hourE<gt>:E<lt>minutesE<gt>> (optional)

Example: digest 1,2,3,4,5 15:30

=item * B<Cookie E<lt>random_secret_keyE<gt>> (optional)

Example: cookie secret22kj

=back

=head2 Creating 'bienvenue' (welcome) file

And last but not least, you must write the welcome message which will be sent
to each new subscriber. The file used is F<$HOME/toto/bienvenue> (e.g.
F</var/lib/sympa/expl/toto/bienvenue>).

Now you've got a running mailing-list.

=head1 SEE ALSO

L<sympa.conf(5)>, L<sendmail(8)>

=head1 COPYRIGHT

Copyright (C) 1997,1998 Institut Pasteur & Christophe Wolfhugel

Copyright (C) 1997,1998 Comité Réseau des Universités

Ce logiciel peut être redistribué librement sous sa forme source uniquement.
La distribution doit obligatoirement être gratuite et cette notice de
Copyright ne doit pas être altérée.

Si vous modifiez ce logiciel vous devez clairement faire apparaître que
celui-ci a été modifié et faire en sorte qu'il n'y ait aucune ambiguité
quand à son origine. Vous ne devez en aucun cas utiliser les noms de
l'Institut Pasteur, du Comité Réseau des Universités ou de l'auteur pour
promouvoir un produit dérivé.
=head1 NOM

/etc/sympa.conf - Fichier de configuration de SYMPA

=head1 DESCRIPTION

Reportez-vous à la documentation disponible soit dans le
paquet .tar.gz des sources soit dans F</usr/doc/sympa/>.

Le fichier F<sympa.sgml> explique tout en détail. Vous
trouverez un fichier exemple également, il est commenté
en français.

Pour obtenir d'autres version de la documentation :

=over 5

=item * HTML

C<sgml2html -c latin -s 0 sympa.sgml>

=item * texte

C<sgml2txt -c latin sympa.sgml>

=item * PostScript

C<sgml2latex -c latin --output=ps sympa.sgml>

=back

=head1 VOIR AUSSI

L<sympa(1)>

=head1 NOM

sympa (ou sympa.pl) - SYstème de Multi-Postage Automatique

=head1 SYNOPSIS

B<sympa> S<[ B<-l catalog.cat> ]>
S<[ B<-d> ] [ B<-f autre.sympa.conf> ] [ B<-m> ] [ B<-F> ]>

=head1 DESCRIPTION

SYMPA est un gestionnaire de listes de diffusion moderne. Il dispose
de nombreuses fonctionnalités fort utiles :

=over 5

=item *

modération

=item *

authentification

=item *

digest mode (compilation de tous les messages en un gros message)

=item *

gestion des archives

=item *

support multi-langage

=back

=head1 COMMANDES

Reportez-vous au fichier F<helpfile> (voyez dans F</etc/sympa.conf> pour
trouver
son chemin sur le disque) qui décrit les commandes que Sympa supporte
actuellement.

=head1 OPTIONS

=over 5

=item B<-d>

Active le mode debug.

=item B<-f autre.sympa.conf>

Utilise F<autre.sympa.conf> à la place de F</etc/sympa.conf>.

=item B<-l message.cat>

Utilise un autre catalogue de message (couramment pour changer de langue).

=item B<-m>

Enregistre tous les appels de sendmail.

=item B<-F>

Lancement en avant-plan et émission des logs sur la sortie standard des
erreurs (stderr).

=head1 VOIR AUSSI

L<sympa.conf(5)>, L<sendmail(8)>

=head1 COPYRIGHT

Copyright (C) 1997,1998 Institut Pasteur & Christophe Wolfhugel
Copyright (C) 1997,1998 Comité Réseau des Universités

Ce logiciel peut être redistribué librement sous sa forme source uniquement.
La distribution doit obligatoirement être gratuite et cette notice de
Copyright ne doit pas être altérée.

Si vous modifiez ce logiciel vous devez clairement faire apparaître que
celui-ci a été modifié et faire en sorte qu'il n'y ait aucune ambiguité
quand à son origine. Vous ne devez en aucun cas utiliser les noms de
l'Institut Pasteur, du Comité Réseau des Universités ou de l'auteur pour
promouvoir un produit dérivé.


  • [Patch] Nouveau paramètre log socket type (unix/inet), Raphael Hertzog, 02/09/1998

Archives gérées par MHonArc 2.6.19+.

Haut de le page