[Postfixbuch-users] Frage zu restriction_classes
Christian Roessner
christian at roessner-net.com
Mi Aug 27 13:37:22 CEST 2008
Nochmal Hallo,
> Hier der Beweis, dass zurück gesprungen wird! :-)
>
> Oder wie oder wat, oder warum?
lese gerade den C-Sourcecode.
smtpd_check.d
In main():
5066 /*
5067 * Main loop: update config parameters or test the client,
helo, sender
5068 * and recipient restrictions.
5069 */
5070 while (vstring_fgets_nonl(buf, VSTREAM_IN) != 0) {
...
5135 case 2:
...
5223 if (strcasecmp(args->argv[0], "restriction_class") == 0) {
5224 rest_class(args->argv[1]);
5225 resp = 0;
5226 break;
5227 }
Die Funktion rest_class(char *class)
4907 static void rest_class(char *class)
4908 {
4909 char *cp = class;
4910 char *name;
4911 HTABLE_INFO *entry;
4912
4913 if (smtpd_rest_classes == 0)
4914 smtpd_rest_classes = htable_create(1);
4915
4916 if ((name = mystrtok(&cp, RESTRICTION_SEPARATORS)) == 0)
4917 msg_panic("rest_class: null class name");
4918 if ((entry = htable_locate(smtpd_rest_classes, name)) != 0)
4919 argv_free((ARGV *) entry->value);
4920 else
4921 entry = htable_enter(smtpd_rest_classes, name, (char *) 0);
4922 entry->value = (char *)
smtpd_check_parse(SMTPD_CHECK_PARSE_ALL, cp);
4923 }
Wird also sozusagen einfach als Makro geparst und in die Restricions
unter smtpd_recipient_restrictions eingebaut.
Zumindest glaube ich das nach dem Code :-)
Gruß
Christian
--
Roessner Network Solutions (R.N.S.)
Licher Str. 19a, 35394 Gießen
Telefon: +49 641 5879091, Mobil: +49 171 3611230
USt-IdNr.: DE225643613
URL: http://www.roessner-net.com/ PGP:
http://www.roessner-net.com/0x6B929997.asc
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : signature.asc
Dateityp : application/pgp-signature
Dateigröße : 252 bytes
Beschreibung: OpenPGP digital signature
URL : <https://listi.jpberlin.de/pipermail/postfixbuch-users/attachments/20080827/df3b15b6/attachment.asc>
Mehr Informationen über die Mailingliste Postfixbuch-users