Alright, looking through some git blame -w, I think this broke and then was restored in 2912fad98e. Jim had a diff in 2014 (823625c5da) to make the code compile, but crucially the buffer code no longer had a “max len” just a length.
I think this broke the “clever” reuse of the input buffdesc as the argument to GetFH (which has been there since 2012 from 878f45493e).
I'll try to take a look at each of these commits and see if I can figure out how to re-integrate the support back into the current code, though I don't know how successful I will be. If anyone has suggestions for what needs to be done, please let me know - I'm not sure right now if it's just some changes in the handle_mapping.c file, or if there are changes elsewhere that would need to be made (like in the wire_to_host/handle_to_wire functions, which I think are elsewhere.
-Nick