From patchwork Wed Jul 4 16:09:20 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Christophe Lyon X-Patchwork-Id: 939470 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=uclibc-ng.org (client-ip=89.238.66.15; helo=helium.openadk.org; envelope-from=devel-bounces@uclibc-ng.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=st.com Received: from helium.openadk.org (helium.openadk.org [89.238.66.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 41LQv50008z9s3q for ; Thu, 5 Jul 2018 02:10:24 +1000 (AEST) Received: from helium.openadk.org (localhost [IPv6:::1]) by helium.openadk.org (Postfix) with ESMTP id C9D041016E; Wed, 4 Jul 2018 18:10:21 +0200 (CEST) X-Original-To: devel@uclibc-ng.org Delivered-To: devel@helium.openadk.org Received: from mx07-00178001.pphosted.com (mx07-00178001.pphosted.com [62.209.51.94]) by helium.openadk.org (Postfix) with ESMTPS id C0E801016E for ; Wed, 4 Jul 2018 18:10:19 +0200 (CEST) Received: from pps.filterd (m0046668.ppops.net [127.0.0.1]) by mx07-.pphosted.com (8.16.0.21/8.16.0.21) with SMTP id w64G8ob4023724; Wed, 4 Jul 2018 18:10:19 +0200 Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by mx07-00178001.pphosted.com with ESMTP id 2k0dnqmv4j-1 (version=TLSv1 cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NOT); Wed, 04 Jul 2018 18:10:19 +0200 Received: from zeta.dmz-eu.st.com (zeta.dmz-eu.st.com [164.129.230.9]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id B7AEE31; Wed, 4 Jul 2018 16:10:18 +0000 (GMT) Received: from Webmail-eu.st.com (sfhdag5node1.st.com [10.75.127.13]) by zeta.dmz-eu.st.com (STMicroelectronics) with ESMTP id 87C522C52C; Wed, 4 Jul 2018 16:10:18 +0000 (GMT) Received: from gnb.st.com (10.75.127.46) by SFHDAG5NODE1.st.com (10.75.127.13) with Microsoft SMTP Server (TLS) id 15.0.1347.2; Wed, 4 Jul 2018 18:10:17 +0200 From: Christophe Lyon To: , Date: Wed, 4 Jul 2018 18:09:20 +0200 Message-ID: <20180704160941.3261-2-christophe.lyon@st.com> X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180704160941.3261-1-christophe.lyon@st.com> References: <20180704160941.3261-1-christophe.lyon@st.com> MIME-Version: 1.0 X-Originating-IP: [10.75.127.46] X-ClientProxiedBy: SFHDAG5NODE1.st.com (10.75.127.13) To SFHDAG5NODE1.st.com (10.75.127.13) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2018-07-04_06:, , signatures=0 Subject: [uclibc-ng-devel] [PATCH 31/32] Fix shm_open posix compliance error code X-BeenThere: devel@uclibc-ng.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: uClibc-ng Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: devel-bounces@uclibc-ng.org Sender: "devel" Handle EISDIR in shm_open like glibc does, and set EINVAL. * librt/shm.c (shm_open): Handle EISDIR error. Signed-off-by: Mickaël Guêné Signed-off-by: Christophe Lyon diff --git a/librt/shm.c b/librt/shm.c index 40e69fa..79c98a3 100644 --- a/librt/shm.c +++ b/librt/shm.c @@ -84,6 +84,9 @@ int shm_open(const char *name, int oflag, mode_t mode) */ } #endif + if (fd < 0 && errno == EISDIR) + /* EISDIR is not valid for shm_open, replace it with EINVAL as glibc. */ + __set_errno (EINVAL); free(shm_name); /* doesn't affect errno */ return fd; }