Skip to content

Commit

Permalink
libsemanage: fix swig bindings for 4.3.0
Browse files Browse the repository at this point in the history
https://github.com/swig/swig/blob/master/CHANGES.current

"[Python] #2907 Fix returning null from functions with output
parameters.  Ensures OUTPUT and INOUT typemaps are handled
consistently wrt return type.

New declaration of SWIG_Python_AppendOutput is now:

  SWIG_Python_AppendOutput(PyObject* result, PyObject* obj, int is_void);

The 3rd parameter is new and the new $isvoid special variable
should be passed to it, indicating whether or not the wrapped
function returns void.

Also consider replacing with:

  SWIG_AppendOutput(PyObject* result, PyObject* obj);

which calls SWIG_Python_AppendOutput with same parameters but adding $isvoid
for final parameter."

Fixes: SELinuxProject#447

Suggested-by: Jitka Plesnikova <[email protected]>
Signed-off-by: Petr Lautrbach <[email protected]>
  • Loading branch information
bachradsusi authored and jwcart2 committed Oct 17, 2024
1 parent 0b636e1 commit db3f238
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 48 deletions.
64 changes: 32 additions & 32 deletions libsemanage/src/semanageswig_python.i
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@
}

%typemap(argout) char** {
$result = SWIG_Python_AppendOutput($result, SWIG_FromCharPtr(*$1));
$result = SWIG_AppendOutput($result, SWIG_FromCharPtr(*$1));
free(*$1);
}

Expand All @@ -134,7 +134,7 @@
NULL, NULL, &plist) < 0)
$result = SWIG_From_int(STATUS_ERR);
else
$result = SWIG_Python_AppendOutput($result, plist);
$result = SWIG_AppendOutput($result, plist);
}
}
}
Expand All @@ -148,7 +148,7 @@
}

%typemap(argout) semanage_module_info_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

/** module key typemaps **/
Expand All @@ -160,7 +160,7 @@
}

%typemap(argout) semanage_module_key_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

/** context typemaps **/
Expand All @@ -172,7 +172,7 @@
}

%typemap(argout) semanage_context_t** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

/** boolean typemaps **/
Expand All @@ -197,7 +197,7 @@
(void (*) (void*)) &semanage_bool_free, &plist) < 0)
$result = SWIG_From_int(STATUS_ERR);
else
$result = SWIG_Python_AppendOutput($result, plist);
$result = SWIG_AppendOutput($result, plist);
}
}
}
Expand All @@ -207,11 +207,11 @@
}

%typemap(argout) semanage_bool_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_bool_key_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_bool_key_t **(semanage_bool_key_t *temp=NULL) {
Expand Down Expand Up @@ -240,7 +240,7 @@
(void (*) (void*)) &semanage_fcontext_free, &plist) < 0)
$result = SWIG_From_int(STATUS_ERR);
else
$result = SWIG_Python_AppendOutput($result, plist);
$result = SWIG_AppendOutput($result, plist);
}
}
}
Expand All @@ -250,11 +250,11 @@
}

%typemap(argout) semanage_fcontext_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_fcontext_key_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_fcontext_key_t **(semanage_fcontext_key_t *temp=NULL) {
Expand Down Expand Up @@ -284,7 +284,7 @@
(void (*) (void*)) &semanage_iface_free, &plist) < 0)
$result = SWIG_From_int(STATUS_ERR);
else
$result = SWIG_Python_AppendOutput($result, plist);
$result = SWIG_AppendOutput($result, plist);
}
}
}
Expand All @@ -294,11 +294,11 @@
}

%typemap(argout) semanage_iface_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_iface_key_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_iface_key_t **(semanage_iface_key_t *temp=NULL) {
Expand Down Expand Up @@ -328,7 +328,7 @@
(void (*) (void*)) &semanage_seuser_free, &plist) < 0)
$result = SWIG_From_int(STATUS_ERR);
else
$result = SWIG_Python_AppendOutput($result, plist);
$result = SWIG_AppendOutput($result, plist);
}
}
}
Expand All @@ -338,11 +338,11 @@
}

%typemap(argout) semanage_seuser_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_seuser_key_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_seuser_key_t **(semanage_seuser_key_t *temp=NULL) {
Expand Down Expand Up @@ -371,7 +371,7 @@
(void (*) (void*)) &semanage_user_free, &plist) < 0)
$result = SWIG_From_int(STATUS_ERR);
else
$result = SWIG_Python_AppendOutput($result, plist);
$result = SWIG_AppendOutput($result, plist);
}
}
}
Expand All @@ -381,11 +381,11 @@
}

