Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 03 Feb 2024 17:53:03 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 276809] SEGFAULTs using libjail
Message-ID:  <bug-276809-227@https.bugs.freebsd.org/bugzilla/>

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

            Bug ID: 276809
           Summary: SEGFAULTs using libjail
           Product: Base System
           Version: 13.2-RELEASE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: bin
          Assignee: bugs@FreeBSD.org
          Reporter: freebsd-bugs@aliases.systohc.net

I'm constantly getting SEGFAULTs using libjail from C as well as from Pytho=
n.
Is it my fault or am I triggering a bug?

=3D=3D=3D listjailparams.c =3D=3D=3D
#include <stdio.h>
#include <jail.h>

int main(int argc, char *argv[])
{
        struct jailparam *params;
        int nparams =3D jailparam_all(&params);
        printf("number of params: %d\n", nparams);
        for (int i=3D0; i<nparams; i++) {=20=20=20
                printf("jailparam: %s\n", jailparam_export(&params[i]));
        }
        jailparam_free(params, nparams);
        return 0;
}
=3D=3D=3D listjailparams.c =3D=3D=3D

=3D=3D=3D listjailparams.py =3D=3D=3D
#!/usr/local/bin/python3

from ctypes import Structure, c_char_p, CDLL, POINTER, c_int, byref

class JailParam(Structure):
        _fields_ =3D [=20
                ("name", c_char_p),
                ("value", c_char_p),
        ]=20
JailParam_PTR =3D POINTER(JailParam)

lib =3D CDLL("libjail.so")

jailparam_all =3D lib.jailparam_all
jailparam_all.argtypes =3D [POINTER(JailParam_PTR)]
jailparam_all.restype =3D c_int

jailparam_free =3D lib.jailparam_free
jailparam_free.argtypes =3D [JailParam_PTR, c_int]


params =3D JailParam_PTR()
nparams =3D jailparam_all(byref(params))
print(f'nparams: {nparams}')
for i in range(nparams):
        param =3D params[i]
        name =3D param.name.decode('utf-8')
        value =3D param.value if param.value is None else
param.value.decode('utf-8')
        print(f'Name: {name}, Value: {value}')
jailparam_free(params, nparams)
=3D=3D=3D listjailparams.py =3D=3D=3D

--=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-276809-227>