From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 3283 invoked from network); 1 Jul 2022 15:09:36 -0000 Received: from second.openwall.net (193.110.157.125) by inbox.vuxu.org with ESMTPUTF8; 1 Jul 2022 15:09:36 -0000 Received: (qmail 24258 invoked by uid 550); 1 Jul 2022 15:09:32 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 24221 invoked from network); 1 Jul 2022 15:09:31 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.ca; s=s2048; t=1656688158; bh=51uybfNesvKnoC4ehEmcIBpP1SoHpO562PY4JzIkONU=; h=From:To:Cc:Subject:Date:References:From:Subject:Reply-To; b=DR3DFfH66oyf1ptVNNcNwJ7tfhG66FSn+xiBa95lyKfHOzZleKJCo1lPYAtnzRnoHxAP77oe/TjjIQXSa0/wu+xQMESU9k15TOYvVw8y8wxf57qu3dOEHkoqmf5GnUUTAyguZlWLYMKfpR1UTQDZe/SQ2ZX/oxSSz3AUCS0DA7APPACx4Yn2A7miIuJ4NIm2ftXkySnN9ayBhR26NsUHiuRECJDrKrj5Unfkzv5ZDZJW3yJJ40ESzCk1SwZydM+OMUF3gmpaGqTn5/ma34+3PSJO8bc3j1gZV0mFmN54UPakEhSJ7EDylXHSVjfWYYZBt3FyMiZChRjP77RsdRX//g== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1656688158; bh=3Nxf4l1DmrCoVW2jHBOexTB+8OLfb86Gd2oAQ6Eksxi=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=GdDw+cIDpI5lNdtdhVziFmahCac4IfhqGmi6nEqwAN9ZvVstOng5JmtOFeE0DZAsi6PwUw7qPToWRYmApjJx9qO9xJSTI3v21URSKj3t2fGDb1PPubF+guHKaxUKqwon18P9F7bYHAmMyViOZuwXYRF/SLEF4gKU/YUwzlpGT4mJ1Yf6LgmJUVmWN4E5fZW1Ov7bF/s5j8RmS4ItP84t8Zt7w4HfORKTCcfnGe7RZasGgUduxIHcopq3wlMjTqof6fhIruQXwKQ2LD/m+y4ypAp88zllZXFX+o8bhoXsTCaUPqSXpjW/FBLhan/FlmO9KxQLsEuZeocDNBzd2E0wcg== X-YMail-OSG: 5JU3JjAVM1n16Fd3VvKMw4yCPJh02E1JH5VeMQjW0.T8hTEf0lRVl_N1Ss7iT.v q81opKBRMUFfOxCl8eVCZ2qw_12VKvQApPih2GipUdIM8IcOGCwco4aRrM9zcEEipsFtTXyFttif 0H8KCpmIXKjz3pKXDP2dtADeh0pfhj_FWj36ZInEYaVzcyTZIXje8p8Px1v1IVDK5sD5UT1AwMKX ngcYo8Le9YKK_IIS6Wa1uAX2pWLeAn7O_jydVjetrV9CdHRDNX7DKqBwOx2f.wBQIu1d5VuhtxXu AUdNTGLIEublP4Evj1nPz9QVh98zDLZClFoxqmQqHH7NY.E38kdl0TYIJuGeNO34I9rTZozaSok6 E62.6YShTEXGZPu0vr6qNxMYPnokf3CBFR.gmaWM7I14S1O59SCvjHqTgejikU3xw9aA4dpkVnLM YuK41NRzaE8bQ_1ZvhSahEnTtt5kDaiUnMCXRwWov698gkSZOIyoD_3sY6VUz6nAW8bhgQel6i0d YhNBKHwPwPAMByvSbGSQmU4GuDUtz.kRQpIvrs8LRiuFylkEVlemD3PmpH2DcYVveow_OJqA8kS9 7t1oElEsCvRQVD8ar1rR6Ej99UHMfT9s4eR50M91Lg5lDNPNDj4OITsEkoREcMDhTXO3XYL_ULjH B1Rd3SPHJ2HHxd8InP9llprWKJboucofq1OsQYQLuALjjwU5Q4X0My3TneSNxJRo.iDAnAUVizmr B8NtyduFWE8EFZiaHDy0GIzqv0FCTuNLCa8YiTjLww_w6aXdVxl8zd3w7_I0RgKi0XF21r8tOXUA J08bOjj3F0YSXB8zDtBlIHTIec_Tpxi01LXNydUGrBx3Gph5zGb.Sb0g0HXggBSrqAXR22OHefx1 xWJTuk3ieNiVUVz0KSDig98MejAXI6tQ0zn6QP4YGBn5D1o_CvisoDj5YK.ijSDAB54YboqpIOs5 YL4UM5ixXDBArtG81xA28POJlrdLIb7DjJuVuHh24ULXXI1BDXR6z4z1_NqU_wiIzFMW0G5tR5Om b9DZkK_w4ph49OA.s98yeX.gRIocbFoGGNIfiEmmUys4.9eqCAb1sKfBo62PukJ01nrWVzYPVYKC fwsSHJFFBkNcEL_Hm8TS7nFlFZD_JoetczbQGiZVX2T8LHpg4VHKymuhia1KHSCroPDjBT18t_eM BKkyCXT_XcfyUJ8GMGZuJmtJF.EQyfqPApVq0vGOfqif5jLeEeCbFrp7ccmcP76loXX2F.Ure0Mb Wm.SxrwCv31.I2ZPVtGn_kEOhdclPUjI0V_UTf2MXuBD5yRwqyVliAlY5TF9arxJ1IWQW66PXnBV 9z6RxMsNVkxrLPyujhzYPjapj00WEFK7nrunotFleaR9T1d8VOVDFrFdu1puZs4xGk9HHBtzcQe8 uOcI78P5t_9S8IHNfuDB69aJw9YC10kNU_eFDj0BTV_UfBbKDTdce9GFkMsU.3iccLyDKYy6D7pl xFw1uDl4lldy4K5axANyO94pmTJE_UK1Asftl6ym2Qu5zKZ8f1SibY1Ti8Pb7GaTtlH4IG5a.8dY mXbK8d4fkMguqRtl_GiRVZg_zn7._Q9a3EWplS1QW_6hEsx8sY6RP52SeUHsbqqnKWGPtj27m_oK UAwfc9kJNczwSOPPkSoZJNBqzFuDhrXlBmhSj_UI3tWRMT8kbv2TlDXZQHm4jH0rEmrCb.A1LIn1 ovMEr4vMttoAddM3nAzhMW8Y3Wsjf6S2klbXqZ4q0rIEL7Y7u5u7UzL3TBG3D.U_4MyhqmeFZamJ 3SgPLCqBuwD_qQQhf9qn2efZZHquVv6zIdz7EyrP86ye6UTdnJ5PfVhUZcku4jbYyJ5fTrVChMi3 rubrtOW24WuqOvc2P8.0m5cXO3l2qxQsZQGKVv7fSqco3DEe_m3udLpG5qm_3.V3elQCZINcAWKh stXEzo43HnGwkW6iOvgGiKi.ZSgE02hODEpsWy4J_otgGM0vkRtlQSKd_STg.HDhRanVsi1BaUTx VPOD1ccUr6JhBawf98HG4ObAn_kiASoLpgcsDcQTAKT4DRPIrIMc2Rv4ugwGqijFzUPw_HqBFccf 6D9NGQFXo4W.agenIeDpWNzZliZAB3jp_VIeUEPrvKERd4ffq49NJEnLT823xm_UHBhI_MlcKXtF O4eJ130qhDKXD15hq70Yid9DKDX7LyNUyu0d9i7ZDAOHteRazP86xDJCgrvPbIUhE0Hy3Qjlt6ng ydZqZ6PSERfFYzPVaHwDlHxRiXc53BZk1baCs.W6ZttrvD03nJnJRtIqU3EuMkw-- X-Sonic-MF: From: "Alex Xu (Hello71)" To: musl@lists.openwall.com Cc: "Alex Xu (Hello71)" Date: Fri, 1 Jul 2022 11:09:10 -0400 Message-Id: <20220701150910.347715-1-alex_y_xu@yahoo.ca> X-Mailer: git-send-email 2.36.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit References: <20220701150910.347715-1-alex_y_xu.ref@yahoo.ca> Subject: [musl] [PATCH] use __scc and unsigned long for socketcall otherwise, pointer arguments are sign-extended on x32, resulting in EFAULT. --- src/internal/syscall.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/internal/syscall.h b/src/internal/syscall.h index 4f41e1dc..7c74775c 100644 --- a/src/internal/syscall.h +++ b/src/internal/syscall.h @@ -58,22 +58,22 @@ hidden long __syscall_ret(unsigned long), #define __syscall_cp(...) __SYSCALL_DISP(__syscall_cp,__VA_ARGS__) #define syscall_cp(...) __syscall_ret(__syscall_cp(__VA_ARGS__)) -static inline long __alt_socketcall(int sys, int sock, int cp, long a, long b, long c, long d, long e, long f) +static inline long __alt_socketcall(int sys, int sock, int cp, syscall_arg_t a, syscall_arg_t b, syscall_arg_t c, syscall_arg_t d, syscall_arg_t e, syscall_arg_t f) { long r; if (cp) r = __syscall_cp(sys, a, b, c, d, e, f); else r = __syscall(sys, a, b, c, d, e, f); if (r != -ENOSYS) return r; #ifdef SYS_socketcall - if (cp) r = __syscall_cp(SYS_socketcall, sock, ((long[6]){a, b, c, d, e, f})); - else r = __syscall(SYS_socketcall, sock, ((long[6]){a, b, c, d, e, f})); + if (cp) r = __syscall_cp(SYS_socketcall, sock, ((unsigned long[6]){a, b, c, d, e, f})); + else r = __syscall(SYS_socketcall, sock, ((unsigned long[6]){a, b, c, d, e, f})); #endif return r; } #define __socketcall(nm, a, b, c, d, e, f) __alt_socketcall(SYS_##nm, __SC_##nm, 0, \ - (long)(a), (long)(b), (long)(c), (long)(d), (long)(e), (long)(f)) + __scc(a), __scc(b), __scc(c), __scc(d), __scc(e), __scc(f)) #define __socketcall_cp(nm, a, b, c, d, e, f) __alt_socketcall(SYS_##nm, __SC_##nm, 1, \ - (long)(a), (long)(b), (long)(c), (long)(d), (long)(e), (long)(f)) + __scc(a), __scc(b), __scc(c), __scc(d), __scc(e), __scc(f)) /* fixup legacy 16-bit junk */ -- 2.36.1