/* Author: Dan Walsh
|
Based on selinuxswig_python.i by James Athey
|
*/
|
|
/* Never build rpm_execcon interface */
|
#ifndef DISABLE_RPM
|
#define DISABLE_RPM
|
#endif
|
|
%module selinux
|
%{
|
#include "selinux/selinux.h"
|
%}
|
|
/* return a sid along with the result */
|
%typemap(argout) (security_id_t * sid) {
|
if (*$1) {
|
%append_output(SWIG_NewPointerObj(*$1, $descriptor(security_id_t), 0));
|
}
|
}
|
|
%typemap(in,numinputs=0) security_id_t *(security_id_t temp) {
|
$1 = &temp;
|
}
|
|
%typemap(in,noblock=1,numinputs=0) char ** (char * temp = 0) {
|
$1 = &temp;
|
}
|
%typemap(freearg,match="in") char ** "";
|
%typemap(argout,noblock=1) char ** {
|
if (*$1) {
|
%append_output(SWIG_FromCharPtr(*$1));
|
freecon(*$1);
|
}
|
}
|
|
%typemap(in,noblock=1,numinputs=0) char ** (char * temp = 0) {
|
$1 = &temp;
|
}
|
%typemap(freearg,match="in") char ** "";
|
%typemap(argout,noblock=1) char ** {
|
if (*$1) {
|
%append_output(SWIG_FromCharPtr(*$1));
|
free(*$1);
|
}
|
}
|
|
%include "selinuxswig.i"
|