Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 14 Mar 2017 18:09:28 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-bugs@FreeBSD.org
Subject:   [Bug 217787] libsysdecode: Bogus rights when decoding cap_rights_t
Message-ID:  <bug-217787-8@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D217787

            Bug ID: 217787
           Summary: libsysdecode: Bogus rights when decoding cap_rights_t
           Product: Base System
           Version: CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Keywords: patch
          Severity: Affects Only Me
          Priority: ---
         Component: bin
          Assignee: freebsd-bugs@FreeBSD.org
          Reporter: tobik@freebsd.org

Created attachment 180821
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D180821&action=
=3Dedit
libsysdecode.diff

I wanted to added cap_rights_t decoding to truss(1) and thought with
sysdecode_cap_rights(3) it was going to be trivial, but it does not seem
to decode cap_rights_t properly.

Consider this simple test program:
#include <sys/capsicum.h>

int
main(int argc, char *argv[])
{
        cap_rights_t rights;
        cap_rights_init(&rights, CAP_WRITE);
        cap_rights_limit(1, &rights);
        return 0;
}

When ktraceing+kdumping it I get the following wrong output at the moment:

90024 bla      STRU  cap_rights_t
CAP_MAC_GET,CAP_MAC_SET,CAP_SEM_GETVALUE,CAP_SEM_WAIT,CAP_EVENT,CAP_KQUEUE_=
EVENT,CAP_IOCTL,CAP_PDWAIT,CAP_PDKILL,CAP_EXTATTR_DELETE,CAP_EXTATTR_GET,CA=
P_EXTATTR_LIST,CAP_ACL_GET,CAP_KQUEUE_CHANGE

I'd expect it to be

90024 bla      STRU  cap_rights_t CAP_WRITE

The attached patch fixes this for me.

FreeBSD thor 12.0-CURRENT FreeBSD 12.0-CURRENT #0 5ba1b0f9966(master): Tue =
Mar
14 15:59:54 CET 2017     root@thor:/usr/obj/usr/src/sys/GENERIC  amd64

The problem also exists with the most recent 12.0-CURRENT snapshot
20170309-r314972, but not on 11.0-RELEASE.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-217787-8>