|
|||||||||||||||||||||||||||
Jeg har fumlet i over to timer for at lave den smule her.
Da det volder nogen problemer at unsubscribe fra sslug
listerne prøver jeg at lave det nemmere. Men jeg er
ikke programmør og det skal være pålideligt.
Kan man altid regne med Return-Path ?
Er følgende pålideligt?
#!/usr/bin/perl -w
while (<>) {
if ($_ =~ /Return-Path: <sslug-/) {
s/Return-Path: <//i; s/>$//;
@token = split "-";
if ($token[2] =~ /digest/) {
printf "%s-%s-digest-unsubscribe-%s\n",
$token[0], $token[1], $token[-1];
} else {
printf "%s-%s-unsubscribe-%s\n", $token[0], $token[1], $token[-1];
}
last;
} else {
die "Jeg kan ikke finde nogen sslug return-path i brevet. Prøv igen.\n";
}
}
Brug:
Giv scriptet et brev fra den liste du vil unsubscribe fra, inklusiv
alle headers. Så skal scriptet vise den korrekte unsubscribe adresse
af formen:
<listenavn>-unsubscribe-<brugernavn>=<domænenavn>@sslug.dk
Sample input:
Return-Path: <sslug@sslug>
Output:
sslug@sslug
For at unsubscribe skal man nu sende et tomt brev til den adresse.
Det skulle også virke hvis man skriver fra en anden adresse end
den man vil subscribe. Derfor den lange adresse.
Det forudsættter at man har adgang til at lave en reply på det
brev som kommer retur for at bekræfte at man virkelig vil
unsubscribes (eller kunne enhver unsubscribe de andre).
--
torben fjerdingstad | linux-2.0.35/GNU/gnome-0.30
sslug@sslug | Show me your unix,
http://www.fjerdingstad.dk | and I know who you are.
|
||||||||||||||
|
||||||||||||||