generator: xdr: Re-code procedure table.

This is just code motion.
This commit is contained in:
Richard W.M. Jones
2012-09-24 09:45:33 +01:00
parent db6a851240
commit 790c1a0c7b
2 changed files with 14 additions and 8 deletions

View File

@@ -205,7 +205,7 @@ main_loop (int _sock)
fprintf (stderr,
"guestfsd: main_loop: proc %d (%s) took %d.%02d seconds\n",
proc_nr,
proc_nr >= 0 && proc_nr < GUESTFS_PROC_NR_PROCS
proc_nr >= 0 && proc_nr <= GUESTFS_MAX_PROC_NR
? function_names[proc_nr] : "UNKNOWN PROCEDURE",
(int) (elapsed_us / 1000000),
(int) ((elapsed_us / 10000) % 100));

View File

@@ -166,16 +166,22 @@ let generate_xdr () =
pr "/* Table of procedure numbers. */\n";
pr "enum guestfs_procedure {\n";
List.iter (
function
| { name = shortname; proc_nr = Some proc_nr } ->
pr " GUESTFS_PROC_%s = %d,\n" (String.uppercase shortname) proc_nr
| { proc_nr = None } -> assert false
) daemon_functions;
pr " GUESTFS_PROC_NR_PROCS\n";
let rec loop = function
| [] -> ()
| { proc_nr = None } :: _ -> assert false
| { name = shortname; proc_nr = Some proc_nr } :: [] ->
pr " GUESTFS_PROC_%s = %d\n" (String.uppercase shortname) proc_nr
| { name = shortname; proc_nr = Some proc_nr } :: rest ->
pr " GUESTFS_PROC_%s = %d,\n" (String.uppercase shortname) proc_nr;
loop rest
in
loop daemon_functions;
pr "};\n";
pr "\n";
pr "const GUESTFS_MAX_PROC_NR = %d;\n" max_proc_nr;
pr "\n";
pr "/* The remote procedure call protocol. */\n";
pr "\n";