Hallo, Am Mon, 30 May 2011, Stefan König schrieb:
würde auf meinem Mailserver gerne die freie Wahl der Absender für SASL authentifizierte user sowie user die aus den eigenen Netzen kommen, einschränken. Leider scheitere ich an den Perl RegEx.... ein !/.*[\@example.net|\@example.com]*./ REJECT
Dann schauen wir doch mal was du verlangst: NICHT ( BELIEBIG_OFT:IRGENDWAS BELIEBIG_OFT:@example(net|com) EIN_ZEICHEN ) -> REJECT
in dem pcre file lässt dennoch alles durch. Hat jemand einen heissen Tip?
Wenn du dir obiges anguckst: die Regex passt immer, also wird auch nix REJECTed. Warum? BELIEBIG_OFT:EIN_ZEICHEN + EIN_ZEICHEN frisst dir schon alles weg und der Teil in der Mitte darf ja explizit nix sein. Und das * ist gierig, es wird der längeste passende Substring gesucht. Also alles bis auf das letzte Zeichen, das du per '.' forderst. Du suchst vermutlich nach: !/.*?\@example\.(net|com)$/ REJECT oder !/.*?(\@example\.net|\@example\.com)$/ REJECT Das .*? ist die "nicht-gierige" Variante von .* Siehe auch 'man perlre', 'man perlretut', 'man perlrequick', 'man perlreref', 'man perlrebackslash' und 'man perlrecharclass' HTH, -dnh -- Did I do something wrong today, or has the world always been like this and I've just been too wrapped up in myself to notice? -- Arthur Dent -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org