%typemap(argout) semanage_user_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_user_key_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_user_key_t **(semanage_user_key_t *temp=NULL) {
Expand Down Expand Up @@ -414,7 +414,7 @@
(void (*) (void*)) &semanage_port_free, &plist) < 0)
$result = SWIG_From_int(STATUS_ERR);
else
$result = SWIG_Python_AppendOutput($result, plist);
$result = SWIG_AppendOutput($result, plist);
}
}
}
Expand All @@ -424,11 +424,11 @@
}

%typemap(argout) semanage_port_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_port_key_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_port_key_t **(semanage_port_key_t *temp=NULL) {
Expand Down Expand Up @@ -457,7 +457,7 @@
(void (*) (void*)) &semanage_ibpkey_free, &plist) < 0)
$result = SWIG_From_int(STATUS_ERR);
else
$result = SWIG_Python_AppendOutput($result, plist);
$result = SWIG_AppendOutput($result, plist);
}
}
}
Expand All @@ -467,11 +467,11 @@
}

%typemap(argout) semanage_ibpkey_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_ibpkey_key_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_ibpkey_key_t **(semanage_ibpkey_key_t *temp=NULL) {
Expand Down Expand Up @@ -500,7 +500,7 @@
(void (*) (void*)) &semanage_ibendport_free, &plist) < 0)
$result = SWIG_From_int(STATUS_ERR);
else
$result = SWIG_Python_AppendOutput($result, plist);
$result = SWIG_AppendOutput($result, plist);
}
}
}
Expand All @@ -510,11 +510,11 @@
}

%typemap(argout) semanage_ibendport_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_ibendport_key_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_ibendport_key_t **(semanage_ibendport_key_t *temp=NULL) {
Expand Down Expand Up @@ -543,7 +543,7 @@
(void (*) (void*)) &semanage_node_free, &plist) < 0)
$result = SWIG_From_int(STATUS_ERR);
else
$result = SWIG_Python_AppendOutput($result, plist);
$result = SWIG_AppendOutput($result, plist);
}
}
}
Expand All @@ -553,12 +553,12 @@
}

%typemap(argout) semanage_node_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}


%typemap(argout) semanage_node_key_t ** {
$result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_node_key_t **(semanage_node_key_t *temp=NULL) {
Expand Down
32 changes: 16 additions & 16 deletions libsemanage/src/semanageswig_ruby.i
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
}

%typemap(argout) semanage_module_info_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

/** context typemaps **/
Expand All @@ -50,7 +50,7 @@
}

%typemap(argout) semanage_context_t** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

/** boolean typemaps **/
Expand All @@ -66,11 +66,11 @@
}

%typemap(argout) semanage_bool_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_bool_key_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_bool_key_t **(semanage_bool_key_t *temp=NULL) {
Expand All @@ -90,11 +90,11 @@
}

%typemap(argout) semanage_fcontext_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_fcontext_key_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_fcontext_key_t **(semanage_fcontext_key_t *temp=NULL) {
Expand All @@ -114,11 +114,11 @@
}

%typemap(argout) semanage_iface_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_iface_key_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_iface_key_t **(semanage_iface_key_t *temp=NULL) {
Expand All @@ -138,11 +138,11 @@
}

%typemap(argout) semanage_seuser_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_seuser_key_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_seuser_key_t **(semanage_seuser_key_t *temp=NULL) {
Expand All @@ -162,11 +162,11 @@
}

%typemap(argout) semanage_user_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_user_key_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_user_key_t **(semanage_user_key_t *temp=NULL) {
Expand All @@ -186,11 +186,11 @@
}

%typemap(argout) semanage_port_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(argout) semanage_port_key_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_port_key_t **(semanage_port_key_t *temp=NULL) {
Expand All @@ -210,12 +210,12 @@
}

%typemap(argout) semanage_node_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}


%typemap(argout) semanage_node_key_t ** {
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
$result = SWIG_AppendOutput($result, SWIG_NewPointerObj(*$1, $*1_descriptor, 0));
}

%typemap(in, numinputs=0) semanage_node_key_t **(semanage_node_key_t *temp=NULL) {
Expand Down

0 comments on commit db3f238

Please sign in to comment.