[Libguestfs] [PATCH libnbd 4/6] lib: Check Closure parameter is not NULL.

Richard W.M. Jones rjones at redhat.com
Tue Aug 13 10:06:19 UTC 2019


This was not permitted by the API before, but would in some
circumstances work.
---
 generator/generator | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/generator/generator b/generator/generator
index 7f97163..01da1c3 100755
--- a/generator/generator
+++ b/generator/generator
@@ -3664,6 +3664,16 @@ let generate_lib_api_c () =
     in
     List.iter (
       function
+      | Closure { cbname } ->
+         let value = match errcode with
+           | Some value -> value
+           | None -> assert false in
+         pr "  if (%s_callback == NULL) {\n" cbname;
+         pr "    set_error (EFAULT, \"%%s cannot be NULL\", \"%s\");\n" cbname;
+         pr "    ret = %s;\n" value;
+         pr "    goto out;\n";
+         pr "  }\n";
+         need_out_label := true
       | Enum (n, { enum_prefix; enums }) ->
          let value = match errcode with
            | Some value -> value
-- 
2.22.0




More information about the Libguestfs mailing list