pub fn parse_s3_buckets(body: &str) -> Result<Vec<String>, String>Expand description
Bucket names from an S3 ListBuckets response.
The body is XML from a service the user pointed datui at, which for a custom endpoint is not necessarily a service they control. It is parsed with quick-xml rather than by hand for that reason, and the parser is told to stop at a depth no legitimate response reaches, so a hostile endpoint cannot answer with a billion nested elements.