dovecot-2.2: i_getpw*(): Added OpenBSD workaround.
dovecot at dovecot.org
dovecot at dovecot.org
Sun Sep 22 07:24:38 EEST 2013
details: http://hg.dovecot.org/dovecot-2.2/rev/801714cba91b
changeset: 16819:801714cba91b
user: Timo Sirainen <tss at iki.fi>
date: Sun Sep 22 07:24:26 2013 +0300
description:
i_getpw*(): Added OpenBSD workaround.
diffstat:
src/lib/ipwd.c | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diffs (27 lines):
diff -r be1d8dd8be94 -r 801714cba91b src/lib/ipwd.c
--- a/src/lib/ipwd.c Sun Sep 22 07:20:12 2013 +0300
+++ b/src/lib/ipwd.c Sun Sep 22 07:24:26 2013 +0300
@@ -50,6 +50,11 @@
do {
pw_init();
errno = getpwnam_r(name, pwd_r, pwbuf, pwbuf_size, &result);
+#ifdef __OpenBSD__
+ /* OpenBSD returns 1 for all errors, assume it's ERANGE */
+ if (errno == 1)
+ errno = ERANGE;
+#endif
} while (errno == ERANGE);
if (result != NULL)
return 1;
@@ -68,6 +73,11 @@
do {
pw_init();
errno = getpwuid_r(uid, pwd_r, pwbuf, pwbuf_size, &result);
+#ifdef __OpenBSD__
+ /* OpenBSD returns 1 for all errors, assume it's ERANGE */
+ if (errno == 1)
+ errno = ERANGE;
+#endif
} while (errno == ERANGE);
if (result != NULL)
return 1;
More information about the dovecot-cvs
mailing list