Page 1 of 1
Amavis New mit Confixx
Posted: 2006-07-16 19:48
by kleines_erdferkel
Hallo liebes News-Volk,
ich habe Confixx mit AmavisNew laufen. In der amavisd.conf steht folgender SQL drin:
$sql_select_policy = 'SELECT *,users.id FROM users,policy'.
' WHERE (users.policy_id=policy.id) AND (users.username IN (%k))'.
' ORDER BY users.priority DESC';
In der "Variable" %k steht folgendes drin:
web1p1@hxxxxxx.serverkompetenz.net
In der Amavis-DB steht aber als UserName in der user-Tabelle nur web1p1 drin. Wie kann ich das "%k" ändern? Ich möchte die Einträge in der user-Tabelle nicht ändern, weil viele andere Scripte auch darauf zugreifen?
Danke für jede IDee.
Gruß und grunz,
das kleine Ferkelchen.
Re: Amavis New mit Confixx
Posted: 2006-07-16 20:06
by Roger Wilco
AW: Amavis New mit Confixx
Posted: 2006-07-17 08:51
by kleines_erdferkel
Danke für die schnelle Antwort. Leider ist die Lösung nicht das, was ich brauche (mein Fehler: ich habe mich falsch ausgedrückt).
Ich kann die Variable %k nicht ändern. Das heißt, dass %k keine wirkliche Variable ist, sondern eher ein Platzhalter, der im AmavisNew-Perlscript verwendet wird.
Das AmavisNew-Perlscript scheint das %k intern selbst in einen komma-separierten String umzuwandeln, den ich natürlich vorher weder substringen noch sonst irgendwie verändern kann.
Wie man im Anfangs-Posting sieht, wird die komplette SQL-Anweisung in eine Variable geschrieben, die AmavisNewSQL benutzt.
Das Problem müssen eigentlich alle haben, die das Squirrelmail-Plugin "AmavisNewSQL" benutzen und Confixx als Verwaltungstool haben.
Gruß und grunz,
das kleine Ferkelchen
Re: Amavis New mit Confixx
Posted: 2006-07-17 09:05
by antondollmaier
Code: Select all
$sql_select_policy = 'SELECT *,users.id, CONCAT( users.username, '@hxxxxxx.serverkompetenz.net') as useraccount FROM users,policy'.
' WHERE (users.policy_id=policy.id) AND (users.useraccount IN (%k))'.
' ORDER BY users.priority DESC';
HTH ;)
AW: Amavis New mit Confixx
Posted: 2006-07-17 09:27
by kleines_erdferkel
Goil! Das sieht zumindest mal mächtig gut aus. Werde es heute abend mal testen und berichten. Ganz herzlichen Dank dafür.
Benutzt Du das in Deinem AmavisNewSQL so laufen oder ist das ein SQL, der Deiner Meinung nach so funktionieren müsste?
Gruß und grunz,
das kleine Ferkelchen
AW: Amavis New mit Confixx
Posted: 2006-07-17 09:57
by kleines_erdferkel
Uuups - was ist denn das nun wieder?
Habe gerade mal versucht, die SQL-Anweiung einzubauen. Folgendes spuckte die Shell aus:
hxxxxxx:~ # Array found where operator expected at /etc/amavisd.conf line 798, at end of line
(Missing operator before ?)
Error in config file /etc/amavisd.conf: Bad name after net' at /etc/amavisd.conf line 798.
(Line 798: $sql_select_policy = 'SELECT *,users.id, CONCAT( users.username, '@xxxxxx.serverkompetenz.net') as useraccount FROM users,policy'.)
Nun habe ich das hxxxxxx.serverkompetenz.net mal in Anführungszeichen gesetzt (statt dem Hochkomma). Dann kommt im Mail-Log folgende Meldung:
TROUBLE in check_mail: creating_partsdir FAILED: DBD::mysql::st execute failed: Unknown column 'users.useraccount' in 'where clause' at (eval 56) line 217, <GEN8> line 21.
Any ideas?
Danke, Gruß und grunz,
das kleine Ferkelchen
Re: Amavis New mit Confixx
Posted: 2006-07-17 11:19
by antondollmaier
Code: Select all
$sql_select_policy = 'SELECT *,users.id, CONCAT( users.username, "@hxxxxxx.serverkompetenz.net") as useraccount FROM users,policy'.
' WHERE (users.policy_id=policy.id) AND (useraccount IN (%k))'.
' ORDER BY users.priority DESC';
Probiers so mal ....
Und nein, ich hab zwar amavisd-new am laufen, aber nicht mit Squirrelmail (RoundCube/Horde) ... Confixx-Integrierung ist selbst geschrieben ...
AW: Amavis New mit Confixx
Posted: 2006-07-17 11:45
by kleines_erdferkel
users.useraccount ohne "users" habe ich auch schon versucht. Leider ist das Ergebnis genau das selbe:
ROUBLE in check_mail: creating_partsdir FAILED: DBD::mysql::st execute failed: Unknown column 'useraccount' in 'where clause' at (eval 56) line 217, <GEN8> line 21.
Kann MySQL diese Verknüpfung nicht? Ich habe mit phpMyAdmin die SQL-Anweisung getestet => selbes (schlechtes) Ergebnis... .
Wie lösen denn all die anderen Freunde des AmavisNewSQL das Problem???
Nochmals Danke und Gruß (und grunz),
das kleine Ferkelchen
(P.S.: RoundCube ist seeeeehr geil!!! Hat leider noch zu wenig Features.)
Re: Amavis New mit Confixx
Posted: 2006-07-17 12:02
by antondollmaier
[quote="antondollmaier"]
Code: Select all
$sql_select_policy = 'SELECT *,users.id FROM users,policy'.
' WHERE (users.policy_id=policy.id) AND (CONCAT( users.username, "@hxxxxxx.serverkompetenz.net") IN (%k))'.
' ORDER BY users.priority DESC';
so? :-D
so isses zumindest bei mir im amavis ...
AW: Amavis New mit Confixx
Posted: 2006-07-17 12:47
by kleines_erdferkel
Oh Du mein SQL-König. Ich verneige mich in tiefem Respekt vor Dir.
Alles funktioniert wunderbar. Hab' herzlichen Dank!
Fröhliches Gegrunze,
das kleine Ferkelchen