Patch from John Marshall (slightly modified). diff --git a/sendmail/srvrsmtp.c b/sendmail/srvrsmtp.c index 7dba983..bf804ab 100644 --- a/sendmail/srvrsmtp.c +++ b/sendmail/srvrsmtp.c @@ -84,7 +84,7 @@ static int reset_saslconn __P((sasl_conn_t **_conn, char *_hostname, # define RESET_SASLCONN \ do \ { \ - result = reset_saslconn(&conn, AuthRealm, remoteip, \ + result = reset_saslconn(&conn, hostname, remoteip, \ localip, auth_id, &ext_ssf); \ if (result != SASL_OK) \ sasl_ok = false; \ @@ -938,8 +938,6 @@ smtp(nullserver, d_flags, e) e->e_features = features; hostname = macvalue('j', e); #if SASL - if (AuthRealm == NULL) - AuthRealm = hostname; sasl_ok = bitset(SRV_OFFER_AUTH, features); n_mechs = 0; authenticating = SASL_NOT_AUTH; @@ -948,8 +946,8 @@ smtp(nullserver, d_flags, e) if (sasl_ok) { # if SASL >= 20000 - result = sasl_server_new("smtp", AuthRealm, NULL, NULL, NULL, - NULL, 0, &conn); + result = sasl_server_new("smtp", hostname, AuthRealm, NULL, + NULL, NULL, 0, &conn); # elif SASL > 10505 /* use empty realm: only works in SASL > 1.5.5 */ result = sasl_server_new("smtp", AuthRealm, "", NULL, 0, &conn); @@ -5392,7 +5390,7 @@ reset_saslconn(sasl_conn_t **conn, char *hostname, sasl_dispose(conn); # if SASL >= 20000 - result = sasl_server_new("smtp", hostname, NULL, NULL, NULL, + result = sasl_server_new("smtp", hostname, AuthRealm, NULL, NULL, NULL, 0, conn); # elif SASL > 10505 /* use empty realm: only works in SASL > 1.5.5 */