> 2) This would be my selection Not sure what problem you were seeing when
> handing it the callback. udev and dbus use this interface now.This should
Let me explain in more detail: typically, callback setting functions accept two parameters: a pointer to a function (i.e. the callback handler) to call when an event occurs and a void pointer. The void pointer is just stored by the framework/library and when the handler is invoked it is passed this pointer. The handler uses the pointer to store information it needs to perform the handling (in our case the pointer would point to the transaction structure).
IOW, what we need is the SELINUX_CB_POLICYLOAD prototype to instead of:
int (*func_policyload) (int seqno)
be:
int (*func_policyload) (int seqno, void *data), where data would the value we'd provide to selinux_set_callback().
Should I open a BZ for selinux requesting this change, or are there other options for us still?
> 2) This would be my selection Not sure what problem you were seeing when
> handing it the callback. udev and dbus use this interface now.This should
Let me explain in more detail: typically, callback setting functions accept two parameters: a pointer to a function (i.e. the callback handler) to call when an event occurs and a void pointer. The void pointer is just stored by the framework/library and when the handler is invoked it is passed this pointer. The handler uses the pointer to store information it needs to perform the handling (in our case the pointer would point to the transaction structure).
IOW, what we need is the SELINUX_ CB_POLICYLOAD prototype to instead of:
int (*func_policyload) (int seqno)
be:
int (*func_policyload) (int seqno, void *data), where data would the value we'd provide to selinux_ set_callback( ).
Should I open a BZ for selinux requesting this change, or are there other options for us still?