From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Subject: bug#35783: Guile-Parted crashes the installer on i686-linux Date: Mon, 20 May 2019 10:17:29 +0200 Message-ID: <87tvdpwndy.fsf@gnu.org> References: <87h89syidd.fsf@gnu.org> <877eaoydw8.fsf@gnu.org> <87h89shzyq.fsf@gmail.com> <87ftpchxel.fsf@gmail.com> <87imu8vv5i.fsf@gnu.org> <87v9y6cyjp.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([209.51.188.92]:44043) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hSdUh-0006QG-6o for bug-guix@gnu.org; Mon, 20 May 2019 04:18:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hSdUg-0000is-Ck for bug-guix@gnu.org; Mon, 20 May 2019 04:18:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:50711) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hSdUg-0000ii-8z for bug-guix@gnu.org; Mon, 20 May 2019 04:18:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hSdUg-0000z7-4K for bug-guix@gnu.org; Mon, 20 May 2019 04:18:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87v9y6cyjp.fsf@gmail.com> (Mathieu Othacehe's message of "Sun, 19 May 2019 16:24:26 +0200") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Mathieu Othacehe Cc: 35783@debbugs.gnu.org Hi Mathieu, Mathieu Othacehe skribis: >> Longer-term it would be good to audit Guile-Parted: it probably >> shouldn=E2=80=99t be possible for Guile-Parted to refer to =E2=80=9Cdefu= nct=E2=80=9D Parted >> objects. > > Yup, with hindsight I realize that keeping Guile-Parted so low-level was > a mistake. With a few more abstractions (gnu installer parted) could be > less complicated. I don=E2=80=99t know; as a rule of thumb, I think it=E2=80=99s good to make= bindings a direct mapping to the underlying library, and to build abstractions on top of that. That said, my point was more that it shouldn=E2=80=99t be possible to get a null-pointer exception or a SIGSEGV when using Guile-Parted, even if you make a mistake. In this case, it seems that the underlying C object had been reclaimed somehow; the bindings should protect against that. Thoughts? Ludo=E2=80=99.