Skip to content

Missing SWIG wrapper for semanage_msg_set_callback #501

Description

@Bob131

The current SWIG bindings expose semanage_msg_set_callback, but it lacks a wrapper that would enable actually passing it a callback.

Running the following code

import semanage
handle = semanage.semanage_handle_create()
semanage.semanage_msg_set_callback(handle, lambda *args: print(args), None)

produces the result

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
    semanage.semanage_msg_set_callback(handle, lambda *args: print(args), None)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.14/site-packages/semanage.py", line 75, in semanage_msg_set_callback
    return _semanage.semanage_msg_set_callback(handle, msg_callback, msg_callback_arg)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: in method 'semanage_msg_set_callback', argument 2 of type 'void (*)(void *,semanage_handle_t *,char const *,...)'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions