Handle Pulse main config packets up to 1 MiB
Our implementation has assumed that the entirety of the main Pulse configuration “packet” will fit in one TLS record; however, #617 demonstrates that it can in fact exceed 16 KiB if it includes e.g. a large proxy configuration.
In order to handle this, we need to dynamically allocate the space to hold this packet, and read it in a loop.
(See 2d77040a for a previous case where a configuration packet unexpectedly exceeded the limits of a single TLS record.)