diff options
author | Richard W.M. Jones <rjones@redhat.com> | 2012-09-24 09:45:33 +0100 |
---|---|---|
committer | Richard W.M. Jones <rjones@redhat.com> | 2012-09-24 09:46:24 +0100 |
commit | 790c1a0c7b141e3e4f37c3f670c19e039873dcbe (patch) | |
tree | ae4af7322c0ad3ca60f422a50c9418c3b964eba6 | |
parent | db6a8512402f068815f882928662af0d8f5eec83 (diff) | |
download | libguestfs-790c1a0c7b141e3e4f37c3f670c19e039873dcbe.tar.gz libguestfs-790c1a0c7b141e3e4f37c3f670c19e039873dcbe.tar.xz libguestfs-790c1a0c7b141e3e4f37c3f670c19e039873dcbe.zip |
generator: xdr: Re-code procedure table.
This is just code motion.
-rw-r--r-- | daemon/proto.c | 2 | ||||
-rw-r--r-- | generator/xdr.ml | 20 |
2 files changed, 14 insertions, 8 deletions
diff --git a/daemon/proto.c b/daemon/proto.c index 67c76414..286d5720 100644 --- a/daemon/proto.c +++ b/daemon/proto.c @@ -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)); diff --git a/generator/xdr.ml b/generator/xdr.ml index 9fd31832..b45f2c46 100644 --- a/generator/xdr.ml +++ b/generator/xdr.ml @@ -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"; |