diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2019-01-10 16:09:52 +0100 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2019-01-10 21:23:14 +0100 |
commit | 0192cbdb2c19ed2abbf6662090f45ab3bf4caf56 (patch) | |
tree | 97abcf845575b1b5a0b47a8935bb8b713ffab6f0 /src/nss-systemd | |
parent | 8e44f5710b1e7d843d224f5344e31383b685dbbf (diff) | |
download | systemd-0192cbdb2c19ed2abbf6662090f45ab3bf4caf56.tar.gz |
Revert "nss: prevent PROTECT_ERRNO from squashing changes to *errnop"
This reverts commit b26c90411343d74b15deb24bd87077848e316dab.
I don't see anythign wrong, but Ubuntu autopkgtest CI started failing fairly
consistently since this was merged. Let's see if reverting fixes things.
Diffstat (limited to 'src/nss-systemd')
-rw-r--r-- | src/nss-systemd/nss-systemd.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/nss-systemd/nss-systemd.c b/src/nss-systemd/nss-systemd.c index 96e6c42ff7..f554828d49 100644 --- a/src/nss-systemd/nss-systemd.c +++ b/src/nss-systemd/nss-systemd.c @@ -210,7 +210,7 @@ enum nss_status _nss_systemd_getpwnam_r( l = strlen(name); if (buflen < l+1) { - *errnop = DISARM_PROTECT_ERRNO(ERANGE); + *errnop = ERANGE; return NSS_STATUS_TRYAGAIN; } @@ -227,7 +227,7 @@ enum nss_status _nss_systemd_getpwnam_r( return NSS_STATUS_SUCCESS; fail: - *errnop = DISARM_PROTECT_ERRNO(r); + *errnop = -r; return NSS_STATUS_UNAVAIL; } @@ -310,7 +310,7 @@ enum nss_status _nss_systemd_getpwuid_r( l = strlen(translated) + 1; if (buflen < l) { - *errnop = DISARM_PROTECT_ERRNO(ERANGE); + *errnop = ERANGE; return NSS_STATUS_TRYAGAIN; } @@ -327,7 +327,7 @@ enum nss_status _nss_systemd_getpwuid_r( return NSS_STATUS_SUCCESS; fail: - *errnop = DISARM_PROTECT_ERRNO(r); + *errnop = -r; return NSS_STATUS_UNAVAIL; } @@ -408,7 +408,7 @@ enum nss_status _nss_systemd_getgrnam_r( l = sizeof(char*) + strlen(name) + 1; if (buflen < l) { - *errnop = DISARM_PROTECT_ERRNO(ERANGE); + *errnop = ERANGE; return NSS_STATUS_TRYAGAIN; } @@ -423,7 +423,7 @@ enum nss_status _nss_systemd_getgrnam_r( return NSS_STATUS_SUCCESS; fail: - *errnop = DISARM_PROTECT_ERRNO(r); + *errnop = -r; return NSS_STATUS_UNAVAIL; } @@ -506,7 +506,7 @@ enum nss_status _nss_systemd_getgrgid_r( l = sizeof(char*) + strlen(translated) + 1; if (buflen < l) { - *errnop = DISARM_PROTECT_ERRNO(ERANGE); + *errnop = ERANGE; return NSS_STATUS_TRYAGAIN; } @@ -521,7 +521,7 @@ enum nss_status _nss_systemd_getgrgid_r( return NSS_STATUS_SUCCESS; fail: - *errnop = DISARM_PROTECT_ERRNO(r); + *errnop = -r; return NSS_STATUS_UNAVAIL; } |