From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/11400 Path: news.gmane.org!.POSTED!not-for-mail From: Rudolph Pereira Newsgroups: gmane.linux.lib.musl.general Subject: [PATCH] fix errno not being set to ERANGE by getgr, getpw, and getspnam Date: Tue, 6 Jun 2017 12:21:39 -0400 Message-ID: Reply-To: musl@lists.openwall.com NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="001a113fd650e2200205514d0498" X-Trace: blaine.gmane.org 1496766135 24783 195.159.176.226 (6 Jun 2017 16:22:15 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 6 Jun 2017 16:22:15 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-11413-gllmg-musl=m.gmane.org@lists.openwall.com Tue Jun 06 18:22:12 2017 Return-path: Envelope-to: gllmg-musl@m.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by blaine.gmane.org with smtp (Exim 4.84_2) (envelope-from ) id 1dIHFE-0006Ah-4P for gllmg-musl@m.gmane.org; Tue, 06 Jun 2017 18:22:12 +0200 Original-Received: (qmail 18045 invoked by uid 550); 6 Jun 2017 16:22:14 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Original-Received: (qmail 17985 invoked from network); 6 Jun 2017 16:22:11 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=occamsec-com.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to; bh=IsgIOafq9VfrEzRiOjQSwSixCFGxR0tmNhHLyntyi5U=; b=Jr0bEWGi0p1lHUdxceB6EQ2i7LzhQAbw/ONJkscOxe1uEuIm5uSygWpWmIBGiLN9dV +5oVV/UFDh35AdQLBg5WgxKyslVOy8J/M26CcUYub51YQJ+gyZNV4T5YbkRyadm621UN LmUUlWjx82GSg8W5eyCmRiIx19GJaHbVmEWcCYYZaEdyALnlIdztrUyuU34fW25iaTZG asXcWLNWk0FdUfWXIo8Sd5H04iS/y1SsvhR8WDJrMBkYZgUmjMGCjAX8fR2hRASJaw+D 9lJegNjQHe0JfMYI+sZ+nBKImwwTiS+8BnEPMINw3zVZJttrwWBOrmYBsQRZSQeffOJm KFjg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=IsgIOafq9VfrEzRiOjQSwSixCFGxR0tmNhHLyntyi5U=; b=Y1kbGCYUGDgxPKBf7q1NDBoCI+C0sjdfrr5eRo38tEKnY9TN6V2AcH8qCRMA27KYTF KLH4EaAvYfn1o1dBAHyTEEpRqflqMfsEvWrUqznr8HXHqRv/WL+sY4KqYFWksJCTlzxp 88PA52OJYx6IvbGNkDNSwRtx7LM6elQ9ojjp5zD4jDYAbCuk/ZHjShEP7MvymTa+c07e h3hrZWOE1UIX4Pcc/FVfg875RBN6IMIZqml+hp0TVgHjrIU+k3uHg7XyFbRxYA+EShjY NFr0a2+wGx9sru4e1FyTYxp1i8RbmKA3gjpRSuQ5fRubs+o3kHK27YCizrwUOWp+rmWj IH+Q== X-Gm-Message-State: AODbwcD91FrUOHgo/EvBE6utmzvJDV1yr/Qy+2Bj6cAdw49T8zJf796P gmAixotTTTqZvRofkYTWdiA2ZYT+48AJQ7k= X-Received: by 10.107.27.75 with SMTP id b72mr8507604iob.209.1496766119721; Tue, 06 Jun 2017 09:21:59 -0700 (PDT) Xref: news.gmane.org gmane.linux.lib.musl.general:11400 Archived-At: --001a113fd650e2200205514d0498 Content-Type: multipart/alternative; boundary="001a113fd650e21ffe05514d0496" --001a113fd650e21ffe05514d0496 Content-Type: text/plain; charset="UTF-8" Hi, currently, the getgr, getpw, and getspnam functions in musl return ERANGE when the allocated buffer is not large enough, but do not set errno to the same value. This causes issues with utilities, for example the "shadow" utilities (useradd/mod, groupmod, etc.) which assume this behaviour (which at least gnu libc exhibits) and leads to groups having a small limit on the number of members. The attached patch, against 1.1.16, corrects this. Cheers, Rudolph --001a113fd650e21ffe05514d0496 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi,

currently, the getgr, getpw, and ge= tspnam functions in musl return ERANGE when the allocated buffer is not lar= ge enough, but do not set errno to the same value. This causes issues with = utilities, for example the "shadow" utilities (useradd/mod, group= mod, etc.) which assume this behaviour (which at least gnu libc exhibits) a= nd leads to groups having a small limit on the number of members.

The attached patch, against 1.1.16, corrects this.

Cheers,
Rudolph
--001a113fd650e21ffe05514d0496-- --001a113fd650e2200205514d0498 Content-Type: text/x-patch; charset="US-ASCII"; name="1100-getX-errno.patch" Content-Disposition: attachment; filename="1100-getX-errno.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_j3lrtczh0 LS0tIG11c2wtMS4xLjE2Lm9yaWcvc3JjL3Bhc3N3ZC9nZXRncl9yLmMKKysrIG11c2wtMS4xLjE2 L3NyYy9wYXNzd2QvZ2V0Z3Jfci5jCkBAIC0xLDUgKzEsNiBAQAogI2luY2x1ZGUgInB3Zi5oIgog I2luY2x1ZGUgPHB0aHJlYWQuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgogCiAjZGVmaW5lIEZJWCh4 KSAoZ3ItPmdyXyMjeCA9IGdyLT5ncl8jI3gtbGluZStidWYpCiAKQEAgLTE5LDYgKzIwLDcgQEAK IAlpZiAoKnJlcyAmJiBzaXplIDwgbGVuICsgKG5tZW0rMSkqc2l6ZW9mKGNoYXIgKikgKyAzMikg ewogCQkqcmVzID0gMDsKIAkJcnYgPSBFUkFOR0U7CisJCWVycm5vID0gRVJBTkdFOwogCX0KIAlp ZiAoKnJlcykgewogCQlidWYgKz0gKDE2LSh1aW50cHRyX3QpYnVmKSUxNjsKLS0tIG11c2wtMS4x LjE2Lm9yaWcvc3JjL3Bhc3N3ZC9nZXRwd19yLmMKKysrIG11c2wtMS4xLjE2L3NyYy9wYXNzd2Qv Z2V0cHdfci5jCkBAIC0xLDUgKzEsNiBAQAogI2luY2x1ZGUgInB3Zi5oIgogI2luY2x1ZGUgPHB0 aHJlYWQuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgogCiAjZGVmaW5lIEZJWCh4KSAocHctPnB3XyMj eCA9IHB3LT5wd18jI3gtbGluZStidWYpCiAKQEAgLTE2LDYgKzE3LDcgQEAKIAlpZiAoKnJlcyAm JiBzaXplIDwgbGVuKSB7CiAJCSpyZXMgPSAwOwogCQlydiA9IEVSQU5HRTsKKwkJZXJybm8gPSBF UkFOR0U7CiAJfQogCWlmICgqcmVzKSB7CiAJCW1lbWNweShidWYsIGxpbmUsIGxlbik7Ci0tLSBt dXNsLTEuMS4xNi5vcmlnL3NyYy9wYXNzd2QvZ2V0c3BuYW1fci5jCisrKyBtdXNsLTEuMS4xNi9z cmMvcGFzc3dkL2dldHNwbmFtX3IuYwpAQCAtMyw2ICszLDcgQEAKICNpbmNsdWRlIDxzeXMvc3Rh dC5oPgogI2luY2x1ZGUgPGN0eXBlLmg+CiAjaW5jbHVkZSA8cHRocmVhZC5oPgorI2luY2x1ZGUg PGVycm5vLmg+CiAjaW5jbHVkZSAicHdmLmgiCiAKIC8qIFRoaXMgaW1wbGVtZW50YXRpb24gc3Vw cG9ydCBPcGVud2FsbC1zdHlsZSBUQ0IgcGFzc3dvcmRzIGluIHBsYWNlIG9mCkBAIC0xMDQsNiAr MTA1LDcgQEAKIAkJfQogCQlpZiAoYnVmW2stMV0gIT0gJ1xuJykgewogCQkJcnYgPSBFUkFOR0U7 CisJCQllcnJubyA9IEVSQU5HRTsKIAkJCWJyZWFrOwogCQl9Cg== --001a113fd650e2200205514d0498--