diff --git a/opensmtpd.c b/opensmtpd.c index 4d551f0..f0bd4ae 100644 --- a/opensmtpd.c +++ b/opensmtpd.c @@ -1428,16 +1428,17 @@ osmtpd_link_tls(struct osmtpd_callback *cb, struct osmtpd_ctx *ctx, static void osmtpd_link_auth(struct osmtpd_callback *cb, struct osmtpd_ctx *ctx, - char *username, char *linedup) + char *status, char *linedup) { void (*f)(struct osmtpd_ctx *, const char *, enum osmtpd_auth_status); - char *status; + char *username; enum osmtpd_auth_status s; - if ((status = strrchr(username, '|')) == NULL) + if ((username = strrchr(status, '|')) == NULL) osmtpd_errx(1, "Invalid auth received: %s", linedup); - status[0] = '\0'; - status++; + username[0] = '\0'; + username++; + if (strcmp(status, "pass") == 0) s = OSMTPD_AUTH_PASS; else if (strcmp(status, "fail") == 0)
https://misskey-taube.s3.eu-central-1.wasabisys.com/files/b1ab17bd-704d-46cd-a0ac-264aaef1b1b9.webp